]> git.baikalelectronics.ru Git - kernel.git/commitdiff
net: phy: broadcom: Add support for BCM53125 internal PHYs
authorFlorian Fainelli <f.fainelli@gmail.com>
Fri, 17 Apr 2020 18:38:02 +0000 (11:38 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 18 Apr 2020 22:50:32 +0000 (15:50 -0700)
BCM53125 has internal Gigabit PHYs which support interrupts as well as
statistics, make it possible to configure both of those features with a
PHY driver entry.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/broadcom.c
include/linux/brcmphy.h

index ae4873f2f86efb0abcc117f0aac11694b6def9a6..97201d5cf007181e1295a685f9492c2f8bdb1c9d 100644 (file)
@@ -781,6 +781,19 @@ static struct phy_driver broadcom_drivers[] = {
        .get_strings    = bcm_phy_get_strings,
        .get_stats      = bcm53xx_phy_get_stats,
        .probe          = bcm53xx_phy_probe,
+}, {
+       .phy_id         = PHY_ID_BCM53125,
+       .phy_id_mask    = 0xfffffff0,
+       .name           = "Broadcom BCM53125",
+       .flags          = PHY_IS_INTERNAL,
+       /* PHY_GBIT_FEATURES */
+       .get_sset_count = bcm_phy_get_sset_count,
+       .get_strings    = bcm_phy_get_strings,
+       .get_stats      = bcm53xx_phy_get_stats,
+       .probe          = bcm53xx_phy_probe,
+       .config_init    = bcm54xx_config_init,
+       .ack_interrupt  = bcm_phy_ack_intr,
+       .config_intr    = bcm_phy_config_intr,
 }, {
        .phy_id         = PHY_ID_BCM89610,
        .phy_id_mask    = 0xfffffff0,
@@ -810,6 +823,7 @@ static struct mdio_device_id __maybe_unused broadcom_tbl[] = {
        { PHY_ID_BCMAC131, 0xfffffff0 },
        { PHY_ID_BCM5241, 0xfffffff0 },
        { PHY_ID_BCM5395, 0xfffffff0 },
+       { PHY_ID_BCM53125, 0xfffffff0 },
        { PHY_ID_BCM89610, 0xfffffff0 },
        { }
 };
index 6462c54478726c3f70cbb5099471a61a7fa9fa50..7e1d857c84686ea886ec002188adb38e85c0fb12 100644 (file)
@@ -15,6 +15,7 @@
 #define PHY_ID_BCMAC131                        0x0143bc70
 #define PHY_ID_BCM5481                 0x0143bca0
 #define PHY_ID_BCM5395                 0x0143bcf0
+#define PHY_ID_BCM53125                        0x03625f20
 #define PHY_ID_BCM54810                        0x03625d00
 #define PHY_ID_BCM5482                 0x0143bcb0
 #define PHY_ID_BCM5411                 0x00206070