Re: [PATCH] leds: pwm-multicolor: fix multicolor PWM LED lights up without any setting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 16 Aug 2024, FUKAUMI Naoki wrote:

> from drivers/leds/leds-pwm.c:led_pwm_set(),
> 
> /*
>  * Disabling a PWM doesn't guarantee that it emits the inactive level.
>  * So keep it on. Only for suspending the PWM should be disabled because
>  * otherwise it refuses to suspend. The possible downside is that the
>  * LED might stay (or even go) on.
>  */
> 
> do the same in led_pwm_mc_set().
> 
> this fixes LEDs light up without any setting (i.e. brightness is 0) on
> Radxa E25.

Please redraft the commit message into proper sentences, complete with
correct grammar.  All sentences should start with an uppercase char.

Copying comment-blocks into commit messages to save authors from writing
one isn't really the done thing.

> Signed-off-by: FUKAUMI Naoki <naoki@xxxxxxxxx>
> ---
>  drivers/leds/rgb/leds-pwm-multicolor.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/leds/rgb/leds-pwm-multicolor.c b/drivers/leds/rgb/leds-pwm-multicolor.c
> index e1a81e0109e8..7155339c075e 100644
> --- a/drivers/leds/rgb/leds-pwm-multicolor.c
> +++ b/drivers/leds/rgb/leds-pwm-multicolor.c
> @@ -50,7 +50,7 @@ static int led_pwm_mc_set(struct led_classdev *cdev,
>  			duty = priv->leds[i].state.period - duty;
>  
>  		priv->leds[i].state.duty_cycle = duty;
> -		priv->leds[i].state.enabled = duty > 0;
> +		priv->leds[i].state.enabled = !(cdev->flags & LED_SUSPENDED);
>  		ret = pwm_apply_might_sleep(priv->leds[i].pwm,
>  					    &priv->leds[i].state);
>  		if (ret)
> -- 
> 2.43.0
> 

-- 
Lee Jones [李琼斯]




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux