On Mon, Jan 09, 2023 at 09:47:58PM +0100, Uwe Kleine-König wrote: > Most but not all PWMs drive the PWM pin to its inactive state when > disabled. Rely on the lowlevel PWM implementation to implement > duty_cycle = 0 in an energy efficient way and don't disable the PWM. I'm a little worried about this one. I thought the PWM APIs allow the duty cycle to be rounded up or down slightly during the apply. So when you say "rely on the lowlevel to implement duty_cycle = 0 to..." is it confirmed that this is true (and that all PWMs *can* implement a duty_cycle of 0 without rounding up)? Daniel. > This fixes backlight disabling e.g. on i.MX6 when an inverted PWM is > used. > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> > --- > drivers/video/backlight/pwm_bl.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/video/backlight/pwm_bl.c b/drivers/video/backlight/pwm_bl.c > index 0509fecd5715..7bdc5d570a12 100644 > --- a/drivers/video/backlight/pwm_bl.c > +++ b/drivers/video/backlight/pwm_bl.c > @@ -109,7 +109,7 @@ static int pwm_backlight_update_status(struct backlight_device *bl) > pwm_backlight_power_off(pb); > > pwm_get_state(pb->pwm, &state); > - state.enabled = false; > + state.enabled = true; > state.duty_cycle = 0; > pwm_apply_state(pb->pwm, &state); > } > -- > 2.39.0 >