Message ID | 20210327110305.3289784-14-dmitry.baryshkov@linaro.org |
---|---|
State | Accepted |
Commit | a7c13d4f597d31c67169c6774b83f5a478c18b19 |
Headers | show |
Series | drm/msm/dsi: refactor MSM DSI PHY/PLL drivers | expand |
On 2021-03-27 04:02, Dmitry Baryshkov wrote: > Use devm_of_clk_add_hw_provider() to register provided clocks. This > allows dropping the remove function alltogether. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Reviewed-by: Abhinav Kumar <abhinavk@codeaurora.org> > --- > drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 22 +--------------------- > 1 file changed, 1 insertion(+), 21 deletions(-) > > diff --git a/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c > b/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c > index df3b91b0ea88..46561435a27d 100644 > --- a/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c > +++ b/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c > @@ -728,7 +728,7 @@ static int dsi_phy_driver_probe(struct > platform_device *pdev) > } > } > > - ret = of_clk_add_hw_provider(dev->of_node, of_clk_hw_onecell_get, > + ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, > phy->provided_clocks); > if (ret) { > DRM_DEV_ERROR(dev, "%s: failed to register clk provider: %d\n", > __func__, ret); > @@ -742,31 +742,11 @@ static int dsi_phy_driver_probe(struct > platform_device *pdev) > return 0; > > fail: > - if (phy->pll) { > - of_clk_del_provider(dev->of_node); > - phy->pll = NULL; > - } > - > return ret; > } > > -static int dsi_phy_driver_remove(struct platform_device *pdev) > -{ > - struct msm_dsi_phy *phy = platform_get_drvdata(pdev); > - > - if (phy && phy->pll) { > - of_clk_del_provider(pdev->dev.of_node); > - phy->pll = NULL; > - } > - > - platform_set_drvdata(pdev, NULL); > - > - return 0; > -} > - > static struct platform_driver dsi_phy_platform_driver = { > .probe = dsi_phy_driver_probe, > - .remove = dsi_phy_driver_remove, > .driver = { > .name = "msm_dsi_phy", > .of_match_table = dsi_phy_dt_match,
Would make it devm_of_clk_add_hw_provider() in the subject Quoting Dmitry Baryshkov (2021-03-27 04:02:53) > Use devm_of_clk_add_hw_provider() to register provided clocks. This > allows dropping the remove function alltogether. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- Reviewed-by: Stephen Boyd <sboyd@kernel.org>
diff --git a/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c b/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c index df3b91b0ea88..46561435a27d 100644 --- a/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c +++ b/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c @@ -728,7 +728,7 @@ static int dsi_phy_driver_probe(struct platform_device *pdev) } } - ret = of_clk_add_hw_provider(dev->of_node, of_clk_hw_onecell_get, + ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_onecell_get, phy->provided_clocks); if (ret) { DRM_DEV_ERROR(dev, "%s: failed to register clk provider: %d\n", __func__, ret); @@ -742,31 +742,11 @@ static int dsi_phy_driver_probe(struct platform_device *pdev) return 0; fail: - if (phy->pll) { - of_clk_del_provider(dev->of_node); - phy->pll = NULL; - } - return ret; } -static int dsi_phy_driver_remove(struct platform_device *pdev) -{ - struct msm_dsi_phy *phy = platform_get_drvdata(pdev); - - if (phy && phy->pll) { - of_clk_del_provider(pdev->dev.of_node); - phy->pll = NULL; - } - - platform_set_drvdata(pdev, NULL); - - return 0; -} - static struct platform_driver dsi_phy_platform_driver = { .probe = dsi_phy_driver_probe, - .remove = dsi_phy_driver_remove, .driver = { .name = "msm_dsi_phy", .of_match_table = dsi_phy_dt_match,
Use devm_of_clk_add_hw_provider() to register provided clocks. This allows dropping the remove function alltogether. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) -- 2.30.2