pwm: lpss: Don't modify HW state in .remove callback
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Wed, 7 Apr 2021 08:01:53 +0000 (10:01 +0200)
committerThierry Reding <thierry.reding@gmail.com>
Fri, 9 Apr 2021 13:21:18 +0000 (15:21 +0200)
A consumer is expected to disable a PWM before calling pwm_put(). And if
they didn't there is hopefully a good reason (or the consumer needs
fixing). Also if disabling an enabled PWM was the right thing to do,
this should better be done in the framework instead of in each low level
driver.

So drop the hardware modification from the .remove() callback.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
drivers/pwm/pwm-lpss.c

index 9ea6a176cbe5b69416968209b5eb05c0b7898422..58b4031524af7f89c30ecb3b3caa56d27af608f8 100644 (file)
@@ -254,12 +254,6 @@ 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);