mirror of
https://github.com/a52xq-dev/kernel.git
synced 2026-10-18 21:58:11 +07:00
pwm: lpss: Release runtime-pm reference from the driver's remove callback
[ Upstream commit 42885551cedb45961879d2fc3dc3c4dc545cc23e ]
For each pwm output which gets enabled through pwm_lpss_apply(), we do a
pm_runtime_get_sync().
This commit adds pm_runtime_put() calls to pwm_lpss_remove() to balance
these when the driver gets removed with some of the outputs still enabled.
Fixes: f080be27d7 ("pwm: lpss: Add support for runtime PM")
Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
d2c06876e7
commit
0b63a86ea9
1 changed files with 6 additions and 0 deletions
|
|
@ -216,6 +216,12 @@ EXPORT_SYMBOL_GPL(pwm_lpss_probe);
|
|||
|
||||
int pwm_lpss_remove(struct pwm_lpss_chip *lpwm)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < lpwm->info->npwm; i++) {
|
||||
if (pwm_is_enabled(&lpwm->chip.pwms[i]))
|
||||
pm_runtime_put(lpwm->chip.dev);
|
||||
}
|
||||
return pwmchip_remove(&lpwm->chip);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(pwm_lpss_remove);
|
||||
|
|
|
|||
Loading…
Reference in a new issue