Search Linux Wireless

Re: [PATCH] iwlwifi: select MAC80211_LEDS conditionally

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 6/24/21 18:41, Kalle Valo wrote:
> Liwei Song <liwei.song@xxxxxxxxxxxxx> writes:
> 
>> MAC80211_LEDS depends on LEDS_CLASS=y or LEDS_CLASS=MAC80211,
>> add condition to enable it in iwlwifi/Kconfig to avoid below
>> compile warning when LEDS_CLASS was set to m:
>>
>> 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]:
>>   - 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])
>>
>> Signed-off-by: Liwei Song <liwei.song@xxxxxxxxxxxxx>
> 
> Is this is a new regression or an old bug? What commit caused this?

It should be exist when the below commit change the dependency of MAC80211_LEDS
to fix some build error:

commit b64acb28da8394485f0762e657470c9fc33aca4d
Author: Arnd Bergmann <arnd@xxxxxxxx>
Date:   Mon Jan 25 12:36:42 2021 +0100

    ath9k: fix build error with LEDS_CLASS=m
    
    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>
    Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20210125113654.2408057-1-arnd@xxxxxxxxxx

diff --git a/net/mac80211/Kconfig b/net/mac80211/Kconfig
index cd9a9bd242ba..51ec8256b7fa 100644
--- a/net/mac80211/Kconfig
+++ b/net/mac80211/Kconfig
@@ -69,7 +69,7 @@ config MAC80211_MESH
 config MAC80211_LEDS
        bool "Enable LED triggers"
        depends on MAC80211
-       depends on LEDS_CLASS
+       depends on LEDS_CLASS=y || LEDS_CLASS=MAC80211


Thanks,
Liwei.


> 



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux