Merge tag 'stm32-dt-for-v5.14-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / drivers / pwm / pwm-tegra.c
index c529a17..11a10b5 100644 (file)
@@ -300,32 +300,12 @@ static int tegra_pwm_probe(struct platform_device *pdev)
 static int tegra_pwm_remove(struct platform_device *pdev)
 {
        struct tegra_pwm_chip *pc = platform_get_drvdata(pdev);
-       unsigned int i;
-       int err;
-
-       if (WARN_ON(!pc))
-               return -ENODEV;
-
-       err = clk_prepare_enable(pc->clk);
-       if (err < 0)
-               return err;
-
-       for (i = 0; i < pc->chip.npwm; i++) {
-               struct pwm_device *pwm = &pc->chip.pwms[i];
-
-               if (!pwm_is_enabled(pwm))
-                       if (clk_prepare_enable(pc->clk) < 0)
-                               continue;
 
-               pwm_writel(pc, i, 0);
-
-               clk_disable_unprepare(pc->clk);
-       }
+       pwmchip_remove(&pc->chip);
 
        reset_control_assert(pc->rst);
-       clk_disable_unprepare(pc->clk);
 
-       return pwmchip_remove(&pc->chip);
+       return 0;
 }
 
 #ifdef CONFIG_PM_SLEEP