Replace -ENOTSUPP by -EOPNOTSUPP when returning from exported function. Fixes: 13ae79bbe4c2 ("leds: core: Drivers shouldn't enforce SYNC/ASYNC brightness setting") Cc: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx> Signed-off-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> --- drivers/leds/led-core.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/leds/led-core.c b/drivers/leds/led-core.c index d56ff4939492..f962620a504f 100644 --- a/drivers/leds/led-core.c +++ b/drivers/leds/led-core.c @@ -289,6 +289,8 @@ EXPORT_SYMBOL_GPL(led_set_brightness_nosleep); int led_set_brightness_sync(struct led_classdev *led_cdev, unsigned int value) { + int ret; + if (led_cdev->blink_delay_on || led_cdev->blink_delay_off) return -EBUSY; @@ -297,7 +299,10 @@ int led_set_brightness_sync(struct led_classdev *led_cdev, unsigned int value) if (led_cdev->flags & LED_SUSPENDED) return 0; - return __led_set_brightness_blocking(led_cdev, led_cdev->brightness); + ret = __led_set_brightness_blocking(led_cdev, led_cdev->brightness); + if (ret == -ENOTSUPP) + return -EOPNOTSUPP; + return ret; } EXPORT_SYMBOL_GPL(led_set_brightness_sync); -- 2.31.1