On Sun, 12 Nov 2023, Stuart Hayhurst wrote: > max_brightness would be used in ideapad_kbd_bl_brightness_get() before it was > set, causing ideapad_kbd_bl_brightness_get() to return -EINVAL sometimes ... is used ... is set ... > Signed-off-by: Stuart Hayhurst <stuart.a.hayhurst@xxxxxxxxx> This lacks Fixes: + stable cc tags. The code change seems fine. -- i. > --- > drivers/platform/x86/ideapad-laptop.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c > index ac037540acfc..88eefccb6ed2 100644 > --- a/drivers/platform/x86/ideapad-laptop.c > +++ b/drivers/platform/x86/ideapad-laptop.c > @@ -1425,18 +1425,17 @@ static int ideapad_kbd_bl_init(struct ideapad_private *priv) > if (WARN_ON(priv->kbd_bl.initialized)) > return -EEXIST; > > - brightness = ideapad_kbd_bl_brightness_get(priv); > - if (brightness < 0) > - return brightness; > - > - priv->kbd_bl.last_brightness = brightness; > - > if (ideapad_kbd_bl_check_tristate(priv->kbd_bl.type)) { > priv->kbd_bl.led.max_brightness = 2; > } else { > priv->kbd_bl.led.max_brightness = 1; > } > > + brightness = ideapad_kbd_bl_brightness_get(priv); > + if (brightness < 0) > + return brightness; > + > + priv->kbd_bl.last_brightness = brightness; > priv->kbd_bl.led.name = "platform::" LED_FUNCTION_KBD_BACKLIGHT; > priv->kbd_bl.led.brightness_get = ideapad_kbd_bl_led_cdev_brightness_get; > priv->kbd_bl.led.brightness_set_blocking = ideapad_kbd_bl_led_cdev_brightness_set; >