]> git.baikalelectronics.ru Git - kernel.git/commit
pwm: lpss: Avoid reconfiguring while UPDATE bit is still enabled
authorIlkka Koskinen <ilkka.koskinen@intel.com>
Sat, 28 Jan 2017 15:10:42 +0000 (17:10 +0200)
committerThierry Reding <thierry.reding@gmail.com>
Mon, 30 Jan 2017 07:15:12 +0000 (08:15 +0100)
commit6eb50eb5b1b0609206ffd7c4dfcf13831940642b
tree8788ae33cdd8ed448435a6cc165baf37d22a3775
parent613b8d4bac806a9875abaf3234a03583fa1af42f
pwm: lpss: Avoid reconfiguring while UPDATE bit is still enabled

PWM Configuration register has SW_UPDATE bit that is set when a new
configuration is written to the register. The bit is automatically
cleared at the start of the next output cycle by the IP block.

If one writes a new configuration to the register while it still has
the bit enabled, PWM may freeze. That is, while one can still write
to the register, it won't have an effect. Thus, we try to sleep long
enough that the bit gets cleared and make sure the bit is not
enabled while we update the configuration.

Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Tested-by: Richard Griffiths <richard.a.griffiths@intel.com>
Signed-off-by: Ilkka Koskinen <ilkka.koskinen@intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
drivers/pwm/pwm-lpss.c