The driver neither sleeps nor uses delays in its brightness_set op. Use a new brightness_set_nonblocking op instead of brightness_set for setting brightness then. Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx> Cc: Kristian Kielhofner <kris@xxxxxxxxx> --- drivers/leds/leds-wrap.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/leds/leds-wrap.c b/drivers/leds/leds-wrap.c index 1ba3def..aea72e2 100644 --- a/drivers/leds/leds-wrap.c +++ b/drivers/leds/leds-wrap.c @@ -54,22 +54,22 @@ static void wrap_extra_led_set(struct led_classdev *led_cdev, } static struct led_classdev wrap_power_led = { - .name = "wrap::power", - .brightness_set = wrap_power_led_set, - .default_trigger = "default-on", - .flags = LED_CORE_SUSPENDRESUME, + .name = "wrap::power", + .brightness_set_nonblocking = wrap_power_led_set, + .default_trigger = "default-on", + .flags = LED_CORE_SUSPENDRESUME, }; static struct led_classdev wrap_error_led = { - .name = "wrap::error", - .brightness_set = wrap_error_led_set, - .flags = LED_CORE_SUSPENDRESUME, + .name = "wrap::error", + .brightness_set_nonblocking = wrap_error_led_set, + .flags = LED_CORE_SUSPENDRESUME, }; static struct led_classdev wrap_extra_led = { - .name = "wrap::extra", - .brightness_set = wrap_extra_led_set, - .flags = LED_CORE_SUSPENDRESUME, + .name = "wrap::extra", + .brightness_set_nonblocking = wrap_extra_led_set, + .flags = LED_CORE_SUSPENDRESUME, }; static int wrap_led_probe(struct platform_device *pdev) -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-leds" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html