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 <ptp...@gmail.com>
Fixes: 8222f8e1b9be ("ath79: fix link mode support list on UniFi AC")
Signed-off-by: DENG Qingfang <dqf...@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 <opensou...@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 <opensou...@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 <opensou...@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 <opensou...@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


_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to