[PATCH] pwm: img: stop using autosuspend on remove

Guangshuo Li posted 1 patch 6 days, 20 hours ago
drivers/pwm/pwm-img.c | 1 +
1 file changed, 1 insertion(+)
[PATCH] pwm: img: stop using autosuspend on remove
Posted by Guangshuo Li 6 days, 20 hours ago
img_pwm_probe() enables runtime PM autosuspend with
pm_runtime_use_autosuspend(). The probe failure path disables
autosuspend again, but the remove path only disables runtime PM.

As a result, the runtime PM autosuspend setting is left enabled after
the driver is unbound.

Call pm_runtime_dont_use_autosuspend() from img_pwm_remove() to undo
the setting established during probe, matching the probe error path
and the runtime PM API requirements.

This issue was found by manual code inspection.

Fixes: e690ae526216 ("pwm: img: Add runtime PM")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
---
 drivers/pwm/pwm-img.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/pwm/pwm-img.c b/drivers/pwm/pwm-img.c
index 91e0b19f0c08..c0747f5e0020 100644
--- a/drivers/pwm/pwm-img.c
+++ b/drivers/pwm/pwm-img.c
@@ -339,6 +339,7 @@ static void img_pwm_remove(struct platform_device *pdev)
 	struct pwm_chip *chip = platform_get_drvdata(pdev);
 
 	pm_runtime_disable(&pdev->dev);
+	pm_runtime_dont_use_autosuspend(&pdev->dev);
 	if (!pm_runtime_status_suspended(&pdev->dev))
 		img_pwm_runtime_suspend(&pdev->dev);
 
-- 
2.43.0