]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ixgene-v2: prepare for phylib stop exporting phy_10_100_features_array
authorHeiner Kallweit <hkallweit1@gmail.com>
Wed, 12 Feb 2025 06:32:52 +0000 (07:32 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 13 Feb 2025 16:33:49 +0000 (08:33 -0800)
As part of phylib cleanup we plan to stop exporting the feature arrays.
So explicitly remove the modes not supported by the MAC. The media type
bits don't have any impact on kernel behavior, so don't touch them.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Mateusz Polchlopek <mateusz.polchlopek@intel.com>
Link: https://patch.msgid.link/be356a21-5a1a-45b3-9407-3a97f3af4600@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/apm/xgene-v2/mdio.c

index eba06831aec2d907c0dc72a84c9c802450969766..6a17045a5f626ab01ca4effaa0e2c2e8cf82f48a 100644 (file)
@@ -97,7 +97,6 @@ void xge_mdio_remove(struct net_device *ndev)
 
 int xge_mdio_config(struct net_device *ndev)
 {
-       __ETHTOOL_DECLARE_LINK_MODE_MASK(mask) = { 0, };
        struct xge_pdata *pdata = netdev_priv(ndev);
        struct device *dev = &pdata->pdev->dev;
        struct mii_bus *mdio_bus;
@@ -137,17 +136,12 @@ int xge_mdio_config(struct net_device *ndev)
                goto err;
        }
 
-       linkmode_set_bit_array(phy_10_100_features_array,
-                              ARRAY_SIZE(phy_10_100_features_array),
-                              mask);
-       linkmode_set_bit(ETHTOOL_LINK_MODE_1000baseT_Half_BIT, mask);
-       linkmode_set_bit(ETHTOOL_LINK_MODE_AUI_BIT, mask);
-       linkmode_set_bit(ETHTOOL_LINK_MODE_MII_BIT, mask);
-       linkmode_set_bit(ETHTOOL_LINK_MODE_FIBRE_BIT, mask);
-       linkmode_set_bit(ETHTOOL_LINK_MODE_BNC_BIT, mask);
-
-       linkmode_andnot(phydev->supported, phydev->supported, mask);
-       linkmode_copy(phydev->advertising, phydev->supported);
+       phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_10baseT_Half_BIT);
+       phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_10baseT_Full_BIT);
+       phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_100baseT_Half_BIT);
+       phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_100baseT_Full_BIT);
+       phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_1000baseT_Half_BIT);
+
        pdata->phy_speed = SPEED_UNKNOWN;
 
        return 0;