diff mbox series

wireless: carl9170: fix LEDS build errors & warnings

Message ID 20210529071523.2044-1-rdunlap@infradead.org (mailing list archive)
State Changes Requested
Delegated to: Kalle Valo
Headers show
Series wireless: carl9170: fix LEDS build errors & warnings | expand

Commit Message

Randy Dunlap May 29, 2021, 7:15 a.m. UTC
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 the select depend on LEDS_CLASS=y or
LEDS_CLASS=MAC80211, just as this is done for ath9k.

Fixes: 1d7e1e6b1b8ed ("carl9170: Makefile, Kconfig files and MAINTAINERS")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: kernel test robot <lkp@intel.com>
Cc: Kalle Valo <kvalo@codeaurora.org>
Cc: Christian Lamparter <chunkeey@googlemail.com>
Cc: linux-wireless@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>
---
 drivers/net/wireless/ath/carl9170/Kconfig |    4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Arnd Bergmann May 29, 2021, 12:10 p.m. UTC | #1
On Sat, May 29, 2021 at 9:16 AM Randy Dunlap <rdunlap@infradead.org> 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.

I think this avoids the build problems, but it's not really logical:

> --- linux-next-20210528.orig/drivers/net/wireless/ath/carl9170/Kconfig
> +++ linux-next-20210528/drivers/net/wireless/ath/carl9170/Kconfig
> @@ -17,9 +17,7 @@ config CARL9170
>  config CARL9170_LEDS
>         bool "SoftLED Support"
>         depends on CARL9170
> -       select MAC80211_LEDS
> -       select LEDS_CLASS
> -       select NEW_LEDS
> +       select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
>         default y
>         help
>           This option is necessary, if you want your device' LEDs to blink

The point of the option is to enable LED support, but now it doesn't do that
when LEDS_CLASS is a loadable module and MAC80211 is built-in.

I think a more sensible solution would be to follow the example of

config MT76_LEDS
        bool
        depends on MT76_CORE
        depends on LEDS_CLASS=y || MT76_CORE=LEDS_CLASS
        default y

    Arnd
Randy Dunlap May 29, 2021, 4:42 p.m. UTC | #2
On 5/29/21 5:10 AM, Arnd Bergmann wrote:
> On Sat, May 29, 2021 at 9:16 AM Randy Dunlap <rdunlap@infradead.org> 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.
> 
> I think this avoids the build problems, but it's not really logical:
> 
>> --- linux-next-20210528.orig/drivers/net/wireless/ath/carl9170/Kconfig
>> +++ linux-next-20210528/drivers/net/wireless/ath/carl9170/Kconfig
>> @@ -17,9 +17,7 @@ config CARL9170
>>  config CARL9170_LEDS
>>         bool "SoftLED Support"
>>         depends on CARL9170
>> -       select MAC80211_LEDS
>> -       select LEDS_CLASS
>> -       select NEW_LEDS
>> +       select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
>>         default y
>>         help
>>           This option is necessary, if you want your device' LEDs to blink
> 
> The point of the option is to enable LED support, but now it doesn't do that
> when LEDS_CLASS is a loadable module and MAC80211 is built-in.
> 
> I think a more sensible solution would be to follow the example of
> 
> config MT76_LEDS
>         bool
>         depends on MT76_CORE
>         depends on LEDS_CLASS=y || MT76_CORE=LEDS_CLASS
>         default y

Looks good. I'll send a v2.

thanks.
diff mbox series

Patch

--- linux-next-20210528.orig/drivers/net/wireless/ath/carl9170/Kconfig
+++ linux-next-20210528/drivers/net/wireless/ath/carl9170/Kconfig
@@ -17,9 +17,7 @@  config CARL9170
 config CARL9170_LEDS
 	bool "SoftLED Support"
 	depends on CARL9170
-	select MAC80211_LEDS
-	select LEDS_CLASS
-	select NEW_LEDS
+	select MAC80211_LEDS if LEDS_CLASS=y || LEDS_CLASS=MAC80211
 	default y
 	help
 	  This option is necessary, if you want your device' LEDs to blink