diff mbox series

[05/11] drm/msm/disp/dpu1: Add DSC for SDM845 to hw_catalog

Message ID 20210715065203.709914-6-vkoul@kernel.org
State New
Headers show
Series [01/11] drm/msm/dsi: add support for dsc data | expand

Commit Message

Vinod Koul July 15, 2021, 6:51 a.m. UTC
This add SDM845 DSC blocks into hw_catalog

Signed-off-by: Vinod Koul <vkoul@kernel.org>

---
Changes since RFC:
 - use BIT values from MASK

 .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 22 +++++++++++++++++++
 1 file changed, 22 insertions(+)

-- 
2.31.1

Comments

Dmitry Baryshkov July 29, 2021, 8:25 p.m. UTC | #1
On 15/07/2021 09:51, Vinod Koul wrote:
> This add SDM845 DSC blocks into hw_catalog

> 

> Signed-off-by: Vinod Koul <vkoul@kernel.org>

> ---

> Changes since RFC:

>   - use BIT values from MASK

> 

>   .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 22 +++++++++++++++++++

>   1 file changed, 22 insertions(+)

> 

> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> index b569030a0847..b45a08303c99 100644

> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> @@ -40,6 +40,8 @@

>   

>   #define PINGPONG_SDM845_MASK BIT(DPU_PINGPONG_DITHER)

>   

> +#define DSC_SDM845_MASK BIT(1)

> +


This does not seem used. You can pass (0) as the feature mask.

>   #define PINGPONG_SDM845_SPLIT_MASK \

>   	(PINGPONG_SDM845_MASK | BIT(DPU_PINGPONG_TE2))

>   

> @@ -751,6 +753,24 @@ static const struct dpu_pingpong_cfg sc7280_pp[] = {

>   	PP_BLK("pingpong_2", PINGPONG_2, 0x6b000, 0, sc7280_pp_sblk),

>   	PP_BLK("pingpong_3", PINGPONG_3, 0x6c000, 0, sc7280_pp_sblk),

>   };

> +

> +/*************************************************************

> + * DSC sub blocks config

> + *************************************************************/

> +#define DSC_BLK(_name, _id, _base) \

> +	{\

> +	.name = _name, .id = _id, \

> +	.base = _base, .len = 0x140, \

> +	.features = DSC_SDM845_MASK, \

> +	}

> +

> +static struct dpu_dsc_cfg sdm845_dsc[] = {

> +	DSC_BLK("dsc_0", DSC_0, 0x80000),

> +	DSC_BLK("dsc_1", DSC_1, 0x80400),

> +	DSC_BLK("dsc_2", DSC_2, 0x80800),

> +	DSC_BLK("dsc_3", DSC_3, 0x80c00),

> +};

> +

>   /*************************************************************

>    * INTF sub blocks config

>    *************************************************************/

> @@ -1053,6 +1073,8 @@ static void sdm845_cfg_init(struct dpu_mdss_cfg *dpu_cfg)

>   		.mixer = sdm845_lm,

>   		.pingpong_count = ARRAY_SIZE(sdm845_pp),

>   		.pingpong = sdm845_pp,

> +		.dsc_count = ARRAY_SIZE(sdm845_dsc),

> +		.dsc = sdm845_dsc,

>   		.intf_count = ARRAY_SIZE(sdm845_intf),

>   		.intf = sdm845_intf,

>   		.vbif_count = ARRAY_SIZE(sdm845_vbif),

> 



-- 
With best wishes
Dmitry
Abhinav Kumar Aug. 2, 2021, 11:29 p.m. UTC | #2
On 2021-07-14 23:51, Vinod Koul wrote:
> This add SDM845 DSC blocks into hw_catalog

/add --> adds
> 

> Signed-off-by: Vinod Koul <vkoul@kernel.org>

> ---

> Changes since RFC:

>  - use BIT values from MASK

> 

>  .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 22 +++++++++++++++++++

>  1 file changed, 22 insertions(+)

> 

> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> index b569030a0847..b45a08303c99 100644

> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> @@ -40,6 +40,8 @@

> 

>  #define PINGPONG_SDM845_MASK BIT(DPU_PINGPONG_DITHER)

> 

> +#define DSC_SDM845_MASK BIT(1)

agree with dmitry again : 
https://patchwork.freedesktop.org/patch/444072/?series=90413&rev=2
this is unused. you can use .features = 0
> +

>  #define PINGPONG_SDM845_SPLIT_MASK \

>  	(PINGPONG_SDM845_MASK | BIT(DPU_PINGPONG_TE2))

> 

> @@ -751,6 +753,24 @@ static const struct dpu_pingpong_cfg sc7280_pp[] = 

> {

>  	PP_BLK("pingpong_2", PINGPONG_2, 0x6b000, 0, sc7280_pp_sblk),

>  	PP_BLK("pingpong_3", PINGPONG_3, 0x6c000, 0, sc7280_pp_sblk),

>  };

> +

> +/*************************************************************

> + * DSC sub blocks config

> + *************************************************************/

> +#define DSC_BLK(_name, _id, _base) \

> +	{\

> +	.name = _name, .id = _id, \

> +	.base = _base, .len = 0x140, \

> +	.features = DSC_SDM845_MASK, \

> +	}

> +

> +static struct dpu_dsc_cfg sdm845_dsc[] = {

> +	DSC_BLK("dsc_0", DSC_0, 0x80000),

> +	DSC_BLK("dsc_1", DSC_1, 0x80400),

> +	DSC_BLK("dsc_2", DSC_2, 0x80800),

> +	DSC_BLK("dsc_3", DSC_3, 0x80c00),

> +};

> +

>  /*************************************************************

>   * INTF sub blocks config

>   *************************************************************/

> @@ -1053,6 +1073,8 @@ static void sdm845_cfg_init(struct dpu_mdss_cfg 

> *dpu_cfg)

>  		.mixer = sdm845_lm,

>  		.pingpong_count = ARRAY_SIZE(sdm845_pp),

>  		.pingpong = sdm845_pp,

> +		.dsc_count = ARRAY_SIZE(sdm845_dsc),

> +		.dsc = sdm845_dsc,

>  		.intf_count = ARRAY_SIZE(sdm845_intf),

>  		.intf = sdm845_intf,

>  		.vbif_count = ARRAY_SIZE(sdm845_vbif),
Vinod Koul Oct. 6, 2021, 10:50 a.m. UTC | #3
On 29-07-21, 23:25, Dmitry Baryshkov wrote:
> On 15/07/2021 09:51, Vinod Koul wrote:

> > This add SDM845 DSC blocks into hw_catalog

> > 

> > Signed-off-by: Vinod Koul <vkoul@kernel.org>

> > ---

> > Changes since RFC:

> >   - use BIT values from MASK

> > 

> >   .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 22 +++++++++++++++++++

> >   1 file changed, 22 insertions(+)

> > 

> > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > index b569030a0847..b45a08303c99 100644

> > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > @@ -40,6 +40,8 @@

> >   #define PINGPONG_SDM845_MASK BIT(DPU_PINGPONG_DITHER)

> > +#define DSC_SDM845_MASK BIT(1)

> > +

> 

> This does not seem used. You can pass (0) as the feature mask.


Yes fixed

-- 
~Vinod
Vinod Koul Oct. 6, 2021, 10:52 a.m. UTC | #4
On 02-08-21, 16:29, abhinavk@codeaurora.org wrote:
> On 2021-07-14 23:51, Vinod Koul wrote:

> > This add SDM845 DSC blocks into hw_catalog

> /add --> adds

> > 

> > Signed-off-by: Vinod Koul <vkoul@kernel.org>

> > ---

> > Changes since RFC:

> >  - use BIT values from MASK

> > 

> >  .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 22 +++++++++++++++++++

> >  1 file changed, 22 insertions(+)

> > 

> > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > index b569030a0847..b45a08303c99 100644

> > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c

> > @@ -40,6 +40,8 @@

> > 

> >  #define PINGPONG_SDM845_MASK BIT(DPU_PINGPONG_DITHER)

> > 

> > +#define DSC_SDM845_MASK BIT(1)

> agree with dmitry again :

> https://patchwork.freedesktop.org/patch/444072/?series=90413&rev=2

> this is unused. you can use .features = 0


Yes I have updated that

-- 
~Vinod
diff mbox series

Patch

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
index b569030a0847..b45a08303c99 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
@@ -40,6 +40,8 @@ 
 
 #define PINGPONG_SDM845_MASK BIT(DPU_PINGPONG_DITHER)
 
+#define DSC_SDM845_MASK BIT(1)
+
 #define PINGPONG_SDM845_SPLIT_MASK \
 	(PINGPONG_SDM845_MASK | BIT(DPU_PINGPONG_TE2))
 
@@ -751,6 +753,24 @@  static const struct dpu_pingpong_cfg sc7280_pp[] = {
 	PP_BLK("pingpong_2", PINGPONG_2, 0x6b000, 0, sc7280_pp_sblk),
 	PP_BLK("pingpong_3", PINGPONG_3, 0x6c000, 0, sc7280_pp_sblk),
 };
+
+/*************************************************************
+ * DSC sub blocks config
+ *************************************************************/
+#define DSC_BLK(_name, _id, _base) \
+	{\
+	.name = _name, .id = _id, \
+	.base = _base, .len = 0x140, \
+	.features = DSC_SDM845_MASK, \
+	}
+
+static struct dpu_dsc_cfg sdm845_dsc[] = {
+	DSC_BLK("dsc_0", DSC_0, 0x80000),
+	DSC_BLK("dsc_1", DSC_1, 0x80400),
+	DSC_BLK("dsc_2", DSC_2, 0x80800),
+	DSC_BLK("dsc_3", DSC_3, 0x80c00),
+};
+
 /*************************************************************
  * INTF sub blocks config
  *************************************************************/
@@ -1053,6 +1073,8 @@  static void sdm845_cfg_init(struct dpu_mdss_cfg *dpu_cfg)
 		.mixer = sdm845_lm,
 		.pingpong_count = ARRAY_SIZE(sdm845_pp),
 		.pingpong = sdm845_pp,
+		.dsc_count = ARRAY_SIZE(sdm845_dsc),
+		.dsc = sdm845_dsc,
 		.intf_count = ARRAY_SIZE(sdm845_intf),
 		.intf = sdm845_intf,
 		.vbif_count = ARRAY_SIZE(sdm845_vbif),