leds: gpio: Set max brightness to 1
authorDylan Van Assche <me@dylanvanassche.be>
Tue, 29 Dec 2020 18:15:12 +0000 (19:15 +0100)
committerPavel Machek <pavel@ucw.cz>
Wed, 3 Feb 2021 14:34:37 +0000 (15:34 +0100)
GPIO LEDs only know 2 states: ON or OFF and do not have PWM capabilities.
However, the max brightness is reported as 255.

This patch sets the max brightness value of a GPIO controlled LED to 1.

Tested on my PinePhone 1.2.

Signed-off-by: Dylan Van Assche <me@dylanvanassche.be>
Signed-off-by: Pavel Machek <pavel@ucw.cz>
drivers/leds/leds-gpio.c

index 93f5b1b60fdec835eec36fd1d7364450e1b0d42b..b5d5e22d2d1ea6ffead4f1a36b274520cbed3408 100644 (file)
@@ -96,7 +96,8 @@ static int create_gpio_led(const struct gpio_led *template,
        } else {
                state = (template->default_state == LEDS_GPIO_DEFSTATE_ON);
        }
-       led_dat->cdev.brightness = state ? LED_FULL : LED_OFF;
+       led_dat->cdev.brightness = state;
+       led_dat->cdev.max_brightness = 1;
        if (!template->retain_state_suspended)
                led_dat->cdev.flags |= LED_CORE_SUSPENDRESUME;
        if (template->panic_indicator)