[PATCHv2 2/2] PWM: atmel: fix incorrect CDTY value after disabling
Thierry Reding
thierry.reding at gmail.com
Fri Jun 12 02:17:48 PDT 2015
On Mon, May 25, 2015 at 06:11:49PM +0200, Alexandre Belloni wrote:
> pwm-leds calls .config() and .disable() in a row. This exhibits that it may
> happen that the channel gets disabled before CDTY has been updated with CUPD.
> The issue gets quite worse with long periods.
> So, ensure that at least one period has past before disabling the channel by
> polling ISR.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni at free-electrons.com>
> ---
> I had the previous patch tested on a multicolor LED and unfortunately, the delay
> is not nice in that case. I wanted to avoid a mutex.
> This version uses a variable to store the state of the update of the pwm. This
> is reset everytime is gets a new configuration and updated when it is disabled
> or another pwm is configured.
> When disabling a multicolor LED, we only wait for the first pwm to update then
> we remember that we already seen the other one having their period expire and it
> looks much better.
>
> drivers/pwm/pwm-atmel.c | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
Applied, thanks.
Thierry
More information about the linux-arm-kernel
mailing list