linux/drivers/net/wireless/intel/iwlwifi
Arnd Bergmann efdbfa0ad0 iwlwifi: fix LED dependencies
The dependencies for LED configuration are highly inconsistent and too
complicated at the moment. One of the results is a randconfig failure I
get very rarely when LEDS_CLASS is in a loadable module, but the wireless
core is built-in:

WARNING: unmet direct dependencies detected for MAC80211_LEDS
  Depends on [n]: NET [=y] && WIRELESS [=y] && MAC80211 [=y] && (LEDS_CLASS [=m]=y || LEDS_CLASS [=m]=MAC80211 [=y])
  Selected by [m]:
  - IWLEGACY [=m] && NETDEVICES [=y] && WLAN [=y] && WLAN_VENDOR_INTEL [=y]
  - IWLWIFI_LEDS [=y] && NETDEVICES [=y] && WLAN [=y] && WLAN_VENDOR_INTEL [=y] && IWLWIFI [=m] && (LEDS_CLASS [=m]=y || LEDS_CLASS [=m]=IWLWIFI [=m]) && (IWLMVM [=m] || IWLDVM [=m])

aarch64-linux-ld: drivers/net/wireless/ath/ath5k/led.o: in function `ath5k_register_led':
led.c:(.text+0x60): undefined reference to `led_classdev_register_ext'
aarch64-linux-ld: drivers/net/wireless/ath/ath5k/led.o: in function `ath5k_unregister_leds':
led.c:(.text+0x200): undefined reference to `led_classdev_unregister'

For iwlwifi, the dependency is wrong, since this config prevents the
MAC80211_LEDS code from being part of a built-in MAC80211 driver.

For iwlegacy, this is worse because the driver tries to force-enable
the other subsystems, which is both a layering violation and a bug
because it will still fail with MAC80211=y and IWLEGACY=m, leading
to LEDS_CLASS being a module as well.

The actual link failure in the ath5k driver is a result of MAC80211_LEDS
being enabled but not usable. With the Kconfig logic fixed in the
Intel drivers, the ath5k driver works as expected again.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20211204173848.873293-1-arnd@kernel.org
2021-12-08 20:17:06 +02:00
..
cfg iwlwifi: bump FW API to 67 for AX devices 2021-10-28 12:04:12 +03:00
dvm Core: 2021-11-02 06:20:58 -07:00
fw iwlwifi: Fix memory leaks in error handling path 2021-11-22 20:39:16 +02:00
mvm iwlwifi: mvm: don't crash on invalid rate w/o STA 2021-12-08 20:14:51 +02:00
pcie iwlwifi: Fix missing error code in iwl_pci_probe() 2021-11-22 20:37:25 +02:00
queue
iwl-agn-hw.h
iwl-config.h iwlwifi: add new killer devices to the driver 2021-10-22 10:49:04 +03:00
iwl-context-info-gen3.h iwlwifi: yoyo: fw debug config from context info and preset 2021-10-22 10:49:01 +03:00
iwl-context-info.h
iwl-csr.h iwlwifi: pcie: update sw error interrupt for BZ family 2021-10-28 12:04:09 +03:00
iwl-dbg-tlv.c iwlwifi: yoyo: support for ROM usniffer 2021-10-28 12:04:10 +03:00
iwl-dbg-tlv.h iwlwifi: yoyo: fw debug config from context info and preset 2021-10-22 10:49:01 +03:00
iwl-debug.c iwlwifi: allow rate-limited error messages 2021-10-22 10:49:03 +03:00
iwl-debug.h iwlwifi: allow rate-limited error messages 2021-10-22 10:49:03 +03:00
iwl-devtrace-data.h iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-devtrace-io.h iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-devtrace-iwlwifi.h iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-devtrace-msg.h iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-devtrace-ucode.h iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-devtrace.c iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-devtrace.h iwlwifi: remove contact information 2021-10-22 10:48:59 +03:00
iwl-drv.c iwlwifi: mvm: retry init flow if failed 2021-11-22 20:38:17 +02:00
iwl-drv.h iwlwifi: mvm: retry init flow if failed 2021-11-22 20:38:17 +02:00
iwl-eeprom-parse.c
iwl-eeprom-parse.h
iwl-eeprom-read.c iwlwifi: remove redundant iwl_finish_nic_init() argument 2021-10-22 10:49:02 +03:00
iwl-eeprom-read.h
iwl-fh.h
iwl-io.c iwlwifi: dump host monitor data when NIC doesn't init 2021-10-28 12:04:10 +03:00
iwl-io.h iwlwifi: remove redundant iwl_finish_nic_init() argument 2021-10-22 10:49:02 +03:00
iwl-modparams.h
iwl-nvm-parse.c iwlwifi: add vendor specific capabilities for some RFs 2021-10-22 10:48:57 +03:00
iwl-nvm-parse.h
iwl-op-mode.h
iwl-phy-db.c
iwl-phy-db.h
iwl-prph.h iwlwifi: Add support for more BZ HWs 2021-10-22 10:40:58 +03:00
iwl-scd.h
iwl-trans.c
iwl-trans.h iwlwifi: yoyo: fw debug config from context info and preset 2021-10-22 10:49:01 +03:00
Kconfig iwlwifi: fix LED dependencies 2021-12-08 20:17:06 +02:00
Makefile iwlwifi: mvm: convert old rate & flags to the new format. 2021-10-22 10:49:00 +03:00