Add support for Aquantia CUX3410 and fix/sync support for the AQR112 variants. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
92 lines
3.3 KiB
Diff
92 lines
3.3 KiB
Diff
From 3b92ee7b7899b6beffb2b484c58326e36612a873 Mon Sep 17 00:00:00 2001
|
|
From: Daniel Golle <daniel@makrotopia.org>
|
|
Date: Thu, 23 Dec 2021 14:52:56 +0000
|
|
Subject: [PATCH] net: phy: aquantia: add PHY_ID for AQR112R
|
|
|
|
As advised by Ian Chang this PHY is used in Puzzle devices.
|
|
|
|
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|
---
|
|
drivers/net/phy/aquantia/aquantia_main.c | 10 ++++++++++
|
|
1 file changed, 10 insertions(+)
|
|
|
|
--- a/drivers/net/phy/aquantia/aquantia_main.c
|
|
+++ b/drivers/net/phy/aquantia/aquantia_main.c
|
|
@@ -26,6 +26,8 @@
|
|
#define PHY_ID_AQR111 0x03a1b610
|
|
#define PHY_ID_AQR111B0 0x03a1b612
|
|
#define PHY_ID_AQR112 0x03a1b662
|
|
+#define PHY_ID_AQR112C 0x03a1b790
|
|
+#define PHY_ID_AQR112R 0x31c31d12
|
|
#define PHY_ID_AQR412 0x03a1b6f2
|
|
#define PHY_ID_AQR412C 0x03a1b712
|
|
#define PHY_ID_AQR113 0x31c31c40
|
|
@@ -1452,6 +1454,58 @@ static struct phy_driver aqr_driver[] =
|
|
.config_inband = aqr_gen2_config_inband,
|
|
},
|
|
{
|
|
+ PHY_ID_MATCH_MODEL(PHY_ID_AQR112C),
|
|
+ .name = "Aquantia AQR112C",
|
|
+ .probe = aqr107_probe,
|
|
+ .config_init = aqr_gen3_config_init,
|
|
+ .config_aneg = aqr_config_aneg_set_prot,
|
|
+ .config_intr = aqr_config_intr,
|
|
+ .handle_interrupt = aqr_handle_interrupt,
|
|
+ .get_tunable = aqr107_get_tunable,
|
|
+ .set_tunable = aqr107_set_tunable,
|
|
+ .suspend = aqr_gen1_suspend,
|
|
+ .resume = aqr_gen1_resume,
|
|
+ .read_status = aqr_gen2_read_status,
|
|
+ .get_rate_matching = aqr_gen2_get_rate_matching,
|
|
+ .get_sset_count = aqr107_get_sset_count,
|
|
+ .get_strings = aqr107_get_strings,
|
|
+ .get_stats = aqr107_get_stats,
|
|
+ .link_change_notify = aqr107_link_change_notify,
|
|
+ .led_brightness_set = aqr_phy_led_brightness_set,
|
|
+ .led_hw_is_supported = aqr_phy_led_hw_is_supported,
|
|
+ .led_hw_control_set = aqr_phy_led_hw_control_set,
|
|
+ .led_hw_control_get = aqr_phy_led_hw_control_get,
|
|
+ .led_polarity_set = aqr_phy_led_polarity_set,
|
|
+ .inband_caps = aqr_gen2_inband_caps,
|
|
+ .config_inband = aqr_gen2_config_inband,
|
|
+},
|
|
+{
|
|
+ PHY_ID_MATCH_MODEL(PHY_ID_AQR112R),
|
|
+ .name = "Aquantia AQR112R",
|
|
+ .probe = aqr107_probe,
|
|
+ .config_init = aqr_gen3_config_init,
|
|
+ .config_aneg = aqr_config_aneg_set_prot,
|
|
+ .config_intr = aqr_config_intr,
|
|
+ .handle_interrupt = aqr_handle_interrupt,
|
|
+ .get_tunable = aqr107_get_tunable,
|
|
+ .set_tunable = aqr107_set_tunable,
|
|
+ .suspend = aqr_gen1_suspend,
|
|
+ .resume = aqr_gen1_resume,
|
|
+ .read_status = aqr_gen2_read_status,
|
|
+ .get_rate_matching = aqr_gen2_get_rate_matching,
|
|
+ .get_sset_count = aqr107_get_sset_count,
|
|
+ .get_strings = aqr107_get_strings,
|
|
+ .get_stats = aqr107_get_stats,
|
|
+ .link_change_notify = aqr107_link_change_notify,
|
|
+ .led_brightness_set = aqr_phy_led_brightness_set,
|
|
+ .led_hw_is_supported = aqr_phy_led_hw_is_supported,
|
|
+ .led_hw_control_set = aqr_phy_led_hw_control_set,
|
|
+ .led_hw_control_get = aqr_phy_led_hw_control_get,
|
|
+ .led_polarity_set = aqr_phy_led_polarity_set,
|
|
+ .inband_caps = aqr_gen2_inband_caps,
|
|
+ .config_inband = aqr_gen2_config_inband,
|
|
+},
|
|
+{
|
|
PHY_ID_MATCH_MODEL(PHY_ID_AQR412),
|
|
.name = "Aquantia AQR412",
|
|
.probe = aqr107_probe,
|
|
@@ -1693,6 +1747,8 @@ static const struct mdio_device_id __may
|
|
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR111) },
|
|
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR111B0) },
|
|
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR112) },
|
|
+ { PHY_ID_MATCH_MODEL(PHY_ID_AQR112C) },
|
|
+ { PHY_ID_MATCH_MODEL(PHY_ID_AQR112R) },
|
|
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412) },
|
|
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR412C) },
|
|
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113) },
|