aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2023-04-22 01:52:04 +0100
committerDaniel Golle <daniel@makrotopia.org>2023-04-22 04:08:41 +0100
commit998b9731577dedc7747dcfa412e4543dabaaa131 (patch)
treecdfb9272d251a4b8095e39b63a0de18592d21f77 /target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch
parentb64c471b8ee3dd7ddfa3b11bf3f1414258c41c94 (diff)
downloadupstream-998b9731577dedc7747dcfa412e4543dabaaa131.tar.gz
upstream-998b9731577dedc7747dcfa412e4543dabaaa131.tar.bz2
upstream-998b9731577dedc7747dcfa412e4543dabaaa131.zip
kernel: net: phy: realtek: improve RealTek 2.5G PHY driver
* use interface mode switching only when operating in C45 mode Linux prevents switching the interface mode when using C22 MDIO, hence use rate-adapter mode in case the PHY controlled via C22. * use phy_read_paged where appropriate * use existing generic inline functions to handle 10GbE advertisements instead of redundantly defining register macros in realtek.c which are not actually vendor-specific. * make sure 10GbE advertisement is valid, preventing false-positive warning "Downshift occurred from negotiated speed 2.5Gbps to actual speed 1Gbps, check cabling!" with some link-partners using 1G mode. * Support Link Down Power Saving Mode (ALDPS) Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch')
-rw-r--r--target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch12
1 files changed, 6 insertions, 6 deletions
diff --git a/target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch b/target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch
index c803278835..6941818351 100644
--- a/target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch
+++ b/target/linux/generic/pending-5.15/724-net-phy-realtek-use-genphy_soft_reset-for-2.5G-PHYs.patch
@@ -15,7 +15,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/net/phy/realtek.c
+++ b/drivers/net/phy/realtek.c
-@@ -1013,6 +1013,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1018,6 +1018,7 @@ static struct phy_driver realtek_drvs[]
.write_page = rtl821x_write_page,
.read_mmd = rtl822x_read_mmd,
.write_mmd = rtl822x_write_mmd,
@@ -23,7 +23,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}, {
PHY_ID_MATCH_EXACT(0x001cc840),
.name = "RTL8226B_RTL8221B 2.5Gbps PHY",
-@@ -1025,6 +1026,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1030,6 +1031,7 @@ static struct phy_driver realtek_drvs[]
.write_page = rtl821x_write_page,
.read_mmd = rtl822x_read_mmd,
.write_mmd = rtl822x_write_mmd,
@@ -31,7 +31,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}, {
PHY_ID_MATCH_EXACT(0x001cc838),
.name = "RTL8226-CG 2.5Gbps PHY",
-@@ -1035,6 +1037,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1040,6 +1042,7 @@ static struct phy_driver realtek_drvs[]
.resume = rtlgen_resume,
.read_page = rtl821x_read_page,
.write_page = rtl821x_write_page,
@@ -39,7 +39,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}, {
PHY_ID_MATCH_EXACT(0x001cc848),
.name = "RTL8226B-CG_RTL8221B-CG 2.5Gbps PHY",
-@@ -1045,6 +1048,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1050,6 +1053,7 @@ static struct phy_driver realtek_drvs[]
.resume = rtlgen_resume,
.read_page = rtl821x_read_page,
.write_page = rtl821x_write_page,
@@ -47,7 +47,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}, {
PHY_ID_MATCH_EXACT(0x001cc849),
.name = "RTL8221B-VB-CG 2.5Gbps PHY",
-@@ -1056,6 +1060,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1061,6 +1065,7 @@ static struct phy_driver realtek_drvs[]
.resume = rtlgen_resume,
.read_page = rtl821x_read_page,
.write_page = rtl821x_write_page,
@@ -55,7 +55,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}, {
PHY_ID_MATCH_EXACT(0x001cc84a),
.name = "RTL8221B-VM-CG 2.5Gbps PHY",
-@@ -1067,6 +1072,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1072,6 +1077,7 @@ static struct phy_driver realtek_drvs[]
.resume = rtlgen_resume,
.read_page = rtl821x_read_page,
.write_page = rtl821x_write_page,