ath5k: fix building with LEDS=m
Subsystems (3)
PATCH v2 1/1 ath5k: fix building with LEDS=m
From: Arnd Bergmann <[email protected]>
Randconfig builds still show a failure for the ath5k driver, similar to the one that was fixed for ath9k earlier:
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]:
- ATH5K [=m] && NETDEVICES [=y] && WLAN [=y] && WLAN_VENDOR_ATH [=y] && (PCI [=y] || ATH25) && MAC80211 [=y]net/mac80211/led.c: In function 'ieee80211_alloc_led_names':net/mac80211/led.c:34:22: error: 'struct led_trigger' has no member named 'name'
34 | local->rx_led.name = kasprintf(GFP_KERNEL, "%srx",
| ^
Copying the same logic from my ath9k patch makes this one work as well, stubbing out the calls to the LED subsystem.
---
Changes in v2:
- avoid link failure when NEW_LEDS is disabled
--- drivers/net/wireless/ath/ath5k/Kconfig | 4 +--- drivers/net/wireless/ath/ath5k/led.c | 10 ++++++---- 2 files changed, 7 insertions(+), 7 deletions(-)
drivers/net/wireless/ath/ath5k/Kconfig +1 -3
@@ -3,9 +3,7 @@ config ATH5K tristate "Atheros 5xxx wireless cards support" depends on (PCI || ATH25) && MAC80211 select ATH_COMMON - select MAC80211_LEDS - select LEDS_CLASS - select NEW_LEDS + select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211 select ATH5K_AHB if ATH25 select ATH5K_PCI if !ATH25 help
drivers/net/wireless/ath/ath5k/led.c +6 -4
@@ -89,7 +89,8 @@ static const struct pci_device_id ath5k_led_devices[] = {void ath5k_led_enable (struct ath5k_hw *ah) { -if (test_bit (ATH_STAT_LEDSOFT , ah->status)) { +if (IS_ENABLED (CONFIG_MAC80211_LEDS ) && +test_bit (ATH_STAT_LEDSOFT , ah->status)) {ath5k_hw_set_gpio_output (ah, ah->led_pin);ath5k_led_off (ah); }
@@ -104,7 +105,8 @@ static void ath5k_led_on(struct ath5k_hw *ah)void ath5k_led_off (struct ath5k_hw *ah) { -if (!test_bit (ATH_STAT_LEDSOFT , ah->status)) +if (!IS_ENABLED (CONFIG_MAC80211_LEDS ) || + !test_bit (ATH_STAT_LEDSOFT , ah->status))return ;ath5k_hw_set_gpio (ah, ah->led_pin, !ah->led_on); }
@@ -146,7 +148,7 @@ ath5k_register_led(struct ath5k_hw *ah, struct ath5k_led *led,static void ath5k_unregister_led (struct ath5k_led *led) { -if (!led->ah) +if (!IS_ENABLED (CONFIG_MAC80211_LEDS ) || !led->ah)return ;led_classdev_unregister (&led->led_dev);ath5k_led_off (led->ah);
@@ -169,7 +171,7 @@ int ath5k_init_leds(struct ath5k_hw *ah)char name[ATH5K_LED_MAX_NAME_LEN +1 ];const struct pci_device_id *match; -if (!ah->pdev) +if (!IS_ENABLED (CONFIG_MAC80211_LEDS ) || !ah->pdev)return 0 ;#ifdef CONFIG_ATH5K_AHB
Signature · 1 line
2.29.2
Quoted 17 lines · Arnd Bergmann
From: Arnd Bergmann <[email protected]>
Randconfig builds still show a failure for the ath5k driver, similar to the one that was fixed for ath9k earlier:
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]:
- ATH5K [=m] && NETDEVICES [=y] && WLAN [=y] &&WLAN_VENDOR_ATH[=y] && (PCI [=y] || ATH25) && MAC80211 [=y]net/mac80211/led.c: In function 'ieee80211_alloc_led_names':net/mac80211/led.c:34:22: error: 'structled_trigger' has no member named 'name'
34 |local->rx_led.name= kasprintf(GFP_KERNEL, "%srx",
| ^Copying the same logic from my ath9k patch makes this one work as well, stubbing out the calls to the LED subsystem.
Quoted 8 lines
Fixes b64acb28da83 ("ath9k: fix build error with LEDS_CLASS=m")Fixes 72cdab808714 ("ath9k: Do not select MAC80211_LEDS by default")Fixes 3a078876caee ("ath5k: convert LED code to use mac80211 triggers")Signed-off-by Arnd Bergmann <[email protected]>---
Changes in v2:
- avoid link failure whenNEW_LEDSis disabled
I'll queue this to v5.15.
Signature · 3 lines
https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Quoted 14 lines · Arnd Bergmann
From: Arnd Bergmann <[email protected]>
Randconfig builds still show a failure for the ath5k driver, similar to the one that was fixed for ath9k earlier:
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]:
- ATH5K [=m] && NETDEVICES [=y] && WLAN [=y] &&WLAN_VENDOR_ATH[=y] && (PCI [=y] || ATH25) && MAC80211 [=y]net/mac80211/led.c: In function 'ieee80211_alloc_led_names':net/mac80211/led.c:34:22: error: 'structled_trigger' has no member named 'name'
34 |local->rx_led.name= kasprintf(GFP_KERNEL, "%srx",
| ^
Quoted 8 lines
Copying the same logic from my ath9k patch makes this one work as well, stubbing out the calls to the LED subsystem.
Fixes b64acb28da83 ("ath9k: fix build error with LEDS_CLASS=m")Fixes 72cdab808714 ("ath9k: Do not select MAC80211_LEDS by default")Fixes 3a078876caee ("ath5k: convert LED code to use mac80211 triggers")Signed-off-by Arnd Bergmann <[email protected]>
Patch applied to wireless-drivers.git, thanks.
fb8c3a3c5240 ath5k: fix building with LEDS=m
Signature · 3 lines
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches