[openwrt/openwrt] kernel: net: phy: realtek: fix rtl822x_probe on unsupported devices

LEDE Commits lede-commits at lists.infradead.org
Sat Jul 8 07:23:30 PDT 2023


hauke pushed a commit to openwrt/openwrt.git, branch openwrt-23.05:
https://git.openwrt.org/f4e1f999617b0d968fcb9ff2e5a4e1171d8d5d9f

commit f4e1f999617b0d968fcb9ff2e5a4e1171d8d5d9f
Author: Martin Schiller <ms at dev.tdt.de>
AuthorDate: Tue Jun 27 09:57:53 2023 +0200

    kernel: net: phy: realtek: fix rtl822x_probe on unsupported devices
    
    Calling rtl822x_probe() on phy devices which uses the rtl822x_read_mmd()
    and rtl822x_write_mmd() functions makes no sense and the probe ends with
    an EOPNOTSUPP error.
    
    Signed-off-by: Martin Schiller <ms at dev.tdt.de>
    (cherry picked from commit 5af7d47cd7fb936dc7d640e1ba63443152d0416a)
---
 ...9-net-phy-realtek-introduce-rtl822x_probe.patch | 24 ++++------------------
 ...-realtek-detect-early-version-of-RTL8221B.patch |  2 +-
 2 files changed, 5 insertions(+), 21 deletions(-)

diff --git a/target/linux/generic/pending-5.15/729-net-phy-realtek-introduce-rtl822x_probe.patch b/target/linux/generic/pending-5.15/729-net-phy-realtek-introduce-rtl822x_probe.patch
index 87102d3818..cea3511b83 100644
--- a/target/linux/generic/pending-5.15/729-net-phy-realtek-introduce-rtl822x_probe.patch
+++ b/target/linux/generic/pending-5.15/729-net-phy-realtek-introduce-rtl822x_probe.patch
@@ -50,23 +50,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  static int rtlgen_resume(struct phy_device *phydev)
  {
  	int ret = genphy_resume(phydev);
-@@ -1013,6 +1036,7 @@ static struct phy_driver realtek_drvs[]
- 		.match_phy_device = rtl8226_match_phy_device,
- 		.get_features	= rtl822x_get_features,
- 		.config_aneg	= rtl822x_config_aneg,
-+		.probe          = rtl822x_probe,
- 		.read_status	= rtl822x_read_status,
- 		.suspend	= genphy_suspend,
- 		.resume		= rtlgen_resume,
-@@ -1026,6 +1050,7 @@ static struct phy_driver realtek_drvs[]
- 		.name		= "RTL8226B_RTL8221B 2.5Gbps PHY",
- 		.get_features	= rtl822x_get_features,
- 		.config_aneg	= rtl822x_config_aneg,
-+		.probe          = rtl822x_probe,
- 		.read_status	= rtl822x_read_status,
- 		.suspend	= genphy_suspend,
- 		.resume		= rtlgen_resume,
-@@ -1039,6 +1064,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1039,6 +1062,7 @@ static struct phy_driver realtek_drvs[]
  		.name           = "RTL8226-CG 2.5Gbps PHY",
  		.get_features   = rtl822x_get_features,
  		.config_aneg    = rtl822x_config_aneg,
@@ -74,7 +58,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  		.read_status    = rtl822x_read_status,
  		.suspend        = genphy_suspend,
  		.resume         = rtlgen_resume,
-@@ -1050,6 +1076,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1050,6 +1074,7 @@ static struct phy_driver realtek_drvs[]
  		.name           = "RTL8226B-CG_RTL8221B-CG 2.5Gbps PHY",
  		.get_features   = rtl822x_get_features,
  		.config_aneg    = rtl822x_config_aneg,
@@ -82,7 +66,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  		.read_status    = rtl822x_read_status,
  		.suspend        = genphy_suspend,
  		.resume         = rtlgen_resume,
-@@ -1062,6 +1089,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1062,6 +1087,7 @@ static struct phy_driver realtek_drvs[]
  		.get_features   = rtl822x_get_features,
  		.config_init    = rtl8221b_config_init,
  		.config_aneg    = rtl822x_config_aneg,
@@ -90,7 +74,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  		.read_status    = rtl822x_read_status,
  		.suspend        = genphy_suspend,
  		.resume         = rtlgen_resume,
-@@ -1074,6 +1102,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1074,6 +1100,7 @@ static struct phy_driver realtek_drvs[]
  		.get_features   = rtl822x_get_features,
  		.config_aneg    = rtl822x_config_aneg,
  		.config_init    = rtl8221b_config_init,
diff --git a/target/linux/generic/pending-5.15/730-net-phy-realtek-detect-early-version-of-RTL8221B.patch b/target/linux/generic/pending-5.15/730-net-phy-realtek-detect-early-version-of-RTL8221B.patch
index 6d414bfbad..b1e7a35a55 100644
--- a/target/linux/generic/pending-5.15/730-net-phy-realtek-detect-early-version-of-RTL8221B.patch
+++ b/target/linux/generic/pending-5.15/730-net-phy-realtek-detect-early-version-of-RTL8221B.patch
@@ -52,7 +52,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
  static int rtl822x_probe(struct phy_device *phydev)
  {
  	struct device *dev = &phydev->mdio.dev;
-@@ -1084,7 +1116,7 @@ static struct phy_driver realtek_drvs[]
+@@ -1082,7 +1114,7 @@ static struct phy_driver realtek_drvs[]
  		.write_page     = rtl821x_write_page,
  		.soft_reset     = genphy_soft_reset,
  	}, {




More information about the lede-commits mailing list