From: Thierry Reding Date: Fri, 9 Jun 2023 14:42:25 +0000 (+0200) Subject: soc/tegra: pmc: Use devm_clk_notifier_register() X-Git-Tag: v6.6.17~4532^2~13^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c954cd7ad041251d903707c463a2c4d6cc30e5ae;p=platform%2Fkernel%2Flinux-rpi.git soc/tegra: pmc: Use devm_clk_notifier_register() Move to the device-managed version of clk_notifier_register() to remove the need for manual cleanup. This fixes a potential issue where the clock notifier would stick around after the driver fails to probe at a later point. Reviewed-by: Jon Hunter Signed-off-by: Thierry Reding --- diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index 438c30c..162f524 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -2992,7 +2992,8 @@ static int tegra_pmc_probe(struct platform_device *pdev) */ if (pmc->clk) { pmc->clk_nb.notifier_call = tegra_pmc_clk_notify_cb; - err = clk_notifier_register(pmc->clk, &pmc->clk_nb); + err = devm_clk_notifier_register(&pdev->dev, pmc->clk, + &pmc->clk_nb); if (err) { dev_err(&pdev->dev, "failed to register clk notifier\n"); @@ -3052,7 +3053,6 @@ cleanup_powergates: cleanup_sysfs: device_remove_file(&pdev->dev, &dev_attr_reset_reason); device_remove_file(&pdev->dev, &dev_attr_reset_level); - clk_notifier_unregister(pmc->clk, &pmc->clk_nb); return err; }