net: ethernet: ti: am65-cpts: fix build
authorGrygorii Strashko <grygorii.strashko@ti.com>
Tue, 5 May 2020 16:21:23 +0000 (19:21 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 May 2020 20:24:45 +0000 (13:24 -0700)
It's possible to have build configuration which will force PTP_1588_CLOCK=m
and so TI_K3_AM65_CPTS=m while still have TI_K3_AM65_CPSW_NUSS=y. This will
cause build failures:

aarch64-linux-gnu-ld: ../drivers/net/ethernet/ti/am65-cpsw-nuss.o: in function `am65_cpsw_init_cpts':
../drivers/net/ethernet/ti/am65-cpsw-nuss.c:1685: undefined reference to `am65_cpts_create'
aarch64-linux-gnu-ld: ../drivers/net/ethernet/ti/am65-cpsw-nuss.c:1685:(.text+0x2e20):
relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `am65_cpts_create'

Fix it by adding dependencies from CPTS in TI_K3_AM65_CPSW_NUSS as below:
   config TI_K3_AM65_CPSW_NUSS
   ...
     depends on TI_K3_AM65_CPTS || !TI_K3_AM65_CPTS

Note. This will create below dependencies and for NFS boot + CPTS all of them
have to be built-in.
  PTP_1588_CLOCK -> TI_K3_AM65_CPTS -> TI_K3_AM65_CPSW_NUSS

While here, clean up TI_K3_AM65_CPTS definition.

Fixes: b1f66a5bee07 ("net: ethernet: ti: am65-cpsw-nuss: enable packet timestamping support")
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Reported-by: Anders Roxell <anders.roxell@linaro.org>
Tested-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ti/Kconfig

index 69b6462..519f5a8 100644 (file)
@@ -100,7 +100,7 @@ config TI_K3_AM65_CPSW_NUSS
        depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER
        select TI_DAVINCI_MDIO
        imply PHY_TI_GMII_SEL
-       imply TI_AM65_CPTS
+       depends on TI_K3_AM65_CPTS || !TI_K3_AM65_CPTS
        help
          This driver supports TI K3 AM654/J721E CPSW2G Ethernet SubSystem.
          The two-port Gigabit Ethernet MAC (MCU_CPSW0) subsystem provides
@@ -113,9 +113,8 @@ config TI_K3_AM65_CPSW_NUSS
 
 config TI_K3_AM65_CPTS
        tristate "TI K3 AM65x CPTS"
-       depends on ARCH_K3 && OF && PTP_1588_CLOCK
+       depends on ARCH_K3 && OF
        depends on PTP_1588_CLOCK
-       select NET_PTP_CLASSIFY
        help
          Say y here to support the TI K3 AM65x CPTS with 1588 features such as
          PTP hardware clock for each CPTS device and network packets