generic: fix version number on realtek phy patches
authorÁlvaro Fernández Rojas <noltari@gmail.com>
Wed, 22 Jan 2025 19:34:26 +0000 (20:34 +0100)
committerÁlvaro Fernández Rojas <noltari@gmail.com>
Wed, 22 Jan 2025 19:34:26 +0000 (20:34 +0100)
These patches have been accepted in linux v6.14 instead of v6.13.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
target/linux/generic/backport-6.6/781-20-v6.13-net-phy-realtek-clear-1000Base-T-lpa-if-link-is-down.patch [deleted file]
target/linux/generic/backport-6.6/781-20-v6.14-net-phy-realtek-clear-1000Base-T-lpa-if-link-is-down.patch [new file with mode: 0644]
target/linux/generic/backport-6.6/781-21-v6.13-net-phy-realtek-clear-master_slave_state-if-link-is-.patch [deleted file]
target/linux/generic/backport-6.6/781-21-v6.14-net-phy-realtek-clear-master_slave_state-if-link-is-.patch [new file with mode: 0644]
target/linux/generic/backport-6.6/781-22-v6.13-net-phy-realtek-always-clear-NBase-T-lpa.patch [deleted file]
target/linux/generic/backport-6.6/781-22-v6.14-net-phy-realtek-always-clear-NBase-T-lpa.patch [new file with mode: 0644]

diff --git a/target/linux/generic/backport-6.6/781-20-v6.13-net-phy-realtek-clear-1000Base-T-lpa-if-link-is-down.patch b/target/linux/generic/backport-6.6/781-20-v6.13-net-phy-realtek-clear-1000Base-T-lpa-if-link-is-down.patch
deleted file mode 100644 (file)
index 3e9631e..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From 34d5a86ff7bbe225fba3ad91f9b4dc85fb408e18 Mon Sep 17 00:00:00 2001
-From: Daniel Golle <daniel@makrotopia.org>
-Date: Wed, 15 Jan 2025 14:43:35 +0000
-Subject: [PATCH] net: phy: realtek: clear 1000Base-T lpa if link is down
-
-Only read 1000Base-T link partner advertisement if autonegotiation has
-completed and otherwise 1000Base-T link partner advertisement bits.
-
-This fixes bogus 1000Base-T link partner advertisement after link goes
-down (eg. by disconnecting the wire).
-Fixes: 5cb409b3960e ("net: phy: realtek: clear 1000Base-T link partner advertisement")
-Signed-off-by: Daniel Golle <daniel@makrotopia.org>
-Reviewed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/phy/realtek.c | 19 ++++++++-----------
- 1 file changed, 8 insertions(+), 11 deletions(-)
-
---- a/drivers/net/phy/realtek.c
-+++ b/drivers/net/phy/realtek.c
-@@ -1023,23 +1023,20 @@ static int rtl822x_c45_read_status(struc
- {
-       int ret, val;
--      ret = genphy_c45_read_status(phydev);
--      if (ret < 0)
--              return ret;
--
--      if (phydev->autoneg == AUTONEG_DISABLE ||
--          !genphy_c45_aneg_done(phydev))
--              mii_stat1000_mod_linkmode_lpa_t(phydev->lp_advertising, 0);
--
-       /* Vendor register as C45 has no standardized support for 1000BaseT */
--      if (phydev->autoneg == AUTONEG_ENABLE) {
-+      if (phydev->autoneg == AUTONEG_ENABLE && genphy_c45_aneg_done(phydev)) {
-               val = phy_read_mmd(phydev, MDIO_MMD_VEND2,
-                                  RTL822X_VND2_GANLPAR);
-               if (val < 0)
-                       return val;
--
--              mii_stat1000_mod_linkmode_lpa_t(phydev->lp_advertising, val);
-+      } else {
-+              val = 0;
-       }
-+      mii_stat1000_mod_linkmode_lpa_t(phydev->lp_advertising, val);
-+
-+      ret = genphy_c45_read_status(phydev);
-+      if (ret < 0)
-+              return ret;
-       if (!phydev->link)
-               return 0;
diff --git a/target/linux/generic/backport-6.6/781-20-v6.14-net-phy-realtek-clear-1000Base-T-lpa-if-link-is-down.patch b/target/linux/generic/backport-6.6/781-20-v6.14-net-phy-realtek-clear-1000Base-T-lpa-if-link-is-down.patch
new file mode 100644 (file)
index 0000000..3e9631e
--- /dev/null
@@ -0,0 +1,52 @@
+From 34d5a86ff7bbe225fba3ad91f9b4dc85fb408e18 Mon Sep 17 00:00:00 2001
+From: Daniel Golle <daniel@makrotopia.org>
+Date: Wed, 15 Jan 2025 14:43:35 +0000
+Subject: [PATCH] net: phy: realtek: clear 1000Base-T lpa if link is down
+
+Only read 1000Base-T link partner advertisement if autonegotiation has
+completed and otherwise 1000Base-T link partner advertisement bits.
+
+This fixes bogus 1000Base-T link partner advertisement after link goes
+down (eg. by disconnecting the wire).
+Fixes: 5cb409b3960e ("net: phy: realtek: clear 1000Base-T link partner advertisement")
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+Reviewed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/phy/realtek.c | 19 ++++++++-----------
+ 1 file changed, 8 insertions(+), 11 deletions(-)
+
+--- a/drivers/net/phy/realtek.c
++++ b/drivers/net/phy/realtek.c
+@@ -1023,23 +1023,20 @@ static int rtl822x_c45_read_status(struc
+ {
+       int ret, val;
+-      ret = genphy_c45_read_status(phydev);
+-      if (ret < 0)
+-              return ret;
+-
+-      if (phydev->autoneg == AUTONEG_DISABLE ||
+-          !genphy_c45_aneg_done(phydev))
+-              mii_stat1000_mod_linkmode_lpa_t(phydev->lp_advertising, 0);
+-
+       /* Vendor register as C45 has no standardized support for 1000BaseT */
+-      if (phydev->autoneg == AUTONEG_ENABLE) {
++      if (phydev->autoneg == AUTONEG_ENABLE && genphy_c45_aneg_done(phydev)) {
+               val = phy_read_mmd(phydev, MDIO_MMD_VEND2,
+                                  RTL822X_VND2_GANLPAR);
+               if (val < 0)
+                       return val;
+-
+-              mii_stat1000_mod_linkmode_lpa_t(phydev->lp_advertising, val);
++      } else {
++              val = 0;
+       }
++      mii_stat1000_mod_linkmode_lpa_t(phydev->lp_advertising, val);
++
++      ret = genphy_c45_read_status(phydev);
++      if (ret < 0)
++              return ret;
+       if (!phydev->link)
+               return 0;
diff --git a/target/linux/generic/backport-6.6/781-21-v6.13-net-phy-realtek-clear-master_slave_state-if-link-is-.patch b/target/linux/generic/backport-6.6/781-21-v6.13-net-phy-realtek-clear-master_slave_state-if-link-is-.patch
deleted file mode 100644 (file)
index 778602d..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From ea8318cb33e593bbfc59d637eae45a69732c5387 Mon Sep 17 00:00:00 2001
-From: Daniel Golle <daniel@makrotopia.org>
-Date: Wed, 15 Jan 2025 14:43:43 +0000
-Subject: [PATCH] net: phy: realtek: clear master_slave_state if link is down
-
-rtlgen_decode_physr() which sets master_slave_state isn't called in case
-the link is down and other than rtlgen_read_status(),
-rtl822x_c45_read_status() doesn't implicitely clear master_slave_state.
-
-Avoid stale master_slave_state by always setting it to
-MASTER_SLAVE_STATE_UNKNOWN in rtl822x_c45_read_status() in case the link
-is down.
-
-Fixes: 081c9c0265c9 ("net: phy: realtek: read duplex and gbit master from PHYSR register")
-Signed-off-by: Daniel Golle <daniel@makrotopia.org>
-Reviewed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/phy/realtek.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
---- a/drivers/net/phy/realtek.c
-+++ b/drivers/net/phy/realtek.c
-@@ -1038,8 +1038,10 @@ static int rtl822x_c45_read_status(struc
-       if (ret < 0)
-               return ret;
--      if (!phydev->link)
-+      if (!phydev->link) {
-+              phydev->master_slave_state = MASTER_SLAVE_STATE_UNKNOWN;
-               return 0;
-+      }
-       /* Read actual speed from vendor register. */
-       val = phy_read_mmd(phydev, MDIO_MMD_VEND2, RTL_VND2_PHYSR);
diff --git a/target/linux/generic/backport-6.6/781-21-v6.14-net-phy-realtek-clear-master_slave_state-if-link-is-.patch b/target/linux/generic/backport-6.6/781-21-v6.14-net-phy-realtek-clear-master_slave_state-if-link-is-.patch
new file mode 100644 (file)
index 0000000..778602d
--- /dev/null
@@ -0,0 +1,35 @@
+From ea8318cb33e593bbfc59d637eae45a69732c5387 Mon Sep 17 00:00:00 2001
+From: Daniel Golle <daniel@makrotopia.org>
+Date: Wed, 15 Jan 2025 14:43:43 +0000
+Subject: [PATCH] net: phy: realtek: clear master_slave_state if link is down
+
+rtlgen_decode_physr() which sets master_slave_state isn't called in case
+the link is down and other than rtlgen_read_status(),
+rtl822x_c45_read_status() doesn't implicitely clear master_slave_state.
+
+Avoid stale master_slave_state by always setting it to
+MASTER_SLAVE_STATE_UNKNOWN in rtl822x_c45_read_status() in case the link
+is down.
+
+Fixes: 081c9c0265c9 ("net: phy: realtek: read duplex and gbit master from PHYSR register")
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+Reviewed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/phy/realtek.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/drivers/net/phy/realtek.c
++++ b/drivers/net/phy/realtek.c
+@@ -1038,8 +1038,10 @@ static int rtl822x_c45_read_status(struc
+       if (ret < 0)
+               return ret;
+-      if (!phydev->link)
++      if (!phydev->link) {
++              phydev->master_slave_state = MASTER_SLAVE_STATE_UNKNOWN;
+               return 0;
++      }
+       /* Read actual speed from vendor register. */
+       val = phy_read_mmd(phydev, MDIO_MMD_VEND2, RTL_VND2_PHYSR);
diff --git a/target/linux/generic/backport-6.6/781-22-v6.13-net-phy-realtek-always-clear-NBase-T-lpa.patch b/target/linux/generic/backport-6.6/781-22-v6.13-net-phy-realtek-always-clear-NBase-T-lpa.patch
deleted file mode 100644 (file)
index d365ed0..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From d3eb58549842c60ed46f37da7f4da969e3d6ecd3 Mon Sep 17 00:00:00 2001
-From: Daniel Golle <daniel@makrotopia.org>
-Date: Wed, 15 Jan 2025 14:45:00 +0000
-Subject: [PATCH] net: phy: realtek: always clear NBase-T lpa
-
-Clear NBase-T link partner advertisement before calling
-rtlgen_read_status() to avoid phy_resolve_aneg_linkmode() wrongly
-setting speed and duplex.
-
-This fixes bogus 2.5G/5G/10G link partner advertisement and thus
-speed and duplex being set by phy_resolve_aneg_linkmode() due to stale
-NBase-T lpa.
-
-Fixes: 68d5cd09e891 ("net: phy: realtek: change order of calls in C22 read_status()")
-Signed-off-by: Daniel Golle <daniel@makrotopia.org>
-Reviewed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/phy/realtek.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
---- a/drivers/net/phy/realtek.c
-+++ b/drivers/net/phy/realtek.c
-@@ -952,15 +952,15 @@ static int rtl822x_read_status(struct ph
- {
-       int lpadv, ret;
-+      mii_10gbt_stat_mod_linkmode_lpa_t(phydev->lp_advertising, 0);
-+
-       ret = rtlgen_read_status(phydev);
-       if (ret < 0)
-               return ret;
-       if (phydev->autoneg == AUTONEG_DISABLE ||
--          !phydev->autoneg_complete) {
--              mii_10gbt_stat_mod_linkmode_lpa_t(phydev->lp_advertising, 0);
-+          !phydev->autoneg_complete)
-               return 0;
--      }
-       lpadv = phy_read_paged(phydev, 0xa5d, 0x13);
-       if (lpadv < 0)
diff --git a/target/linux/generic/backport-6.6/781-22-v6.14-net-phy-realtek-always-clear-NBase-T-lpa.patch b/target/linux/generic/backport-6.6/781-22-v6.14-net-phy-realtek-always-clear-NBase-T-lpa.patch
new file mode 100644 (file)
index 0000000..d365ed0
--- /dev/null
@@ -0,0 +1,42 @@
+From d3eb58549842c60ed46f37da7f4da969e3d6ecd3 Mon Sep 17 00:00:00 2001
+From: Daniel Golle <daniel@makrotopia.org>
+Date: Wed, 15 Jan 2025 14:45:00 +0000
+Subject: [PATCH] net: phy: realtek: always clear NBase-T lpa
+
+Clear NBase-T link partner advertisement before calling
+rtlgen_read_status() to avoid phy_resolve_aneg_linkmode() wrongly
+setting speed and duplex.
+
+This fixes bogus 2.5G/5G/10G link partner advertisement and thus
+speed and duplex being set by phy_resolve_aneg_linkmode() due to stale
+NBase-T lpa.
+
+Fixes: 68d5cd09e891 ("net: phy: realtek: change order of calls in C22 read_status()")
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+Reviewed-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/phy/realtek.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/drivers/net/phy/realtek.c
++++ b/drivers/net/phy/realtek.c
+@@ -952,15 +952,15 @@ static int rtl822x_read_status(struct ph
+ {
+       int lpadv, ret;
++      mii_10gbt_stat_mod_linkmode_lpa_t(phydev->lp_advertising, 0);
++
+       ret = rtlgen_read_status(phydev);
+       if (ret < 0)
+               return ret;
+       if (phydev->autoneg == AUTONEG_DISABLE ||
+-          !phydev->autoneg_complete) {
+-              mii_10gbt_stat_mod_linkmode_lpa_t(phydev->lp_advertising, 0);
++          !phydev->autoneg_complete)
+               return 0;
+-      }
+       lpadv = phy_read_paged(phydev, 0xa5d, 0x13);
+       if (lpadv < 0)