|
|
@@ -0,0 +1,48 @@
|
|
|
+From 0ccf8511182436183c031e8a2f740ae91a02c625 Mon Sep 17 00:00:00 2001
|
|
|
+From: Ansuel Smith <[email protected]>
|
|
|
+Date: Tue, 14 Sep 2021 14:33:45 +0200
|
|
|
+Subject: net: phy: at803x: add support for qca 8327 internal phy
|
|
|
+
|
|
|
+Add support for qca8327 internal phy needed for correct init of the
|
|
|
+switch port. It does use the same qca8337 function and reg just with a
|
|
|
+different id.
|
|
|
+
|
|
|
+Signed-off-by: Ansuel Smith <[email protected]>
|
|
|
+Tested-by: Rosen Penev <[email protected]>
|
|
|
+Tested-by: Andrew Lunn <[email protected]>
|
|
|
+Signed-off-by: David S. Miller <[email protected]>
|
|
|
+---
|
|
|
+ drivers/net/phy/at803x.c | 15 +++++++++++++++
|
|
|
+ 1 file changed, 15 insertions(+)
|
|
|
+
|
|
|
+--- a/drivers/net/phy/at803x.c
|
|
|
++++ b/drivers/net/phy/at803x.c
|
|
|
+@@ -1328,6 +1328,19 @@ static struct phy_driver at803x_driver[]
|
|
|
+ .get_sset_count = at803x_get_sset_count,
|
|
|
+ .get_strings = at803x_get_strings,
|
|
|
+ .get_stats = at803x_get_stats,
|
|
|
++}, {
|
|
|
++ /* QCA8327 */
|
|
|
++ .phy_id = QCA8327_PHY_ID,
|
|
|
++ .phy_id_mask = QCA8K_PHY_ID_MASK,
|
|
|
++ .name = "QCA PHY 8327",
|
|
|
++ /* PHY_GBIT_FEATURES */
|
|
|
++ .probe = at803x_probe,
|
|
|
++ .flags = PHY_IS_INTERNAL,
|
|
|
++ .config_init = qca83xx_config_init,
|
|
|
++ .soft_reset = genphy_soft_reset,
|
|
|
++ .get_sset_count = at803x_get_sset_count,
|
|
|
++ .get_strings = at803x_get_strings,
|
|
|
++ .get_stats = at803x_get_stats,
|
|
|
+ }, };
|
|
|
+
|
|
|
+ module_phy_driver(at803x_driver);
|
|
|
+@@ -1338,6 +1351,8 @@ static struct mdio_device_id __maybe_unu
|
|
|
+ { PHY_ID_MATCH_EXACT(ATH8032_PHY_ID) },
|
|
|
+ { PHY_ID_MATCH_EXACT(ATH8035_PHY_ID) },
|
|
|
+ { PHY_ID_MATCH_EXACT(ATH9331_PHY_ID) },
|
|
|
++ { PHY_ID_MATCH_EXACT(QCA8337_PHY_ID) },
|
|
|
++ { PHY_ID_MATCH_EXACT(QCA8327_PHY_ID) },
|
|
|
+ { }
|
|
|
+ };
|
|
|
+
|