
bfc17c1658353 net: phy: realtek: disable PHY-mode EEE fabcfd6d10999 net: phy: realtek: add defines for shadowed c45 standard registers 8af2136e77989 net: phy: realtek: add helper RTL822X_VND2_C22_REG 02d3b306ac2f0 net: phy: realtek: switch from paged to MMD ops in rtl822x functions da681ed73fb98 net: phy: realtek: improve mmd register access for internal PHY's 0bea93fdbaf86 net: phy: realtek: use string choices helpers 51773846fab24 net: phy: realtek: make HWMON support a user-visible Kconfig symbol Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> (cherry picked from commit 7673a165a955269773eb604d3678d86d0bb7f49c)
53 lines
1.7 KiB
Diff
53 lines
1.7 KiB
Diff
From 02d3b306ac2f0b174753d1c5b9e4e5fb8ec5057e Mon Sep 17 00:00:00 2001
|
|
From: Heiner Kallweit <hkallweit1@gmail.com>
|
|
Date: Thu, 13 Feb 2025 20:19:14 +0100
|
|
Subject: [PATCH] net: phy: realtek: switch from paged to MMD ops in rtl822x
|
|
functions
|
|
|
|
The MDIO bus provided by r8169 for the internal PHY's now supports
|
|
c45 ops for the MDIO_MMD_VEND2 device. So we can switch to standard
|
|
MMD ops here.
|
|
|
|
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
|
|
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
|
|
Link: https://patch.msgid.link/81416f95-0fac-4225-87b4-828e3738b8ed@gmail.com
|
|
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|
---
|
|
drivers/net/phy/realtek/realtek_main.c | 11 +++++------
|
|
1 file changed, 5 insertions(+), 6 deletions(-)
|
|
|
|
--- a/drivers/net/phy/realtek/realtek_main.c
|
|
+++ b/drivers/net/phy/realtek/realtek_main.c
|
|
@@ -901,7 +901,7 @@ static int rtl822x_get_features(struct p
|
|
{
|
|
int val;
|
|
|
|
- val = phy_read_paged(phydev, 0xa61, 0x13);
|
|
+ val = phy_read_mmd(phydev, MDIO_MMD_VEND2, 0xa616);
|
|
if (val < 0)
|
|
return val;
|
|
|
|
@@ -922,10 +922,9 @@ static int rtl822x_config_aneg(struct ph
|
|
if (phydev->autoneg == AUTONEG_ENABLE) {
|
|
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 |
|
|
- MDIO_AN_10GBT_CTRL_ADV5G,
|
|
- adv);
|
|
+ ret = phy_modify_mmd_changed(phydev, MDIO_MMD_VEND2, 0xa5d4,
|
|
+ MDIO_AN_10GBT_CTRL_ADV2_5G |
|
|
+ MDIO_AN_10GBT_CTRL_ADV5G, adv);
|
|
if (ret < 0)
|
|
return ret;
|
|
}
|
|
@@ -969,7 +968,7 @@ static int rtl822x_read_status(struct ph
|
|
!phydev->autoneg_complete)
|
|
return 0;
|
|
|
|
- lpadv = phy_read_paged(phydev, 0xa5d, 0x13);
|
|
+ lpadv = phy_read_mmd(phydev, MDIO_MMD_VEND2, 0xa5d6);
|
|
if (lpadv < 0)
|
|
return lpadv;
|
|
|