Commit b93cc4b2 authored by Dmitry Baryshkov's avatar Dmitry Baryshkov Committed by Rob Clark

drm/msm/dsi: drop gdsc regulator handling

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: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210701000015.3347713-1-dmitry.baryshkov@linaro.orgReviewed-by: default avatarAbhinav Kumar <abhinavk@codeaurora.org>
Reviewed-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
parent 5ac17838
...@@ -32,9 +32,8 @@ static const char * const dsi_6g_bus_clk_names[] = { ...@@ -32,9 +32,8 @@ static const char * const dsi_6g_bus_clk_names[] = {
static const struct msm_dsi_config msm8974_apq8084_dsi_cfg = { static const struct msm_dsi_config msm8974_apq8084_dsi_cfg = {
.io_offset = DSI_6G_REG_SHIFT, .io_offset = DSI_6G_REG_SHIFT,
.reg_cfg = { .reg_cfg = {
.num = 4, .num = 3,
.regs = { .regs = {
{"gdsc", -1, -1},
{"vdd", 150000, 100}, /* 3.0 V */ {"vdd", 150000, 100}, /* 3.0 V */
{"vdda", 100000, 100}, /* 1.2 V */ {"vdda", 100000, 100}, /* 1.2 V */
{"vddio", 100000, 100}, /* 1.8 V */ {"vddio", 100000, 100}, /* 1.8 V */
...@@ -53,9 +52,8 @@ static const char * const dsi_8916_bus_clk_names[] = { ...@@ -53,9 +52,8 @@ static const char * const dsi_8916_bus_clk_names[] = {
static const struct msm_dsi_config msm8916_dsi_cfg = { static const struct msm_dsi_config msm8916_dsi_cfg = {
.io_offset = DSI_6G_REG_SHIFT, .io_offset = DSI_6G_REG_SHIFT,
.reg_cfg = { .reg_cfg = {
.num = 3, .num = 2,
.regs = { .regs = {
{"gdsc", -1, -1},
{"vdda", 100000, 100}, /* 1.2 V */ {"vdda", 100000, 100}, /* 1.2 V */
{"vddio", 100000, 100}, /* 1.8 V */ {"vddio", 100000, 100}, /* 1.8 V */
}, },
...@@ -73,9 +71,8 @@ static const char * const dsi_8976_bus_clk_names[] = { ...@@ -73,9 +71,8 @@ static const char * const dsi_8976_bus_clk_names[] = {
static const struct msm_dsi_config msm8976_dsi_cfg = { static const struct msm_dsi_config msm8976_dsi_cfg = {
.io_offset = DSI_6G_REG_SHIFT, .io_offset = DSI_6G_REG_SHIFT,
.reg_cfg = { .reg_cfg = {
.num = 3, .num = 2,
.regs = { .regs = {
{"gdsc", -1, -1},
{"vdda", 100000, 100}, /* 1.2 V */ {"vdda", 100000, 100}, /* 1.2 V */
{"vddio", 100000, 100}, /* 1.8 V */ {"vddio", 100000, 100}, /* 1.8 V */
}, },
...@@ -89,9 +86,8 @@ static const struct msm_dsi_config msm8976_dsi_cfg = { ...@@ -89,9 +86,8 @@ static const struct msm_dsi_config msm8976_dsi_cfg = {
static const struct msm_dsi_config msm8994_dsi_cfg = { static const struct msm_dsi_config msm8994_dsi_cfg = {
.io_offset = DSI_6G_REG_SHIFT, .io_offset = DSI_6G_REG_SHIFT,
.reg_cfg = { .reg_cfg = {
.num = 7, .num = 6,
.regs = { .regs = {
{"gdsc", -1, -1},
{"vdda", 100000, 100}, /* 1.25 V */ {"vdda", 100000, 100}, /* 1.25 V */
{"vddio", 100000, 100}, /* 1.8 V */ {"vddio", 100000, 100}, /* 1.8 V */
{"vcca", 10000, 100}, /* 1.0 V */ {"vcca", 10000, 100}, /* 1.0 V */
......
...@@ -207,35 +207,22 @@ static const struct msm_dsi_cfg_handler *dsi_get_config( ...@@ -207,35 +207,22 @@ static const struct msm_dsi_cfg_handler *dsi_get_config(
{ {
const struct msm_dsi_cfg_handler *cfg_hnd = NULL; const struct msm_dsi_cfg_handler *cfg_hnd = NULL;
struct device *dev = &msm_host->pdev->dev; struct device *dev = &msm_host->pdev->dev;
struct regulator *gdsc_reg;
struct clk *ahb_clk; struct clk *ahb_clk;
int ret; int ret;
u32 major = 0, minor = 0; 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"); ahb_clk = msm_clk_get(msm_host->pdev, "iface");
if (IS_ERR(ahb_clk)) { if (IS_ERR(ahb_clk)) {
pr_err("%s: cannot get interface clock\n", __func__); pr_err("%s: cannot get interface clock\n", __func__);
goto put_gdsc; goto exit;
} }
pm_runtime_get_sync(dev); 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); ret = clk_prepare_enable(ahb_clk);
if (ret) { if (ret) {
pr_err("%s: unable to enable ahb_clk\n", __func__); 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); ret = dsi_get_version(msm_host->ctrl_base, &major, &minor);
...@@ -250,11 +237,8 @@ static const struct msm_dsi_cfg_handler *dsi_get_config( ...@@ -250,11 +237,8 @@ static const struct msm_dsi_cfg_handler *dsi_get_config(
disable_clks: disable_clks:
clk_disable_unprepare(ahb_clk); clk_disable_unprepare(ahb_clk);
disable_gdsc: runtime_put:
regulator_disable(gdsc_reg);
pm_runtime_put_sync(dev); pm_runtime_put_sync(dev);
put_gdsc:
regulator_put(gdsc_reg);
exit: exit:
return cfg_hnd; return cfg_hnd;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment