[Freedreno] [PATCH 4/6] drm/msm/hdmi: make hdmi_phy_8960 OF clk provider
Konrad Dybcio
konrad.dybcio at linaro.org
Thu Jan 19 14:01:55 UTC 2023
On 19.01.2023 14:22, Dmitry Baryshkov wrote:
> On MSM8960 the HDMI PHY provides the PLL clock to the MMCC. As we are
> preparing to convert the MSM8960 to use DT clocks properties (rather
> than global clock names), register the OF clock provider.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio at linaro.org>
Konrad
> drivers/gpu/drm/msm/hdmi/hdmi_pll_8960.c | 15 ++++++++++-----
> 1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/hdmi/hdmi_pll_8960.c b/drivers/gpu/drm/msm/hdmi/hdmi_pll_8960.c
> index c3e7ff45e52a..cb35a297afbd 100644
> --- a/drivers/gpu/drm/msm/hdmi/hdmi_pll_8960.c
> +++ b/drivers/gpu/drm/msm/hdmi/hdmi_pll_8960.c
> @@ -422,8 +422,7 @@ int msm_hdmi_pll_8960_init(struct platform_device *pdev)
> {
> struct device *dev = &pdev->dev;
> struct hdmi_pll_8960 *pll;
> - struct clk *clk;
> - int i;
> + int i, ret;
>
> /* sanity check: */
> for (i = 0; i < (ARRAY_SIZE(freqtbl) - 1); i++)
> @@ -443,10 +442,16 @@ int msm_hdmi_pll_8960_init(struct platform_device *pdev)
> pll->pdev = pdev;
> pll->clk_hw.init = &pll_init;
>
> - clk = devm_clk_register(dev, &pll->clk_hw);
> - if (IS_ERR(clk)) {
> + ret = devm_clk_hw_register(dev, &pll->clk_hw);
> + if (ret < 0) {
> DRM_DEV_ERROR(dev, "failed to register pll clock\n");
> - return -EINVAL;
> + return ret;
> + }
> +
> + ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_simple_get, &pll->clk_hw);
> + if (ret) {
> + DRM_DEV_ERROR(dev, "%s: failed to register clk provider: %d\n", __func__, ret);
> + return ret;
> }
>
> return 0;
More information about the Freedreno
mailing list