diff options
author | Steve Glendinning <steve.glendinning@shawell.net> | 2012-04-30 03:56:53 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-04-30 21:52:40 -0400 |
commit | 8a1d59d79fffdad4bb1b3b5d069da4c6c52db2e6 (patch) | |
tree | 1738d6b12e58761eb5d559bdfe24d7fbcb33c2a1 /drivers/net | |
parent | 4f49add9ad297dab392c14dc60d490364080739b (diff) |
smsc75xx: fix phy init reset loop
fix bug in phy_init loop that was ignoring BMCR reset bit, akin to smsc95xx's d946092000698fd204d82a9d239103c656fb63bf
Signed-off-by: Stephane Fillod <fillods@users.sf.net>
Signed-off-by: Steve Glendinning <steve.glendinning@shawell.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/usb/smsc75xx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/usb/smsc75xx.c b/drivers/net/usb/smsc75xx.c index 1de778527813..cc23a589e40f 100644 --- a/drivers/net/usb/smsc75xx.c +++ b/drivers/net/usb/smsc75xx.c | |||
@@ -661,7 +661,7 @@ static int smsc75xx_phy_initialize(struct usbnet *dev) | |||
661 | bmcr = smsc75xx_mdio_read(dev->net, dev->mii.phy_id, MII_BMCR); | 661 | bmcr = smsc75xx_mdio_read(dev->net, dev->mii.phy_id, MII_BMCR); |
662 | check_warn_return(bmcr, "Error reading MII_BMCR"); | 662 | check_warn_return(bmcr, "Error reading MII_BMCR"); |
663 | timeout++; | 663 | timeout++; |
664 | } while ((bmcr & MII_BMCR) && (timeout < 100)); | 664 | } while ((bmcr & BMCR_RESET) && (timeout < 100)); |
665 | 665 | ||
666 | if (timeout >= 100) { | 666 | if (timeout >= 100) { |
667 | netdev_warn(dev->net, "timeout on PHY Reset"); | 667 | netdev_warn(dev->net, "timeout on PHY Reset"); |