]> git.ipfire.org Git - thirdparty/openwrt.git/blob
a546c426b4905a6ddb6f2aea32f87556b1c78504
[thirdparty/openwrt.git] /
1 From 4af2f60bf7378bd5c92b15a528d8c6c7d02bed6c Mon Sep 17 00:00:00 2001
2 From: Heiner Kallweit <hkallweit1@gmail.com>
3 Date: Thu, 31 Oct 2024 22:43:45 +0100
4 Subject: [PATCH] r8169: align RTL8125/RTL8126 PHY config with vendor driver
5
6 This aligns some parameters with vendor driver r8125/r8126 to avoid
7 compatibility issues. Note that for RTL8125B there's no functional
8 change, just the open-coded version of the function is replaced.
9
10 Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
11 Link: https://patch.msgid.link/a8a9d896-fbe6-41f2-bf87-666567d3cdb3@gmail.com
12 Signed-off-by: Jakub Kicinski <kuba@kernel.org>
13 ---
14 drivers/net/ethernet/realtek/r8169_phy_config.c | 6 +++++-
15 1 file changed, 5 insertions(+), 1 deletion(-)
16
17 --- a/drivers/net/ethernet/realtek/r8169_phy_config.c
18 +++ b/drivers/net/ethernet/realtek/r8169_phy_config.c
19 @@ -1073,8 +1073,8 @@ static void rtl8125b_hw_phy_config(struc
20 struct phy_device *phydev)
21 {
22 r8169_apply_firmware(tp);
23 + rtl8168g_enable_gphy_10m(phydev);
24
25 - phy_modify_paged(phydev, 0xa44, 0x11, 0x0000, 0x0800);
26 phy_modify_paged(phydev, 0xac4, 0x13, 0x00f0, 0x0090);
27 phy_modify_paged(phydev, 0xad3, 0x10, 0x0003, 0x0001);
28
29 @@ -1113,6 +1113,7 @@ static void rtl8125d_hw_phy_config(struc
30 struct phy_device *phydev)
31 {
32 r8169_apply_firmware(tp);
33 + rtl8168g_enable_gphy_10m(phydev);
34 rtl8125_legacy_force_mode(phydev);
35 rtl8168g_disable_aldps(phydev);
36 rtl8125b_config_eee_phy(phydev);
37 @@ -1122,6 +1123,9 @@ static void rtl8126a_hw_phy_config(struc
38 struct phy_device *phydev)
39 {
40 r8169_apply_firmware(tp);
41 + rtl8168g_enable_gphy_10m(phydev);
42 + rtl8125_legacy_force_mode(phydev);
43 + rtl8168g_disable_aldps(phydev);
44 }
45
46 void r8169_hw_phy_config(struct rtl8169_private *tp, struct phy_device *phydev,