net: phy: simplify genphy_c45_ethtool_set_eee
authorHeiner Kallweit <hkallweit1@gmail.com>
Tue, 20 Feb 2024 21:55:38 +0000 (22:55 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 27 Feb 2024 08:07:34 +0000 (09:07 +0100)
Simplify the function, no functional change intended.

- Remove not needed variable unsupp, I think code is even better
  readable now.
- Move setting phydev->eee_enabled out of the if clause
- Simplify return value handling

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link: https://lore.kernel.org/r/442277c7-7431-4542-80b5-1d3d691714d7@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/phy/phy-c45.c

index fa5145c..3e95b8a 100644 (file)
@@ -1561,10 +1561,8 @@ int genphy_c45_ethtool_set_eee(struct phy_device *phydev,
 
                if (!linkmode_empty(adv)) {
                        __ETHTOOL_DECLARE_LINK_MODE_MASK(tmp);
-                       bool unsupp;
 
-                       unsupp = linkmode_andnot(tmp, adv, phydev->supported_eee);
-                       if (unsupp) {
+                       if (linkmode_andnot(tmp, adv, phydev->supported_eee)) {
                                phydev_warn(phydev, "At least some EEE link modes are not supported.\n");
                                return -EINVAL;
                        }
@@ -1573,18 +1571,15 @@ int genphy_c45_ethtool_set_eee(struct phy_device *phydev,
                }
 
                linkmode_copy(phydev->advertising_eee, adv);
-               phydev->eee_enabled = true;
-       } else {
-               phydev->eee_enabled = false;
        }
 
+       phydev->eee_enabled = data->eee_enabled;
+
        ret = genphy_c45_an_config_eee_aneg(phydev);
-       if (ret < 0)
-               return ret;
        if (ret > 0)
                return phy_restart_aneg(phydev);
 
-       return 0;
+       return ret;
 }
 EXPORT_SYMBOL(genphy_c45_ethtool_set_eee);