pwm: bcm2835: Remove duplicate call to clk_rate_exclusive_put()
authorSean Young <sean@mess.org>
Fri, 22 Dec 2023 13:13:11 +0000 (13:13 +0000)
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Fri, 12 Jan 2024 16:51:36 +0000 (17:51 +0100)
devm_add_action_or_reset() already calls the action in the error case.

Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Closes: https://lore.kernel.org/linux-pwm/fuku3b5ur6y4k4refd3vmeoenzjo6mwe3b3gtel34rhhhtvnsa@w4uktgbqsc3w/
Fixes: fcc760729359 ("pwm: bcm2835: Allow PWM driver to be used in atomic context")
Signed-off-by: Sean Young <sean@mess.org>
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Link: https://lore.kernel.org/r/20231222131312.174491-1-sean@mess.org
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
drivers/pwm/pwm-bcm2835.c

index 307c0bd..283cf27 100644 (file)
@@ -160,10 +160,8 @@ static int bcm2835_pwm_probe(struct platform_device *pdev)
 
        ret = devm_add_action_or_reset(&pdev->dev, devm_clk_rate_exclusive_put,
                                       pc->clk);
-       if (ret) {
-               clk_rate_exclusive_put(pc->clk);
+       if (ret)
                return ret;
-       }
 
        pc->rate = clk_get_rate(pc->clk);
        if (!pc->rate)