diff options
author | Heiner Kallweit <hkallweit1@gmail.com> | 2024-02-08 07:59:18 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2024-02-09 14:00:24 -0800 |
commit | b63cc73341e076961d564a74cc3d29b2fd444079 (patch) | |
tree | eacb95575956e076dfd78e56baf75d98358c1ddc /drivers/net/phy | |
parent | d0466c7f55a0cd42089b6d31df46c19e86e1a60f (diff) |
net: phy: realtek: use generic MDIO helpers to simplify the code
Use generic MDIO helpers to simplify the code.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/422ae70f-7305-45fd-ab3e-0dd604b9fd6c@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/phy')
-rw-r--r-- | drivers/net/phy/realtek.c | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/drivers/net/phy/realtek.c b/drivers/net/phy/realtek.c index 962df2b83070..481c79fbd6eb 100644 --- a/drivers/net/phy/realtek.c +++ b/drivers/net/phy/realtek.c @@ -680,14 +680,7 @@ static int rtl822x_config_aneg(struct phy_device *phydev) int ret = 0; if (phydev->autoneg == AUTONEG_ENABLE) { - u16 adv = 0; - - if (linkmode_test_bit(ETHTOOL_LINK_MODE_2500baseT_Full_BIT, - phydev->advertising)) - adv |= MDIO_AN_10GBT_CTRL_ADV2_5G; - if (linkmode_test_bit(ETHTOOL_LINK_MODE_5000baseT_Full_BIT, - phydev->advertising)) - adv |= MDIO_AN_10GBT_CTRL_ADV5G; + u16 adv = linkmode_adv_to_mii_10gbt_adv_t(phydev->advertising); ret = phy_modify_paged_changed(phydev, 0xa5d, 0x12, MDIO_AN_10GBT_CTRL_ADV2_5G | @@ -710,15 +703,8 @@ static int rtl822x_read_status(struct phy_device *phydev) if (lpadv < 0) return lpadv; - linkmode_mod_bit(ETHTOOL_LINK_MODE_10000baseT_Full_BIT, - phydev->lp_advertising, - lpadv & MDIO_AN_10GBT_STAT_LP10G); - linkmode_mod_bit(ETHTOOL_LINK_MODE_5000baseT_Full_BIT, - phydev->lp_advertising, - lpadv & MDIO_AN_10GBT_STAT_LP5G); - linkmode_mod_bit(ETHTOOL_LINK_MODE_2500baseT_Full_BIT, - phydev->lp_advertising, - lpadv & MDIO_AN_10GBT_STAT_LP2_5G); + mii_10gbt_stat_mod_linkmode_lpa_t(phydev->lp_advertising, + lpadv); } ret = genphy_read_status(phydev); |