[PATCH] ramips: fix at803x patch again

DENG Qingfang dqfext at gmail.com
Thu Jun 3 19:26:48 PDT 2021


Commit 8222f8e1b9be overrides AR8031's PHY features, making its fibre
feature unavailable. To fix that, override it again with the correct
features flag in ramips patch.

Reported-by: CHEN Minqiang <ptpt52 at gmail.com>
Fixes: 8222f8e1b9be ("ath79: fix link mode support list on UniFi AC")
Signed-off-by: DENG Qingfang <dqfext at gmail.com>
---
 .../ramips/patches-5.10/710-at803x.patch      | 13 ++++++++++--
 .../linux/ramips/patches-5.4/991-at803x.patch | 21 ++++++++++++-------
 2 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/target/linux/ramips/patches-5.10/710-at803x.patch b/target/linux/ramips/patches-5.10/710-at803x.patch
index dab62b7607..f4d92a53e1 100644
--- a/target/linux/ramips/patches-5.10/710-at803x.patch
+++ b/target/linux/ramips/patches-5.10/710-at803x.patch
@@ -9,8 +9,8 @@ Content-Transfer-Encoding: 8bit
 
 Signed-off-by: René van Dorst <opensource at vdorst.com>
 ---
- drivers/net/phy/at803x.c | 91 ++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 91 insertions(+)
+ drivers/net/phy/at803x.c | 86 +++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 85 insertions(+), 1 deletion(-)
 
 --- a/drivers/net/phy/at803x.c
 +++ b/drivers/net/phy/at803x.c
@@ -147,3 +147,12 @@ Signed-off-by: René van Dorst <opensource at vdorst.com>
  	.flags			= PHY_POLL_CABLE_TEST,
  	.probe			= at803x_probe,
  	.remove			= at803x_remove,
+@@ -1119,7 +1203,7 @@ static struct phy_driver at803x_driver[]
+ 	.get_wol		= at803x_get_wol,
+ 	.suspend		= at803x_suspend,
+ 	.resume			= at803x_resume,
+-	.features               = PHY_GBIT_FEATURES,
++	.features               = PHY_GBIT_FIBRE_FEATURES,
+ 	.read_status		= at803x_read_status,
+ 	.aneg_done		= at803x_aneg_done,
+ 	.ack_interrupt		= &at803x_ack_interrupt,
diff --git a/target/linux/ramips/patches-5.4/991-at803x.patch b/target/linux/ramips/patches-5.4/991-at803x.patch
index 95411211b2..8381aa9f3f 100644
--- a/target/linux/ramips/patches-5.4/991-at803x.patch
+++ b/target/linux/ramips/patches-5.4/991-at803x.patch
@@ -9,8 +9,8 @@ Content-Transfer-Encoding: 8bit
 
 Signed-off-by: René van Dorst <opensource at vdorst.com>
 ---
- drivers/net/phy/at803x.c | 91 ++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 91 insertions(+)
+ drivers/net/phy/at803x.c | 93 +++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 92 insertions(+), 1 deletion(-)
 
 --- a/drivers/net/phy/at803x.c
 +++ b/drivers/net/phy/at803x.c
@@ -146,11 +146,18 @@ Signed-off-by: René van Dorst <opensource at vdorst.com>
  static struct phy_driver at803x_driver[] = {
  {
  	/* ATHEROS 8035 */
-@@ -461,6 +551,7 @@ static struct phy_driver at803x_driver[]
+@@ -485,12 +575,13 @@ static struct phy_driver at803x_driver[]
+ 	.name			= "Atheros 8031 ethernet",
+ 	.phy_id_mask		= AT803X_PHY_ID_MASK,
+ 	.probe			= at803x_probe,
++	.config_aneg		= at803x_config_aneg,
+ 	.config_init		= at803x_config_init,
+ 	.set_wol		= at803x_set_wol,
+ 	.get_wol		= at803x_get_wol,
  	.suspend		= at803x_suspend,
  	.resume			= at803x_resume,
- 	/* PHY_GBIT_FEATURES */
-+	.config_aneg		= at803x_config_aneg,
+-	.features               = PHY_GBIT_FEATURES,
++	.features               = PHY_GBIT_FIBRE_FEATURES,
  	.read_status		= at803x_read_status,
- 	.ack_interrupt		= at803x_ack_interrupt,
- 	.config_intr		= at803x_config_intr,
+ 	.aneg_done		= at803x_aneg_done,
+ 	.ack_interrupt		= &at803x_ack_interrupt,
-- 
2.25.1




More information about the openwrt-devel mailing list