Commit 96c34151 authored by Saeed Mahameed's avatar Saeed Mahameed
Browse files

net/mlx5: Kconfig: convert imply usage to weak dependency



MLX5_CORE uses the 'imply' keyword to depend on VXLAN, PTP_1588_CLOCK,
MLXFW and PCI_HYPERV_INTERFACE.

This was useful to force vxlan, ptp, etc.. to be reachable to mlx5
regardless of their config states.

Due to the changes in the cited commit below, the semantics of 'imply'
was changed to not force any restriction on the implied config.

As a result of this change, the compilation of MLX5_CORE=y and VXLAN=m
would result in undefined references, as VXLAN now would stay as 'm'.

To fix this we change MLX5_CORE to have a weak dependency on
these modules/configs and make sure they are reachable, by adding:
depend on symbol || !symbol.

For example: VXLAN=m MLX5_CORE=y, this will force MLX5_CORE to m

Fixes: def2fbff ("kconfig: allow symbols implied by y to become m")
Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
Cc: Masahiro Yamada <masahiroy@kernel.org>
Cc: Nicolas Pitre <nico@fluxnic.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Reported-by: default avatarRandy Dunlap <rdunlap@infradead.org>
parent e7e0004a
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -7,10 +7,10 @@ config MLX5_CORE
	tristate "Mellanox 5th generation network adapters (ConnectX series) core driver"
	depends on PCI
	select NET_DEVLINK
	imply PTP_1588_CLOCK
	imply VXLAN
	imply MLXFW
	imply PCI_HYPERV_INTERFACE
	depends on VXLAN || !VXLAN
	depends on MLXFW || !MLXFW
	depends on PTP_1588_CLOCK || !PTP_1588_CLOCK
	depends on PCI_HYPERV_INTERFACE || !PCI_HYPERV_INTERFACE
	default n
	---help---
	  Core driver for low level functionality of the ConnectX-4 and