diff --git a/drivers/net/arm/ixp4xx_eth.c b/drivers/net/arm/ixp4xx_eth.c index db44ebbf45c5087e77d5f89b9d60de10eadd554b..1bbb7b8cb0dad549f42bf6b9c8dd415e29a075ee 100644 --- a/drivers/net/arm/ixp4xx_eth.c +++ b/drivers/net/arm/ixp4xx_eth.c @@ -788,9 +788,11 @@ static void eth_set_mcast_list(struct net_device *dev) static int eth_ioctl(struct net_device *dev, struct ifreq *req, int cmd) { + struct port *port = netdev_priv(dev); + if (!netif_running(dev)) return -EINVAL; - return -EINVAL; + return phy_mii_ioctl(port->phydev, if_mii(req), cmd); }