All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] pwm: lpc18xx-sct: Free resources only after pwmchip_remove()
@ 2021-03-27 21:24 Uwe Kleine-König
  2021-03-31 20:37 ` Vladimir Zapolskiy
  2021-04-09 12:45 ` Thierry Reding
  0 siblings, 2 replies; 4+ messages in thread
From: Uwe Kleine-König @ 2021-03-27 21:24 UTC (permalink / raw)
  To: Thierry Reding, Lee Jones; +Cc: Vladimir Zapolskiy, linux-pwm, kernel

Before pwmchip_remove() returns the PWM is expected to be functional. So
remove the pwmchip before disabling the clock.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 drivers/pwm/pwm-lpc18xx-sct.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/pwm/pwm-lpc18xx-sct.c b/drivers/pwm/pwm-lpc18xx-sct.c
index 3f8e54ec28c6..b643ac61a2e7 100644
--- a/drivers/pwm/pwm-lpc18xx-sct.c
+++ b/drivers/pwm/pwm-lpc18xx-sct.c
@@ -441,13 +441,15 @@ static int lpc18xx_pwm_remove(struct platform_device *pdev)
 	struct lpc18xx_pwm_chip *lpc18xx_pwm = platform_get_drvdata(pdev);
 	u32 val;
 
+	pwmchip_remove(&lpc18xx_pwm->chip);
+
 	val = lpc18xx_pwm_readl(lpc18xx_pwm, LPC18XX_PWM_CTRL);
 	lpc18xx_pwm_writel(lpc18xx_pwm, LPC18XX_PWM_CTRL,
 			   val | LPC18XX_PWM_CTRL_HALT);
 
 	clk_disable_unprepare(lpc18xx_pwm->pwm_clk);
 
-	return pwmchip_remove(&lpc18xx_pwm->chip);
+	return 0;
 }
 
 static struct platform_driver lpc18xx_pwm_driver = {
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-04-09 12:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-27 21:24 [PATCH] pwm: lpc18xx-sct: Free resources only after pwmchip_remove() Uwe Kleine-König
2021-03-31 20:37 ` Vladimir Zapolskiy
2021-04-05 20:16   ` Uwe Kleine-König
2021-04-09 12:45 ` Thierry Reding

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.