Re: [PATCH v3] wireless: carl9170: fix LEDS build errors & warnings

From: Randy Dunlap
Date: Sun May 30 2021 - 10:32:19 EST


On 5/30/21 2:31 AM, Christian Lamparter wrote:
> On 30/05/2021 05:11, Randy Dunlap wrote:
>> kernel test robot reports over 200 build errors and warnings
>> that are due to this Kconfig problem when CARL9170=m,
>> MAC80211=y, and LEDS_CLASS=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]:
>>    - CARL9170_LEDS [=y] && NETDEVICES [=y] && WLAN [=y] && WLAN_VENDOR_ATH [=y] && CARL9170 [=m]
>>
>> CARL9170_LEDS selects MAC80211_LEDS even though its kconfig
>> dependencies are not met. This happens because 'select' does not follow
>> any Kconfig dependency chains.
>>
>> Fix this by making CARL9170_LEDS depend on MAC80211_LEDS, where
>> the latter supplies any needed dependencies on LEDS_CLASS.
>
> Ok, this is not what I was expecting... I though you would just
> add a "depends on / imply MAC80211_LEDS" on your v2. (this was
> based on the assumption of what mac80211,  ath9k/_htc and mt76
> solutions of the same problem looked like).

Do you want the user choice/prompt removed, like MT76 is?

> But since (I assuming here) this patch passed the build-bots
> testing with flying colors in the different config permutations.

It hasn't passed any build-bots testing that I know of.
I did 8 combinations of kconfigs (well, 2 of them were invalid),
but they all passed my own build testing.

> Acked-by: Christian Lamparter <chunkeey@xxxxxxxxx>
>
>> Fixes: 1d7e1e6b1b8ed ("carl9170: Makefile, Kconfig files and MAINTAINERS")
>> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>> Cc: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
>> Cc: Christian Lamparter <chunkeey@xxxxxxxxx>
>> Cc: linux-wireless@xxxxxxxxxxxxxxx
>> Cc: Arnd Bergmann <arnd@xxxxxxxx>
>> Suggested-by: Christian Lamparter <chunkeey@xxxxxxxxx>
>> ---
>> v2: modify as suggesed by Arnd
>> v3: modify as suggested by Christian
>>
>>   drivers/net/wireless/ath/carl9170/Kconfig |    8 +++-----
>>   1 file changed, 3 insertions(+), 5 deletions(-)
>>
>> --- linux-next-20210528.orig/drivers/net/wireless/ath/carl9170/Kconfig
>> +++ linux-next-20210528/drivers/net/wireless/ath/carl9170/Kconfig
>> @@ -16,13 +16,11 @@ config CARL9170
>>     config CARL9170_LEDS
>>       bool "SoftLED Support"
>> -    depends on CARL9170
>> -    select MAC80211_LEDS
>> -    select LEDS_CLASS
>> -    select NEW_LEDS
>>       default y
>> +    depends on CARL9170
>> +    depends on MAC80211_LEDS
>>       help
>> -      This option is necessary, if you want your device' LEDs to blink
>> +      This option is necessary, if you want your device's LEDs to blink.
>>           Say Y, unless you need the LEDs for firmware debugging.
>

thanks.
--
~Randy