aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlessio Igor Bogani <alessio.bogani@elettra.eu>2015-04-08 06:15:18 -0400
committerDavid S. Miller <davem@davemloft.net>2015-04-08 15:28:13 -0400
commit3bca4cf6022ee2ff1ff2142bed28a6fca00d3a44 (patch)
tree05dc89d4637b2385b01a18f0a673a8839f35dbf6
parent1ec1e23d1d43ce96fe9a3b96ffbf3fbb702a8db7 (diff)
net: phy: broadcom: Add BCM54616S phy entry
Signed-off-by: Alessio Igor Bogani <alessio.bogani@elettra.eu> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/phy/Kconfig4
-rw-r--r--drivers/net/phy/broadcom.c14
-rw-r--r--include/linux/brcmphy.h1
3 files changed, 17 insertions, 2 deletions
diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig
index 16adbc481772..8fadaa14b9f0 100644
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
@@ -68,8 +68,8 @@ config SMSC_PHY
68config BROADCOM_PHY 68config BROADCOM_PHY
69 tristate "Drivers for Broadcom PHYs" 69 tristate "Drivers for Broadcom PHYs"
70 ---help--- 70 ---help---
71 Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481 71 Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
72 and BCM5482 PHYs. 72 BCM5481 and BCM5482 PHYs.
73 73
74config BCM63XX_PHY 74config BCM63XX_PHY
75 tristate "Drivers for Broadcom 63xx SOCs internal PHY" 75 tristate "Drivers for Broadcom 63xx SOCs internal PHY"
diff --git a/drivers/net/phy/broadcom.c b/drivers/net/phy/broadcom.c
index a52afb26421b..9c71295f2fef 100644
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -549,6 +549,19 @@ static struct phy_driver broadcom_drivers[] = {
549 .config_intr = bcm54xx_config_intr, 549 .config_intr = bcm54xx_config_intr,
550 .driver = { .owner = THIS_MODULE }, 550 .driver = { .owner = THIS_MODULE },
551}, { 551}, {
552 .phy_id = PHY_ID_BCM54616S,
553 .phy_id_mask = 0xfffffff0,
554 .name = "Broadcom BCM54616S",
555 .features = PHY_GBIT_FEATURES |
556 SUPPORTED_Pause | SUPPORTED_Asym_Pause,
557 .flags = PHY_HAS_MAGICANEG | PHY_HAS_INTERRUPT,
558 .config_init = bcm54xx_config_init,
559 .config_aneg = genphy_config_aneg,
560 .read_status = genphy_read_status,
561 .ack_interrupt = bcm54xx_ack_interrupt,
562 .config_intr = bcm54xx_config_intr,
563 .driver = { .owner = THIS_MODULE },
564}, {
552 .phy_id = PHY_ID_BCM5464, 565 .phy_id = PHY_ID_BCM5464,
553 .phy_id_mask = 0xfffffff0, 566 .phy_id_mask = 0xfffffff0,
554 .name = "Broadcom BCM5464", 567 .name = "Broadcom BCM5464",
@@ -660,6 +673,7 @@ static struct mdio_device_id __maybe_unused broadcom_tbl[] = {
660 { PHY_ID_BCM5411, 0xfffffff0 }, 673 { PHY_ID_BCM5411, 0xfffffff0 },
661 { PHY_ID_BCM5421, 0xfffffff0 }, 674 { PHY_ID_BCM5421, 0xfffffff0 },
662 { PHY_ID_BCM5461, 0xfffffff0 }, 675 { PHY_ID_BCM5461, 0xfffffff0 },
676 { PHY_ID_BCM54616S, 0xfffffff0 },
663 { PHY_ID_BCM5464, 0xfffffff0 }, 677 { PHY_ID_BCM5464, 0xfffffff0 },
664 { PHY_ID_BCM5482, 0xfffffff0 }, 678 { PHY_ID_BCM5482, 0xfffffff0 },
665 { PHY_ID_BCM5482, 0xfffffff0 }, 679 { PHY_ID_BCM5482, 0xfffffff0 },
diff --git a/include/linux/brcmphy.h b/include/linux/brcmphy.h
index 7ccd928cc1f2..1c9920b38fa1 100644
--- a/include/linux/brcmphy.h
+++ b/include/linux/brcmphy.h
@@ -11,6 +11,7 @@
11#define PHY_ID_BCM5421 0x002060e0 11#define PHY_ID_BCM5421 0x002060e0
12#define PHY_ID_BCM5464 0x002060b0 12#define PHY_ID_BCM5464 0x002060b0
13#define PHY_ID_BCM5461 0x002060c0 13#define PHY_ID_BCM5461 0x002060c0
14#define PHY_ID_BCM54616S 0x03625d10
14#define PHY_ID_BCM57780 0x03625d90 15#define PHY_ID_BCM57780 0x03625d90
15 16
16#define PHY_ID_BCM7250 0xae025280 17#define PHY_ID_BCM7250 0xae025280