aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhil Elwell <phil@raspberrypi.org>2018-04-10 08:18:25 -0400
committerDavid S. Miller <davem@davemloft.net>2018-04-11 14:44:45 -0400
commit47b998653fea4ef69e3e89574956386f262bccca (patch)
treee31eeb252287269fc1f33d030497ddcbd3305f72
parent9cf74f593aa728ea4ed1760b74f31c02c4dd777b (diff)
lan78xx: Don't reset the interface on open
Commit 92571a1aae40 ("lan78xx: Connect phy early") moves the PHY initialisation into lan78xx_probe, but lan78xx_open subsequently calls lan78xx_reset. As well as forcing a second round of link negotiation, this reset frequently prevents the phy interrupt from being generated (even though the link is up), rendering the interface unusable. Fix this issue by removing the lan78xx_reset call from lan78xx_open. Fixes: 92571a1aae40 ("lan78xx: Connect phy early") Signed-off-by: Phil Elwell <phil@raspberrypi.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/usb/lan78xx.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
index bdb696612e11..0867f7275852 100644
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -2515,10 +2515,6 @@ static int lan78xx_open(struct net_device *net)
2515 if (ret < 0) 2515 if (ret < 0)
2516 goto out; 2516 goto out;
2517 2517
2518 ret = lan78xx_reset(dev);
2519 if (ret < 0)
2520 goto done;
2521
2522 phy_start(net->phydev); 2518 phy_start(net->phydev);
2523 2519
2524 netif_dbg(dev, ifup, dev->net, "phy initialised successfully"); 2520 netif_dbg(dev, ifup, dev->net, "phy initialised successfully");