Arnd Bergmann <arnd@xxxxxxxxxx> wrote: > From: Arnd Bergmann <arnd@xxxxxxxx> > > When CONFIG_ATH9K is built-in but LED support is in a loadable > module, both ath9k drivers fails to link: > > x86_64-linux-ld: drivers/net/wireless/ath/ath9k/gpio.o: in function `ath_deinit_leds': > gpio.c:(.text+0x36): undefined reference to `led_classdev_unregister' > x86_64-linux-ld: drivers/net/wireless/ath/ath9k/gpio.o: in function `ath_init_leds': > gpio.c:(.text+0x179): undefined reference to `led_classdev_register_ext' > > The problem is that the 'imply' keyword does not enforce any dependency > but is only a weak hint to Kconfig to enable another symbol from a > defconfig file. > > Change imply to a 'depends on LEDS_CLASS' that prevents the incorrect > configuration but still allows building the driver without LED support. > > The 'select MAC80211_LEDS' is now ensures that the LED support is > actually used if it is present, and the added Kconfig dependency > on MAC80211_LEDS ensures that it cannot be enabled manually when it > has no effect. > > Fixes: 197f466e93f5 ("ath9k_htc: Do not select MAC80211_LEDS by default") > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > Acked-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> Patch applied to wireless-drivers.git, thanks. b64acb28da83 ath9k: fix build error with LEDS_CLASS=m -- https://patchwork.kernel.org/project/linux-wireless/patch/20210125113654.2408057-1-arnd@xxxxxxxxxx/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches