Re: [PATCH net v4] net: ethernet: ti: Remove TI_CPTS_MOD workaround

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 12/05/2020 17:22, Tony Lindgren wrote:
Hi,

* Grygorii Strashko <grygorii.strashko@xxxxxx> [200512 10:03]:
From: Clay McClure <clay@xxxxxxxxxxx>

My recent commit b6d49cab44b5 ("net: Make PTP-specific drivers depend on
PTP_1588_CLOCK") exposes a missing dependency in defconfigs that select
TI_CPTS without selecting PTP_1588_CLOCK, leading to linker errors of the
form:

drivers/net/ethernet/ti/cpsw.o: in function `cpsw_ndo_stop':
cpsw.c:(.text+0x680): undefined reference to `cpts_unregister'
  ...

That's because TI_CPTS_MOD (which is the symbol gating the _compilation_ of
cpts.c) now depends on PTP_1588_CLOCK, and so is not enabled in these
configurations, but TI_CPTS (which is the symbol gating _calls_ to the cpts
functions) _is_ enabled. So we end up compiling calls to functions that
don't exist, resulting in the linker errors.

This patch fixes build errors and restores previous behavior by:
  - ensure PTP_1588_CLOCK=y in TI specific configs and CPTS will be built
  - remove TI_CPTS_MOD and, instead, add dependencies from CPTS in
    TI_CPSW/TI_KEYSTONE_NETCP/TI_CPSW_SWITCHDEV as below:

    config TI_CPSW_SWITCHDEV
    ...
     depends on TI_CPTS || !TI_CPTS

    which will ensure proper dependencies PTP_1588_CLOCK -> TI_CPTS ->
TI_CPSW/TI_KEYSTONE_NETCP/TI_CPSW_SWITCHDEV and build type selection.

Note. For NFS boot + CPTS all of above configs have to be built-in.

This builds and boots on BBB and beagle x15 with NFSroot so:

Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>


Thank you for testing.

However, there's at least one more issue left that shows up at least
on ti81xx dra62x-j5eco-evm on v5.7-rc5 that has commit b46b2b7ba6e1
("ARM: dts: Fix dm814x Ethernet by changing to use rgmii-id mode").

I think this is a different issue though, any ideas?


This seems like completely different issue.
Could we have separate thread started for this, pls?

--
Best regards,
grygorii



[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux