s2e/source/s2e-linux-kernel/linux-4.9.3/drivers/net/ethernet/ti/davinci_emac.c
/**
 * emac_devioctl - EMAC adapter ioctl
 * @ndev: The DaVinci EMAC network adapter
 * @ifrq: request parameter
 * @cmd: command parameter
 *
 * EMAC driver ioctl function
 *
 * Returns success(0) or appropriate error code
 */
EMAC adapter ioctl
@ndev: The DaVinci EMAC network adapter
@ifrq: request parameter
@cmd: command parameter

EMAC driver ioctl function

Returns success(0) or appropriate error code
EMAC adapter ioctl @ndev : The DaVinci EMAC network adapter @ifrq : request parameter @cmd : command parameter EMAC driver ioctl function Returns success ( 0 ) or appropriate error code
static int emac_devioctl(struct net_device *ndev, struct ifreq *ifrq, int cmd)
{
	if (!(netif_running(ndev)))
		return -EINVAL;
	if (ndev->phydev)
		return phy_mii_ioctl(ndev->phydev, ifrq, cmd);
	else
		return -EOPNOTSUPP;
}
static int emac_devioctl ( struct net_device * ndev , struct ifreq * ifrq , int cmd ) { if ( ! ( netif_running ( ndev ) ) ) return - EINVAL ; if ( ndev -> phydev ) return phy_mii_ioctl ( ndev -> phydev , ifrq , cmd ) ; else return - EOPNOTSUPP ; }
emac_devioctl - EMAC adapter ioctl
 @ndev: The DaVinci EMAC network adapter
 @ifrq: request parameter
 @cmd: command parameter
emac_devioctl - EMAC adapter ioctl @ndev : The DaVinci EMAC network adapter @ifrq : request parameter @cmd : command parameter
/* TODO: Add phy read and write and private statistics get feature */