net: phy: marvell: Use the unlocked genphy_c45_ethtool_get_eee()
authorAndrew Lunn <andrew@lunn.ch>
Fri, 17 Feb 2023 03:07:13 +0000 (04:07 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 20 Feb 2023 10:04:22 +0000 (10:04 +0000)
phy_ethtool_get_eee() is about to gain locking of the phydev lock.
This means it cannot be used within a PHY driver without causing a
deadlock. Swap to using genphy_c45_ethtool_get_eee() which assumes the
lock has already been taken.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/marvell.c

index 0d706ee..63a3644 100644 (file)
@@ -1467,7 +1467,7 @@ static int m88e1540_set_fld(struct phy_device *phydev, const u8 *msecs)
        /* According to the Marvell data sheet EEE must be disabled for
         * Fast Link Down detection to work properly
         */
-       ret = phy_ethtool_get_eee(phydev, &eee);
+       ret = genphy_c45_ethtool_get_eee(phydev, &eee);
        if (!ret && eee.eee_enabled) {
                phydev_warn(phydev, "Fast Link Down detection requires EEE to be disabled!\n");
                return -EBUSY;