2023-02-09 12:44:50

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] net: dsa: ocelot: add PTP dependency for NET_DSA_MSCC_OCELOT_EXT

From: Arnd Bergmann <[email protected]>

A new user of MSCC_OCELOT_SWITCH_LIB was added, bringing back an old
link failure that was fixed with e5f31552674e ("ethernet: fix
PTP_1588_CLOCK dependencies"):

x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_ptp_enable':
ocelot_ptp.c:(.text+0x8ee): undefined reference to `ptp_find_pin'
x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_get_ts_info':
ocelot_ptp.c:(.text+0xd5d): undefined reference to `ptp_clock_index'
x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_init_timestamp':
ocelot_ptp.c:(.text+0x15ca): undefined reference to `ptp_clock_register'
x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_deinit_timestamp':
ocelot_ptp.c:(.text+0x16b7): undefined reference to `ptp_clock_unregister'

Add the same PTP dependency here, as well as in the MSCC_OCELOT_SWITCH_LIB
symbol itself to make it more obvious what is going on when the next
driver selects it.

Fixes: 3d7316ac81ac ("net: dsa: ocelot: add external ocelot switch control")
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/net/dsa/ocelot/Kconfig | 1 +
drivers/net/ethernet/mscc/Kconfig | 1 +
2 files changed, 2 insertions(+)

diff --git a/drivers/net/dsa/ocelot/Kconfig b/drivers/net/dsa/ocelot/Kconfig
index 640725524d0c..eff0a7dfcd21 100644
--- a/drivers/net/dsa/ocelot/Kconfig
+++ b/drivers/net/dsa/ocelot/Kconfig
@@ -12,6 +12,7 @@ config NET_DSA_MSCC_OCELOT_EXT
tristate "Ocelot External Ethernet switch support"
depends on NET_DSA && SPI
depends on NET_VENDOR_MICROSEMI
+ depends on PTP_1588_CLOCK_OPTIONAL
select MDIO_MSCC_MIIM
select MFD_OCELOT_CORE
select MSCC_OCELOT_SWITCH_LIB
diff --git a/drivers/net/ethernet/mscc/Kconfig b/drivers/net/ethernet/mscc/Kconfig
index 8dd8c7f425d2..81e605691bb8 100644
--- a/drivers/net/ethernet/mscc/Kconfig
+++ b/drivers/net/ethernet/mscc/Kconfig
@@ -13,6 +13,7 @@ if NET_VENDOR_MICROSEMI

# Users should depend on NET_SWITCHDEV, HAS_IOMEM, BRIDGE
config MSCC_OCELOT_SWITCH_LIB
+ depends on PTP_1588_CLOCK_OPTIONAL
select NET_DEVLINK
select REGMAP_MMIO
select PACKING
--
2.39.1



2023-02-09 17:04:48

by Colin Foster

[permalink] [raw]
Subject: Re: [PATCH] net: dsa: ocelot: add PTP dependency for NET_DSA_MSCC_OCELOT_EXT

Hi Arnd,

On Thu, Feb 09, 2023 at 01:44:17PM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> A new user of MSCC_OCELOT_SWITCH_LIB was added, bringing back an old
> link failure that was fixed with e5f31552674e ("ethernet: fix
> PTP_1588_CLOCK dependencies"):
>
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_ptp_enable':
> ocelot_ptp.c:(.text+0x8ee): undefined reference to `ptp_find_pin'
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_get_ts_info':
> ocelot_ptp.c:(.text+0xd5d): undefined reference to `ptp_clock_index'
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_init_timestamp':
> ocelot_ptp.c:(.text+0x15ca): undefined reference to `ptp_clock_register'
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_deinit_timestamp':
> ocelot_ptp.c:(.text+0x16b7): undefined reference to `ptp_clock_unregister'
>
> Add the same PTP dependency here, as well as in the MSCC_OCELOT_SWITCH_LIB
> symbol itself to make it more obvious what is going on when the next
> driver selects it.
>
> Fixes: 3d7316ac81ac ("net: dsa: ocelot: add external ocelot switch control")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---

I think this'll have to go through net-next, because ocelot-ext hasn't
been merged yet... unless there's something I don't fully understand
(which is very likely)

Thanks for finding / fixing! I'll run a quick verification when I have
access to hardware. Probably won't be for a couple days though.

Acked-by: Colin Foster <[email protected]>

2023-02-11 03:40:27

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH] net: dsa: ocelot: add PTP dependency for NET_DSA_MSCC_OCELOT_EXT

Hello:

This patch was applied to netdev/net-next.git (master)
by Jakub Kicinski <[email protected]>:

On Thu, 9 Feb 2023 13:44:17 +0100 you wrote:
> From: Arnd Bergmann <[email protected]>
>
> A new user of MSCC_OCELOT_SWITCH_LIB was added, bringing back an old
> link failure that was fixed with e5f31552674e ("ethernet: fix
> PTP_1588_CLOCK dependencies"):
>
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_ptp_enable':
> ocelot_ptp.c:(.text+0x8ee): undefined reference to `ptp_find_pin'
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_get_ts_info':
> ocelot_ptp.c:(.text+0xd5d): undefined reference to `ptp_clock_index'
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_init_timestamp':
> ocelot_ptp.c:(.text+0x15ca): undefined reference to `ptp_clock_register'
> x86_64-linux-ld: drivers/net/ethernet/mscc/ocelot_ptp.o: in function `ocelot_deinit_timestamp':
> ocelot_ptp.c:(.text+0x16b7): undefined reference to `ptp_clock_unregister'
>
> [...]

Here is the summary with links:
- net: dsa: ocelot: add PTP dependency for NET_DSA_MSCC_OCELOT_EXT
https://git.kernel.org/netdev/net-next/c/f99f22e02f29

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html