Fix the handling of unsupported ioctls (eth0 appeared in iwconfig for instance)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8139 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
2e92155ee3
commit
be228f796c
|
@ -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)
|
Loading…
Reference in New Issue