be9ca0d33c
The dependency is reversed: cpsw and netcp call into cpts, but cpts depends on the other two in Kconfig. This can lead to cpts being a loadable module and its callers built-in: drivers/net/ethernet/ti/cpsw.o: In function `cpsw_remove': cpsw.c:(.text.cpsw_remove+0xd0): undefined reference to `cpts_release' drivers/net/ethernet/ti/cpsw.o: In function `cpsw_rx_handler': cpsw.c:(.text.cpsw_rx_handler+0x2dc): undefined reference to `cpts_rx_timestamp' drivers/net/ethernet/ti/cpsw.o: In function `cpsw_tx_handler': cpsw.c:(.text.cpsw_tx_handler+0x7c): undefined reference to `cpts_tx_timestamp' drivers/net/ethernet/ti/cpsw.o: In function `cpsw_ndo_stop': As a workaround, I'm introducing another Kconfig symbol to control the compilation of cpts, while making the actual module controlled by a silent symbol that is =y when necessary. Fixes: 6246168b4a38 ("net: ethernet: ti: netcp: add support of cpts") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by: David S. Miller <davem@davemloft.net>
23 lines
744 B
Makefile
23 lines
744 B
Makefile
#
|
|
# Makefile for the TI network device drivers.
|
|
#
|
|
|
|
obj-$(CONFIG_TI_CPSW) += cpsw-common.o
|
|
obj-$(CONFIG_TI_DAVINCI_EMAC) += cpsw-common.o
|
|
|
|
obj-$(CONFIG_TLAN) += tlan.o
|
|
obj-$(CONFIG_CPMAC) += cpmac.o
|
|
obj-$(CONFIG_TI_DAVINCI_EMAC) += davinci_emac.o
|
|
obj-$(CONFIG_TI_DAVINCI_MDIO) += davinci_mdio.o
|
|
obj-$(CONFIG_TI_DAVINCI_CPDMA) += davinci_cpdma.o
|
|
obj-$(CONFIG_TI_CPSW_PHY_SEL) += cpsw-phy-sel.o
|
|
obj-$(CONFIG_TI_CPSW_ALE) += cpsw_ale.o
|
|
obj-$(CONFIG_TI_CPTS_MOD) += cpts.o
|
|
obj-$(CONFIG_TI_CPSW) += ti_cpsw.o
|
|
ti_cpsw-y := cpsw.o
|
|
|
|
obj-$(CONFIG_TI_KEYSTONE_NETCP) += keystone_netcp.o
|
|
keystone_netcp-y := netcp_core.o
|
|
obj-$(CONFIG_TI_KEYSTONE_NETCP_ETHSS) += keystone_netcp_ethss.o
|
|
keystone_netcp_ethss-y := netcp_ethss.o netcp_sgmii.o netcp_xgbepcsr.o
|