From: Florian Fainelli Date: Tue, 24 Jul 2007 09:15:20 +0000 (+0000) Subject: Fix the handling of unsupported ioctls (eth0 appeared in iwconfig for instance) X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=9f14e220c31f95951d4b76b723a8d32661ab1668 Fix the handling of unsupported ioctls (eth0 appeared in iwconfig for instance) SVN-Revision: 8139 --- diff --git a/target/linux/au1000-2.6/patches/014-au1000_eth_ioctl.patch b/target/linux/au1000-2.6/patches/014-au1000_eth_ioctl.patch new file mode 100644 index 0000000000..5996ccf2ac --- /dev/null +++ b/target/linux/au1000-2.6/patches/014-au1000_eth_ioctl.patch @@ -0,0 +1,26 @@ +diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c +index c27cfce..99a1c61 100644 +--- a/drivers/net/au1000_eth.c ++++ b/drivers/net/au1000_eth.c +@@ -1316,12 +1316,20 @@ static void set_rx_mode(struct net_device *dev) + static int au1000_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) + { + struct au1000_private *aup = (struct au1000_private *)dev->priv; ++ struct mii_ioctl_data *data = if_mii(rq); ++ int rc = -EOPNOTSUPP; + + if (!netif_running(dev)) return -EINVAL; + + if (!aup->phy_dev) return -EINVAL; // PHY not controllable + +- return phy_mii_ioctl(aup->phy_dev, if_mii(rq), cmd); ++ switch (cmd) { ++ default: ++ rc = phy_mii_ioctl(aup->phy_dev, data, cmd); ++ break; ++ } ++ ++ return rc; + } + + static struct net_device_stats *au1000_get_stats(struct net_device *dev)