Re: [PATCH 5/8] tty: mps2-uart: Use devm_clk_get_enabled() helpers

Andy Shevchenko
2024-08-22T13:19:43Z

On Thu, Aug 22, 2024 at 11:39:09AM +0800, Lei Liu wrote:
> The devm_clk_get_enabled() helpers:
> - call devm_clk_get()
> - call clk_prepare_enable() and register what is needed in order to
> call clk_disable_unprepare() when needed, as a managed resource.
>
> This simplifies the code and avoids calls to clk_disable_unprepare().

...

> - mps_port->clk = devm_clk_get(&pdev->dev, NULL);
> + mps_port->clk = devm_clk_get_enabled(&pdev->dev, NULL);
> if (IS_ERR(mps_port->clk))
> return PTR_ERR(mps_port->clk);
>
> - ret = clk_prepare_enable(mps_port->clk);
> - if (ret)
> - return ret;
> -
> mps_port->port.uartclk = clk_get_rate(mps_port->clk);
>
> - clk_disable_unprepare(mps_port->clk);

Your change is not equivalent. In case this clock is shared this may lead to
run-time issues. Hence I don't think this patch is needed in this case.
Instead, you may add a comment on top of devm_clk_get() to explain that we only
need it be enabled to get clock rate in the probe.

--
With Best Regards,
Andy Shevchenko