OSDN Git Service

HID: lenovo: Use brightness_set_blocking callback for setting LEDs brightness
authorHans de Goede <hdegoede@redhat.com>
Sun, 4 Apr 2021 08:04:24 +0000 (10:04 +0200)
committerJiri Kosina <jkosina@suse.cz>
Wed, 7 Apr 2021 10:48:19 +0000 (12:48 +0200)
commitbbf62645255f120bc2e7488c237e3f04da42ec70
tree05a9cc3431f538730a998e533af237c0e69be82e
parent69aea9d2843669387d100e353b5113d1adc9502f
HID: lenovo: Use brightness_set_blocking callback for setting LEDs brightness

The lenovo_led_brightness_set function may sleep, so we should have the
the led_class_dev's brightness_set_blocking callback point to it, rather
then the regular brightness_set callback.

When toggled through sysfs this is not a problem, but the brightness_set
callback may be called from atomic context when using LED-triggers.

Fixes: bc04b37ea0ec ("HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard support")
Reviewed-by: Marek BehĂșn <kabel@kernel.org>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-lenovo.c