]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: usb: lan78xx: Use ethtool_op_get_link to reflect current link status
authorOleksij Rempel <o.rempel@pengutronix.de>
Wed, 18 Jun 2025 12:25:59 +0000 (14:25 +0200)
committerJakub Kicinski <kuba@kernel.org>
Thu, 19 Jun 2025 22:37:06 +0000 (15:37 -0700)
Replace the custom lan78xx_get_link implementation with the standard
ethtool_op_get_link helper, which uses netif_carrier_ok to reflect
the current link status accurately.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://patch.msgid.link/20250618122602.3156678-4-o.rempel@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/usb/lan78xx.c

index 18402a3922a64262344f2a3c4aeae321002c1235..9bb1d2527d0ca4ea566b0ec276d4e55b60015c2c 100644 (file)
@@ -1839,18 +1839,6 @@ out:
        return ret;
 }
 
-static u32 lan78xx_get_link(struct net_device *net)
-{
-       u32 link;
-
-       mutex_lock(&net->phydev->lock);
-       phy_read_status(net->phydev);
-       link = net->phydev->link;
-       mutex_unlock(&net->phydev->lock);
-
-       return link;
-}
-
 static void lan78xx_get_drvinfo(struct net_device *net,
                                struct ethtool_drvinfo *info)
 {
@@ -1970,7 +1958,7 @@ clean_data:
 }
 
 static const struct ethtool_ops lan78xx_ethtool_ops = {
-       .get_link       = lan78xx_get_link,
+       .get_link       = ethtool_op_get_link,
        .nway_reset     = phy_ethtool_nway_reset,
        .get_drvinfo    = lan78xx_get_drvinfo,
        .get_msglevel   = lan78xx_get_msglevel,