Re: [PATCH net-next] net: dsa: sja1105: fix ptp link error

From: David Miller
Date: Mon Jun 17 2019 - 19:30:49 EST


From: Arnd Bergmann <arnd@xxxxxxxx>
Date: Mon, 17 Jun 2019 15:14:10 +0200

> Due to a reversed dependency, it is possible to build
> the lower ptp driver as a loadable module and the actual
> driver using it as built-in, causing a link error:
>
> drivers/net/dsa/sja1105/sja1105_spi.o: In function `sja1105_static_config_upload':
> sja1105_spi.c:(.text+0x6f0): undefined reference to `sja1105_ptp_reset'
> drivers/net/dsa/sja1105/sja1105_spi.o:(.data+0x2d4): undefined reference to `sja1105et_ptp_cmd'
> drivers/net/dsa/sja1105/sja1105_spi.o:(.data+0x604): undefined reference to `sja1105pqrs_ptp_cmd'
> drivers/net/dsa/sja1105/sja1105_main.o: In function `sja1105_remove':
> sja1105_main.c:(.text+0x8d4): undefined reference to `sja1105_ptp_clock_unregister'
> drivers/net/dsa/sja1105/sja1105_main.o: In function `sja1105_rxtstamp_work':
> sja1105_main.c:(.text+0x964): undefined reference to `sja1105_tstamp_reconstruct'
> drivers/net/dsa/sja1105/sja1105_main.o: In function `sja1105_setup':
> sja1105_main.c:(.text+0xb7c): undefined reference to `sja1105_ptp_clock_register'
> drivers/net/dsa/sja1105/sja1105_main.o: In function `sja1105_port_deferred_xmit':
> sja1105_main.c:(.text+0x1fa0): undefined reference to `sja1105_ptpegr_ts_poll'
> sja1105_main.c:(.text+0x1fc4): undefined reference to `sja1105_tstamp_reconstruct'
> drivers/net/dsa/sja1105/sja1105_main.o:(.rodata+0x5b0): undefined reference to `sja1105_get_ts_info'
>
> Change the Makefile logic to always build the ptp module
> the same way as the rest. Another option would be to
> just add it to the same module and remove the exports,
> but I don't know if there was a good reason to keep them
> separate.
>
> Fixes: bb77f36ac21d ("net: dsa: sja1105: Add support for the PTP clock")
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

Applied, thanks.