Skip to content

Commit fcb26bd

Browse files
joabreudavem330
authored andcommitted
net: phy: Add Synopsys DesignWare XPCS MDIO module
Synopsys DesignWare XPCS is an MMD that can manage link status, auto-negotiation, link training, ... In this commit we add basic support for XPCS using USXGMII interface and Clause 73 Auto-negotiation. This is highly tied with PHYLINK and can't be used without it. A given ethernet driver can use the provided callbacks to add the support for XPCS. Signed-off-by: Jose Abreu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 9414819 commit fcb26bd

File tree

5 files changed

+667
-0
lines changed

5 files changed

+667
-0
lines changed

MAINTAINERS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16117,6 +16117,13 @@ L: [email protected]
1611716117
S: Supported
1611816118
F: drivers/net/ethernet/synopsys/
1611916119

16120+
SYNOPSYS DESIGNWARE ETHERNET XPCS DRIVER
16121+
M: Jose Abreu <[email protected]>
16122+
16123+
S: Supported
16124+
F: drivers/net/phy/mdio-xpcs.c
16125+
F: include/linux/mdio-xpcs.h
16126+
1612016127
SYNOPSYS DESIGNWARE I2C DRIVER
1612116128
M: Jarkko Nikula <[email protected]>
1612216129
R: Andy Shevchenko <[email protected]>

drivers/net/phy/Kconfig

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,12 @@ config MDIO_XGENE
214214
This module provides a driver for the MDIO busses found in the
215215
APM X-Gene SoC's.
216216

217+
config MDIO_XPCS
218+
tristate "Synopsys DesignWare XPCS controller"
219+
help
220+
This module provides helper functions for Synopsys DesignWare XPCS
221+
controllers.
222+
217223
endif
218224
endif
219225

drivers/net/phy/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ obj-$(CONFIG_MDIO_OCTEON) += mdio-octeon.o
4444
obj-$(CONFIG_MDIO_SUN4I) += mdio-sun4i.o
4545
obj-$(CONFIG_MDIO_THUNDER) += mdio-thunder.o
4646
obj-$(CONFIG_MDIO_XGENE) += mdio-xgene.o
47+
obj-$(CONFIG_MDIO_XPCS) += mdio-xpcs.o
4748

4849
obj-$(CONFIG_NETWORK_PHY_TIMESTAMPING) += mii_timestamper.o
4950

0 commit comments

Comments
 (0)