net: usb: Correct reset handling of smsc95xx
authorMarkus Reichl <m.reichl@fivetechno.de>
Thu, 13 Jan 2022 20:01:11 +0000 (21:01 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 14 Jan 2022 11:21:06 +0000 (11:21 +0000)
On boards with LAN9514 and no preconfigured MAC address we don't get an
ip address from DHCP after commit a049a30fc27c ("net: usb: Correct PHY handling
of smsc95xx") anymore. Adding an explicit reset before starting the phy
fixes the issue.

[1]
https://lore.kernel.org/netdev/199eebbd6b97f52b9119c9fa4fd8504f8a34de18.camel@collabora.com/

From: Gabriel Hojda <ghojda@yo2urs.ro>
Fixes: a049a30fc27c ("net: usb: Correct PHY handling of smsc95xx")
Signed-off-by: Gabriel Hojda <ghojda@yo2urs.ro>
Signed-off-by: Markus Reichl <m.reichl@fivetechno.de>
Tested-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/smsc95xx.c

index abe0149..bc1e3dd 100644 (file)
@@ -1962,7 +1962,8 @@ static const struct driver_info smsc95xx_info = {
        .bind           = smsc95xx_bind,
        .unbind         = smsc95xx_unbind,
        .link_reset     = smsc95xx_link_reset,
-       .reset          = smsc95xx_start_phy,
+       .reset          = smsc95xx_reset,
+       .check_connect  = smsc95xx_start_phy,
        .stop           = smsc95xx_stop,
        .rx_fixup       = smsc95xx_rx_fixup,
        .tx_fixup       = smsc95xx_tx_fixup,