]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
phy: freescale: fsl-samsung-hdmi: Use helper function devm_clk_get_enabled()
authorPei Xiao <xiaopei01@kylinos.cn>
Sat, 8 Feb 2025 03:44:01 +0000 (11:44 +0800)
committerVinod Koul <vkoul@kernel.org>
Thu, 13 Feb 2025 17:57:27 +0000 (23:27 +0530)
Since commit 7ef9651e9792 ("clk: Provide new devm_clk helpers for prepared
and enabled clocks"), devm_clk_get() and clk_prepare_enable() can now be
replaced by devm_clk_get_enabled() when driver enables the clocks for the
whole lifetime of the device. Moreover, it is no longer necessary to
unprepare and disable the clocks explicitly.

Signed-off-by: Pei Xiao <xiaopei01@kylinos.cn>
Link: https://lore.kernel.org/r/tencent_9087BCE04E38E6AA5C4B2252B82FA99C2009@qq.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/freescale/phy-fsl-samsung-hdmi.c

index 45004f598e4dc9c9d3b202872eb5b435810e181f..f0f2ed414db563c6f8eb09ed1a49ec40cad5ad3c 100644 (file)
@@ -659,7 +659,7 @@ static int fsl_samsung_hdmi_phy_probe(struct platform_device *pdev)
        if (IS_ERR(phy->regs))
                return PTR_ERR(phy->regs);
 
-       phy->apbclk = devm_clk_get(phy->dev, "apb");
+       phy->apbclk = devm_clk_get_enabled(phy->dev, "apb");
        if (IS_ERR(phy->apbclk))
                return dev_err_probe(phy->dev, PTR_ERR(phy->apbclk),
                                     "failed to get apb clk\n");
@@ -669,12 +669,6 @@ static int fsl_samsung_hdmi_phy_probe(struct platform_device *pdev)
                return dev_err_probe(phy->dev, PTR_ERR(phy->refclk),
                                     "failed to get ref clk\n");
 
-       ret = clk_prepare_enable(phy->apbclk);
-       if (ret) {
-               dev_err(phy->dev, "failed to enable apbclk\n");
-               return ret;
-       }
-
        pm_runtime_get_noresume(phy->dev);
        pm_runtime_set_active(phy->dev);
        pm_runtime_enable(phy->dev);
@@ -690,8 +684,6 @@ static int fsl_samsung_hdmi_phy_probe(struct platform_device *pdev)
        return 0;
 
 register_clk_failed:
-       clk_disable_unprepare(phy->apbclk);
-
        return ret;
 }