aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/phy
diff options
context:
space:
mode:
authorLennert Buytenhek <buytenh@wantstofly.org>2008-09-17 23:06:52 -0400
committerDavid S. Miller <davem@davemloft.net>2008-10-08 18:24:56 -0400
commitc6d6a511d768cf7627ab54fc18f40edf85097362 (patch)
tree73b390800c656c2304c911ce8c5b45330053706a /drivers/net/phy
parent4dd565134ece7e5d528d4c5288879310c54419e9 (diff)
phylib: phy_mii_ioctl() fixes
Make the SIOCGMIIPHY case fall through properly (it is supposed to not only return the ID of the default PHY but also to read from that PHY), and make phy_mii_ioctl() return the same error code as generic_mii_ioctl() in case of an unsupported operation. Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Acked-by: Andy Fleming <afleming@freescale.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy')
-rw-r--r--drivers/net/phy/phy.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
index 45cc2914d347..0433fcd00943 100644
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -366,7 +366,8 @@ int phy_mii_ioctl(struct phy_device *phydev,
366 switch (cmd) { 366 switch (cmd) {
367 case SIOCGMIIPHY: 367 case SIOCGMIIPHY:
368 mii_data->phy_id = phydev->addr; 368 mii_data->phy_id = phydev->addr;
369 break; 369 /* fall through */
370
370 case SIOCGMIIREG: 371 case SIOCGMIIREG:
371 mii_data->val_out = phy_read(phydev, mii_data->reg_num); 372 mii_data->val_out = phy_read(phydev, mii_data->reg_num);
372 break; 373 break;
@@ -413,7 +414,7 @@ int phy_mii_ioctl(struct phy_device *phydev,
413 break; 414 break;
414 415
415 default: 416 default:
416 return -ENOTTY; 417 return -EOPNOTSUPP;
417 } 418 }
418 419
419 return 0; 420 return 0;