Message ID | 20170726151442.3913622-1-arnd@arndb.de |
---|---|
State | Accepted |
Commit | 4c3464a8c31829e6e7efbf8258dc062f761509d7 |
Headers | show |
Series | [1/2] net: phy: rework Kconfig settings for MDIO_BUS | expand |
From: Arnd Bergmann <arnd@arndb.de> Date: Wed, 26 Jul 2017 17:13:59 +0200 > I still see build errors in randconfig builds and have had this > patch for a while to locally work around it: > > drivers/built-in.o: In function `xgene_mdio_probe': > mux-core.c:(.text+0x352154): undefined reference to `of_mdiobus_register' > mux-core.c:(.text+0x352168): undefined reference to `mdiobus_free' > mux-core.c:(.text+0x3521c0): undefined reference to `mdiobus_alloc_size' > > The idea is that CONFIG_MDIO_BUS now reflects whether the mdio_bus > code is built-in or a module, and other drivers that use the core > code can simply depend on that, instead of having a complex > dependency line. > > Fixes: 90eff9096c01 ("net: phy: Allow splitting MDIO bus/device support from PHYs") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Applied.
diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig index 2dda72004a7d..928fd892f167 100644 --- a/drivers/net/phy/Kconfig +++ b/drivers/net/phy/Kconfig @@ -7,7 +7,16 @@ menuconfig MDIO_DEVICE help MDIO devices and driver infrastructure code. -if MDIO_DEVICE +config MDIO_BUS + tristate + default m if PHYLIB=m + default MDIO_DEVICE + help + This internal symbol is used for link time dependencies and it + reflects whether the mdio_bus/mdio_device code is built as a + loadable module or built-in. + +if MDIO_BUS config MDIO_BCM_IPROC tristate "Broadcom iProc MDIO bus controller" @@ -28,7 +37,6 @@ config MDIO_BCM_UNIMAC config MDIO_BITBANG tristate "Bitbanged MDIO buses" - depends on !(MDIO_DEVICE=y && PHYLIB=m) help This module implements the MDIO bus protocol in software, for use by low level drivers that export the ability to @@ -127,7 +135,6 @@ config MDIO_THUNDER tristate "ThunderX SOCs MDIO buses" depends on 64BIT depends on PCI - depends on !(MDIO_DEVICE=y && PHYLIB=m) select MDIO_CAVIUM help This driver supports the MDIO interfaces found on Cavium