| From 14a0b06fa332bdba2591cfe2d648ba28fa9b6b80 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 28 Apr 2021 11:05:24 +0200 |
| Subject: pwm: spear: Don't modify HW state in .remove callback |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
| |
| [ Upstream commit b601a18f12383001e7a8da238de7ca1559ebc450 ] |
| |
| 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> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/pwm/pwm-spear.c | 4 ---- |
| 1 file changed, 4 deletions(-) |
| |
| diff --git a/drivers/pwm/pwm-spear.c b/drivers/pwm/pwm-spear.c |
| index f63b54aae1b4..7467e03d2fb5 100644 |
| --- a/drivers/pwm/pwm-spear.c |
| +++ b/drivers/pwm/pwm-spear.c |
| @@ -229,10 +229,6 @@ static int spear_pwm_probe(struct platform_device *pdev) |
| static int spear_pwm_remove(struct platform_device *pdev) |
| { |
| struct spear_pwm_chip *pc = platform_get_drvdata(pdev); |
| - int i; |
| - |
| - for (i = 0; i < NUM_PWM; i++) |
| - pwm_disable(&pc->chip.pwms[i]); |
| |
| /* clk was prepared in probe, hence unprepare it here */ |
| clk_unprepare(pc->clk); |
| -- |
| 2.30.2 |
| |