On Wed 30 Jun 19:00 CDT 2021, Dmitry Baryshkov wrote: > None of supported devies uses "gdsc" regulator for DSI. GDSC support is > now implemented as a power domain. Drop old code and config handling > gdsc regulator requesting and enabling. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> Regards, Bjorn > --- > drivers/gpu/drm/msm/dsi/dsi_cfg.c | 12 ++++-------- > drivers/gpu/drm/msm/dsi/dsi_host.c | 22 +++------------------- > 2 files changed, 7 insertions(+), 27 deletions(-) > > diff --git a/drivers/gpu/drm/msm/dsi/dsi_cfg.c b/drivers/gpu/drm/msm/dsi/dsi_cfg.c > index f3f1c03c7db9..32c37d7c2109 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi_cfg.c > +++ b/drivers/gpu/drm/msm/dsi/dsi_cfg.c > @@ -32,9 +32,8 @@ static const char * const dsi_6g_bus_clk_names[] = { > static const struct msm_dsi_config msm8974_apq8084_dsi_cfg = { > .io_offset = DSI_6G_REG_SHIFT, > .reg_cfg = { > - .num = 4, > + .num = 3, > .regs = { > - {"gdsc", -1, -1}, > {"vdd", 150000, 100}, /* 3.0 V */ > {"vdda", 100000, 100}, /* 1.2 V */ > {"vddio", 100000, 100}, /* 1.8 V */ > @@ -53,9 +52,8 @@ static const char * const dsi_8916_bus_clk_names[] = { > static const struct msm_dsi_config msm8916_dsi_cfg = { > .io_offset = DSI_6G_REG_SHIFT, > .reg_cfg = { > - .num = 3, > + .num = 2, > .regs = { > - {"gdsc", -1, -1}, > {"vdda", 100000, 100}, /* 1.2 V */ > {"vddio", 100000, 100}, /* 1.8 V */ > }, > @@ -73,9 +71,8 @@ static const char * const dsi_8976_bus_clk_names[] = { > static const struct msm_dsi_config msm8976_dsi_cfg = { > .io_offset = DSI_6G_REG_SHIFT, > .reg_cfg = { > - .num = 3, > + .num = 2, > .regs = { > - {"gdsc", -1, -1}, > {"vdda", 100000, 100}, /* 1.2 V */ > {"vddio", 100000, 100}, /* 1.8 V */ > }, > @@ -89,9 +86,8 @@ static const struct msm_dsi_config msm8976_dsi_cfg = { > static const struct msm_dsi_config msm8994_dsi_cfg = { > .io_offset = DSI_6G_REG_SHIFT, > .reg_cfg = { > - .num = 7, > + .num = 6, > .regs = { > - {"gdsc", -1, -1}, > {"vdda", 100000, 100}, /* 1.25 V */ > {"vddio", 100000, 100}, /* 1.8 V */ > {"vcca", 10000, 100}, /* 1.0 V */ > diff --git a/drivers/gpu/drm/msm/dsi/dsi_host.c b/drivers/gpu/drm/msm/dsi/dsi_host.c > index ed504fe5074f..66c425d4159c 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi_host.c > +++ b/drivers/gpu/drm/msm/dsi/dsi_host.c > @@ -203,35 +203,22 @@ static const struct msm_dsi_cfg_handler *dsi_get_config( > { > const struct msm_dsi_cfg_handler *cfg_hnd = NULL; > struct device *dev = &msm_host->pdev->dev; > - struct regulator *gdsc_reg; > struct clk *ahb_clk; > int ret; > u32 major = 0, minor = 0; > > - gdsc_reg = regulator_get(dev, "gdsc"); > - if (IS_ERR(gdsc_reg)) { > - pr_err("%s: cannot get gdsc\n", __func__); > - goto exit; > - } > - > ahb_clk = msm_clk_get(msm_host->pdev, "iface"); > if (IS_ERR(ahb_clk)) { > pr_err("%s: cannot get interface clock\n", __func__); > - goto put_gdsc; > + goto exit; > } > > pm_runtime_get_sync(dev); > > - ret = regulator_enable(gdsc_reg); > - if (ret) { > - pr_err("%s: unable to enable gdsc\n", __func__); > - goto put_gdsc; > - } > - > ret = clk_prepare_enable(ahb_clk); > if (ret) { > pr_err("%s: unable to enable ahb_clk\n", __func__); > - goto disable_gdsc; > + goto runtime_put; > } > > ret = dsi_get_version(msm_host->ctrl_base, &major, &minor); > @@ -246,11 +233,8 @@ static const struct msm_dsi_cfg_handler *dsi_get_config( > > disable_clks: > clk_disable_unprepare(ahb_clk); > -disable_gdsc: > - regulator_disable(gdsc_reg); > +runtime_put: > pm_runtime_put_sync(dev); > -put_gdsc: > - regulator_put(gdsc_reg); > exit: > return cfg_hnd; > } > -- > 2.30.2 >