e4bead892c281ad1e53edff5439d0537b41c7c92
[openwrt/staging/dangole.git] /
1 From 0ccf8511182436183c031e8a2f740ae91a02c625 Mon Sep 17 00:00:00 2001
2 From: Ansuel Smith <ansuelsmth@gmail.com>
3 Date: Tue, 14 Sep 2021 14:33:45 +0200
4 Subject: net: phy: at803x: add support for qca 8327 internal phy
5
6 Add support for qca8327 internal phy needed for correct init of the
7 switch port. It does use the same qca8337 function and reg just with a
8 different id.
9
10 Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
11 Tested-by: Rosen Penev <rosenp@gmail.com>
12 Tested-by: Andrew Lunn <andrew@lunn.ch>
13 Signed-off-by: David S. Miller <davem@davemloft.net>
14 ---
15 drivers/net/phy/at803x.c | 15 +++++++++++++++
16 1 file changed, 15 insertions(+)
17
18 --- a/drivers/net/phy/at803x.c
19 +++ b/drivers/net/phy/at803x.c
20 @@ -1420,6 +1420,19 @@ static struct phy_driver at803x_driver[]
21 .get_sset_count = at803x_get_sset_count,
22 .get_strings = at803x_get_strings,
23 .get_stats = at803x_get_stats,
24 +}, {
25 + /* QCA8327 */
26 + .phy_id = QCA8327_PHY_ID,
27 + .phy_id_mask = QCA8K_PHY_ID_MASK,
28 + .name = "QCA PHY 8327",
29 + /* PHY_GBIT_FEATURES */
30 + .probe = at803x_probe,
31 + .flags = PHY_IS_INTERNAL,
32 + .config_init = qca83xx_config_init,
33 + .soft_reset = genphy_soft_reset,
34 + .get_sset_count = at803x_get_sset_count,
35 + .get_strings = at803x_get_strings,
36 + .get_stats = at803x_get_stats,
37 }, };
38
39 module_phy_driver(at803x_driver);
40 @@ -1430,6 +1443,8 @@ static struct mdio_device_id __maybe_unu
41 { PHY_ID_MATCH_EXACT(ATH8032_PHY_ID) },
42 { PHY_ID_MATCH_EXACT(ATH8035_PHY_ID) },
43 { PHY_ID_MATCH_EXACT(ATH9331_PHY_ID) },
44 + { PHY_ID_MATCH_EXACT(QCA8337_PHY_ID) },
45 + { PHY_ID_MATCH_EXACT(QCA8327_PHY_ID) },
46 { }
47 };
48