Re: [PATCH] drm/msm/dsi: drop gdsc regulator handling

2021-07-01 Thread Bjorn Andersson
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 

Reviewed-by: Bjorn Andersson 

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", 15, 100},   /* 3.0 V */
>   {"vdda", 10, 100},  /* 1.2 V */
>   {"vddio", 10, 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", 10, 100},  /* 1.2 V */
>   {"vddio", 10, 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", 10, 100},  /* 1.2 V */
>   {"vddio", 10, 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", 10, 100},  /* 1.25 V */
>   {"vddio", 10, 100}, /* 1.8 V */
>   {"vcca", 1, 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 = _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, , );
> @@ -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
> 


Re: [Freedreno] [PATCH] drm/msm/dsi: drop gdsc regulator handling

2021-07-01 Thread abhinavk

On 2021-06-30 17:00, 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 

Reviewed-by: Abhinav Kumar 

---
 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", 15, 100}, /* 3.0 V */
{"vdda", 10, 100},/* 1.2 V */
{"vddio", 10, 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", 10, 100},/* 1.2 V */
{"vddio", 10, 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", 10, 100},/* 1.2 V */
{"vddio", 10, 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", 10, 100},/* 1.25 V */
{"vddio", 10, 100},   /* 1.8 V */
{"vcca", 1, 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 = _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, , );
@@ -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;
 }


[PATCH] drm/msm/dsi: drop gdsc regulator handling

2021-06-30 Thread Dmitry Baryshkov
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 
---
 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", 15, 100},   /* 3.0 V */
{"vdda", 10, 100},  /* 1.2 V */
{"vddio", 10, 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", 10, 100},  /* 1.2 V */
{"vddio", 10, 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", 10, 100},  /* 1.2 V */
{"vddio", 10, 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", 10, 100},  /* 1.25 V */
{"vddio", 10, 100}, /* 1.8 V */
{"vcca", 1, 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 = _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, , );
@@ -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