diff options
author | Alessio Igor Bogani <alessio.bogani@elettra.eu> | 2015-04-08 06:15:18 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-04-08 15:28:13 -0400 |
commit | 3bca4cf6022ee2ff1ff2142bed28a6fca00d3a44 (patch) | |
tree | 05dc89d4637b2385b01a18f0a673a8839f35dbf6 | |
parent | 1ec1e23d1d43ce96fe9a3b96ffbf3fbb702a8db7 (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/Kconfig | 4 | ||||
-rw-r--r-- | drivers/net/phy/broadcom.c | 14 | ||||
-rw-r--r-- | include/linux/brcmphy.h | 1 |
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 | |||
68 | config BROADCOM_PHY | 68 | config 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 | ||
74 | config BCM63XX_PHY | 74 | config 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 |