net: usb: asix: ax88772: suspend PHY on driver probe
authorOleksij Rempel <o.rempel@pengutronix.de>
Tue, 29 Jun 2021 04:43:05 +0000 (06:43 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 1 Jul 2021 18:12:13 +0000 (11:12 -0700)
After probe/bind sequence is the PHY in active state, even if interface
is stopped. As result, on some systems like Samsung Exynos5250 SoC based Arndale
board, the ASIX PHY will be able to negotiate the link but fail to
transmit the data.

To handle it, suspend the PHY on probe.

Fixes: e532a096be0e ("net: usb: asix: ax88772: add phylib support")
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/asix_devices.c

index aec97b021a7353e4b859e7fcce94fd5c7c3191c2..2c115216420a4343f74340ab2a29109b8e4c6d6b 100644 (file)
@@ -701,6 +701,7 @@ static int ax88772_init_phy(struct usbnet *dev)
                return ret;
        }
 
+       phy_suspend(priv->phydev);
        priv->phydev->mac_managed_pm = 1;
 
        phy_attached_info(priv->phydev);