Re: [PATCH 2/2] backlight: pwm_bl: Don't disable the PWM to disable the backlight
From: Daniel Thompson <hidden>
Date: 2023-01-10 16:26:20
Also in:
dri-devel, linux-pwm
From: Daniel Thompson <hidden>
Date: 2023-01-10 16:26:20
Also in:
dri-devel, linux-pwm
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 <redacted> --- 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