mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Mark Pearson" <mpearson-lenovo@squebb.ca>
To: "Arnd Bergmann" <arnd@kernel.org>,
	"Jiri Kosina" <jikos@kernel.org>,
	"Benjamin Tissoires" <bentiss@kernel.org>,
	"Derek J . Clark" <derekjohn.clark@gmail.com>,
	"Limonciello, Mario" <mario.limonciello@amd.com>,
	"Ethan Tidmore" <ethantidmore06@gmail.com>
Cc: "Arnd Bergmann" <arnd@arndb.de>,
	"Aditya Garg" <gargaditya08@live.com>,
	"Jonathan Denose" <jdenose@google.com>,
	"Geert Uytterhoeven" <geert+renesas@glider.be>,
	linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] HID: hid-lenovo-go: fix LEDS dependencies
Date: Wed, 25 Mar 2026 10:46:33 -0400	[thread overview]
Message-ID: <eabb24a2-6703-4613-bc3e-62e3fdd6155c@app.fastmail.com> (raw)
In-Reply-To: <20260324192045.2895560-1-arnd@kernel.org>


On Tue, Mar 24, 2026, at 3:20 PM, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> The newly added hid-lenovo-go and hid-lenovo-go-s drivers attempt to
> 'select LEDS_CLASS', which has a dependency on NEW_LEDS, causing a build
> failure when NEW_LEDS itself it disabled:
>
> WARNING: unmet direct dependencies detected for LEDS_CLASS
>   Depends on [n]: NEW_LEDS [=n]
>   Selected by [m]:
>   - HID_LENOVO_GO [=m] && HID_SUPPORT [=y] && HID [=m] && USB_HID [=m]
>   - HID_LENOVO_GO_S [=m] && HID_SUPPORT [=y] && HID [=m] && USB_HID [=m]
>
> WARNING: unmet direct dependencies detected for LEDS_CLASS_MULTICOLOR
>   Depends on [n]: NEW_LEDS [=n] && LEDS_CLASS [=m]
>   Selected by [m]:
>   - HID_LENOVO_GO [=m] && HID_SUPPORT [=y] && HID [=m] && USB_HID [=m]
>   - HID_LENOVO_GO_S [=m] && HID_SUPPORT [=y] && HID [=m] && USB_HID [=m]
> ERROR: modpost: "led_set_brightness_nopm" [drivers/leds/led-class.ko] 
> undefined!
> ERROR: modpost: "led_set_brightness" [drivers/leds/led-class.ko] 
> undefined!
> ERROR: modpost: "led_get_color_name" 
> [drivers/leds/led-class-multicolor.ko] undefined!
> ERROR: modpost: "led_set_brightness" 
> [drivers/leds/led-class-multicolor.ko] undefined!
>
> Device drivers generally should not select other subsystems like this, as
> that tends to cause dependency problems including loops in the dependency
> graph.
>
> Change these two and the older hid-lenovo driver to behave the same way 
> as all
> other HID drivers and use 'depends on LEDS_CLASS' or 'depends on 
> LEDS_CLASS_MULTICOLOR'
> instead, which itself has NEW_LEDS and LEDS_CLASS as dependencies.
>
> Fixes: a23f3497bf20 ("HID: hid-lenovo-go-s: Add Lenovo Legion Go S 
> Series HID Driver")
> Fixes: d69ccfcbc955 ("HID: hid-lenovo-go: Add Lenovo Legion Go Series 
> HID Driver")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  drivers/hid/Kconfig | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
> index 10c12d8e6557..f658ed0168ea 100644
> --- a/drivers/hid/Kconfig
> +++ b/drivers/hid/Kconfig
> @@ -610,8 +610,7 @@ config HID_LED
> 
>  config HID_LENOVO
>  	tristate "Lenovo / Thinkpad devices"
> -	select NEW_LEDS
> -	select LEDS_CLASS
> +	depends on LEDS_CLASS
>  	help
>  	Support for IBM/Lenovo devices that are not fully compliant with HID standard.
> 
> @@ -626,8 +625,7 @@ config HID_LENOVO
>  config HID_LENOVO_GO
>  	tristate "HID Driver for Lenovo Legion Go Series Controllers"
>  	depends on USB_HID
> -	select LEDS_CLASS
> -	select LEDS_CLASS_MULTICOLOR
> +	depends on LEDS_CLASS_MULTICOLOR
>  	help
>  	Support for Lenovo Legion Go devices with detachable controllers.
> 
> @@ -638,8 +636,7 @@ config HID_LENOVO_GO
>  config HID_LENOVO_GO_S
>  	tristate "HID Driver for Lenovo Legion Go S Controller"
>  	depends on USB_HID
> -	select LEDS_CLASS
> -	select LEDS_CLASS_MULTICOLOR
> +	depends on LEDS_CLASS_MULTICOLOR
>  	help
>  	Support for Lenovo Legion Go S Handheld Console Controller.
> 
> -- 
> 2.39.5

Looks good to me.
Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>

Mark

  reply	other threads:[~2026-03-25 14:46 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-24 19:20 Arnd Bergmann
2026-03-25 14:46 ` Mark Pearson [this message]
2026-03-27 10:55 ` Jiri Kosina

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=eabb24a2-6703-4613-bc3e-62e3fdd6155c@app.fastmail.com \
    --to=mpearson-lenovo@squebb.ca \
    --cc=arnd@arndb.de \
    --cc=arnd@kernel.org \
    --cc=bentiss@kernel.org \
    --cc=derekjohn.clark@gmail.com \
    --cc=ethantidmore06@gmail.com \
    --cc=gargaditya08@live.com \
    --cc=geert+renesas@glider.be \
    --cc=jdenose@google.com \
    --cc=jikos@kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®