dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization
@ 2024-02-28 19:47 Abhinav Kumar
  2024-02-28 19:47 ` [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback Abhinav Kumar
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Abhinav Kumar @ 2024-02-28 19:47 UTC (permalink / raw)
  To: freedreno, Rob Clark, Abhinav Kumar, Dmitry Baryshkov, Sean Paul,
	Marijn Suijten, David Airlie, Daniel Vetter
  Cc: dri-devel, quic_parellan, quic_jesszhan, linux-arm-msm, linux-kernel

dpu_kms seems unused while initializing DSI, HDMI and DP through
their respective _dpu_kms_initialize_* functions.

Hence lets drop the parameter altogether.

Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
index 2af62d8fa9a7..ab924ac78c9b 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
@@ -494,8 +494,7 @@ static void dpu_kms_wait_flush(struct msm_kms *kms, unsigned crtc_mask)
 }
 
 static int _dpu_kms_initialize_dsi(struct drm_device *dev,
-				    struct msm_drm_private *priv,
-				    struct dpu_kms *dpu_kms)
+				   struct msm_drm_private *priv)
 {
 	struct drm_encoder *encoder = NULL;
 	struct msm_display_info info;
@@ -558,8 +557,7 @@ static int _dpu_kms_initialize_dsi(struct drm_device *dev,
 }
 
 static int _dpu_kms_initialize_displayport(struct drm_device *dev,
-					    struct msm_drm_private *priv,
-					    struct dpu_kms *dpu_kms)
+					   struct msm_drm_private *priv)
 {
 	struct drm_encoder *encoder = NULL;
 	struct msm_display_info info;
@@ -592,8 +590,7 @@ static int _dpu_kms_initialize_displayport(struct drm_device *dev,
 }
 
 static int _dpu_kms_initialize_hdmi(struct drm_device *dev,
-				    struct msm_drm_private *priv,
-				    struct dpu_kms *dpu_kms)
+				    struct msm_drm_private *priv)
 {
 	struct drm_encoder *encoder = NULL;
 	struct msm_display_info info;
@@ -671,19 +668,19 @@ static int _dpu_kms_setup_displays(struct drm_device *dev,
 	int rc = 0;
 	int i;
 
-	rc = _dpu_kms_initialize_dsi(dev, priv, dpu_kms);
+	rc = _dpu_kms_initialize_dsi(dev, priv);
 	if (rc) {
 		DPU_ERROR("initialize_dsi failed, rc = %d\n", rc);
 		return rc;
 	}
 
-	rc = _dpu_kms_initialize_displayport(dev, priv, dpu_kms);
+	rc = _dpu_kms_initialize_displayport(dev, priv);
 	if (rc) {
 		DPU_ERROR("initialize_DP failed, rc = %d\n", rc);
 		return rc;
 	}
 
-	rc = _dpu_kms_initialize_hdmi(dev, priv, dpu_kms);
+	rc = _dpu_kms_initialize_hdmi(dev, priv);
 	if (rc) {
 		DPU_ERROR("initialize HDMI failed, rc = %d\n", rc);
 		return rc;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback
  2024-02-28 19:47 [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Abhinav Kumar
@ 2024-02-28 19:47 ` Abhinav Kumar
  2024-03-04  9:46   ` Dmitry Baryshkov
  2024-03-04  9:44 ` [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Dmitry Baryshkov
  2024-03-04 13:06 ` Dmitry Baryshkov
  2 siblings, 1 reply; 6+ messages in thread
From: Abhinav Kumar @ 2024-02-28 19:47 UTC (permalink / raw)
  To: freedreno, Rob Clark, Abhinav Kumar, Dmitry Baryshkov, Sean Paul,
	Marijn Suijten, David Airlie, Daniel Vetter
  Cc: dri-devel, quic_parellan, quic_jesszhan, linux-arm-msm, linux-kernel

Following the pattern of other interfaces, lets align writeback
as well by dropping the dpu_kms parameter in its _dpu_kms_initialize_*
function.

Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
index ab924ac78c9b..382ef4c8e8eb 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
@@ -620,13 +620,12 @@ static int _dpu_kms_initialize_hdmi(struct drm_device *dev,
 }
 
 static int _dpu_kms_initialize_writeback(struct drm_device *dev,
-		struct msm_drm_private *priv, struct dpu_kms *dpu_kms,
+		struct msm_drm_private *priv, u32 maxlinewidth,
 		const u32 *wb_formats, int n_formats)
 {
 	struct drm_encoder *encoder = NULL;
 	struct msm_display_info info;
 	const enum dpu_wb wb_idx = WB_2;
-	u32 maxlinewidth;
 	int rc;
 
 	memset(&info, 0, sizeof(info));
@@ -636,8 +635,6 @@ static int _dpu_kms_initialize_writeback(struct drm_device *dev,
 	info.h_tile_instance[0] = wb_idx;
 	info.intf_type = INTF_WB;
 
-	maxlinewidth = dpu_rm_get_wb(&dpu_kms->rm, info.h_tile_instance[0])->caps->maxlinewidth;
-
 	encoder = dpu_encoder_init(dev, DRM_MODE_ENCODER_VIRTUAL, &info);
 	if (IS_ERR(encoder)) {
 		DPU_ERROR("encoder init failed for dsi display\n");
@@ -690,9 +687,12 @@ static int _dpu_kms_setup_displays(struct drm_device *dev,
 	if (dpu_kms->catalog->wb_count) {
 		for (i = 0; i < dpu_kms->catalog->wb_count; i++) {
 			if (dpu_kms->catalog->wb[i].id == WB_2) {
-				rc = _dpu_kms_initialize_writeback(dev, priv, dpu_kms,
-						dpu_kms->catalog->wb[i].format_list,
-						dpu_kms->catalog->wb[i].num_formats);
+				u32 wb_maxlinewidth = dpu_kms->catalog->wb[i].maxlinewidth;
+				const u32 *wb_formats = dpu_kms->catalog->wb[i].format_list;
+				u32 n_formats = dpu_kms->catalog->wb[i].num_formats;
+
+				rc = _dpu_kms_initialize_writeback(dev, priv, wb_maxlinewidth,
+								   wb_formats, n_formats);
 				if (rc) {
 					DPU_ERROR("initialize_WB failed, rc = %d\n", rc);
 					return rc;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization
  2024-02-28 19:47 [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Abhinav Kumar
  2024-02-28 19:47 ` [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback Abhinav Kumar
@ 2024-03-04  9:44 ` Dmitry Baryshkov
  2024-03-04 13:06 ` Dmitry Baryshkov
  2 siblings, 0 replies; 6+ messages in thread
From: Dmitry Baryshkov @ 2024-03-04  9:44 UTC (permalink / raw)
  To: Abhinav Kumar
  Cc: freedreno, Rob Clark, Sean Paul, Marijn Suijten, David Airlie,
	Daniel Vetter, dri-devel, quic_parellan, quic_jesszhan,
	linux-arm-msm, linux-kernel

On Wed, 28 Feb 2024 at 21:47, Abhinav Kumar <quic_abhinavk@quicinc.com> wrote:
>
> dpu_kms seems unused while initializing DSI, HDMI and DP through
> their respective _dpu_kms_initialize_* functions.
>
> Hence lets drop the parameter altogether.
>
> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

> ---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 15 ++++++---------
>  1 file changed, 6 insertions(+), 9 deletions(-)

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback
  2024-02-28 19:47 ` [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback Abhinav Kumar
@ 2024-03-04  9:46   ` Dmitry Baryshkov
  0 siblings, 0 replies; 6+ messages in thread
From: Dmitry Baryshkov @ 2024-03-04  9:46 UTC (permalink / raw)
  To: Abhinav Kumar
  Cc: freedreno, Rob Clark, Sean Paul, Marijn Suijten, David Airlie,
	Daniel Vetter, dri-devel, quic_parellan, quic_jesszhan,
	linux-arm-msm, linux-kernel

On Wed, 28 Feb 2024 at 21:47, Abhinav Kumar <quic_abhinavk@quicinc.com> wrote:
>
> Following the pattern of other interfaces, lets align writeback
> as well by dropping the dpu_kms parameter in its _dpu_kms_initialize_*
> function.
>
> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

> ---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization
  2024-02-28 19:47 [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Abhinav Kumar
  2024-02-28 19:47 ` [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback Abhinav Kumar
  2024-03-04  9:44 ` [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Dmitry Baryshkov
@ 2024-03-04 13:06 ` Dmitry Baryshkov
  2024-03-04 18:07   ` Abhinav Kumar
  2 siblings, 1 reply; 6+ messages in thread
From: Dmitry Baryshkov @ 2024-03-04 13:06 UTC (permalink / raw)
  To: Abhinav Kumar
  Cc: freedreno, Rob Clark, Sean Paul, Marijn Suijten, David Airlie,
	Daniel Vetter, dri-devel, quic_parellan, quic_jesszhan,
	linux-arm-msm, linux-kernel

On Wed, 28 Feb 2024 at 21:47, Abhinav Kumar <quic_abhinavk@quicinc.com> wrote:
>
> dpu_kms seems unused while initializing DSI, HDMI and DP through
> their respective _dpu_kms_initialize_* functions.
>
> Hence lets drop the parameter altogether.
>
> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
> ---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 15 ++++++---------
>  1 file changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
> index 2af62d8fa9a7..ab924ac78c9b 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
> @@ -494,8 +494,7 @@ static void dpu_kms_wait_flush(struct msm_kms *kms, unsigned crtc_mask)
>  }
>
>  static int _dpu_kms_initialize_dsi(struct drm_device *dev,
> -                                   struct msm_drm_private *priv,
> -                                   struct dpu_kms *dpu_kms)
> +                                  struct msm_drm_private *priv)
>  {
>         struct drm_encoder *encoder = NULL;
>         struct msm_display_info info;
> @@ -558,8 +557,7 @@ static int _dpu_kms_initialize_dsi(struct drm_device *dev,
>  }
>
>  static int _dpu_kms_initialize_displayport(struct drm_device *dev,
> -                                           struct msm_drm_private *priv,
> -                                           struct dpu_kms *dpu_kms)
> +                                          struct msm_drm_private *priv)

This breaks now on top of YUV patchset:

drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c: In function
'_dpu_kms_initialize_displayport':
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c:583:35: error: 'dpu_kms'
undeclared (first use in this function)
583 | yuv_supported = !!dpu_kms->catalog->cdm;

As this requires adding of the yuv_supported argument, let's consider
moving it backwards: for  _dpu_kms_initialize_writeback() we can get
format_list and n_formats from the dpu_kms.


>  {
>         struct drm_encoder *encoder = NULL;
>         struct msm_display_info info;
> @@ -592,8 +590,7 @@ static int _dpu_kms_initialize_displayport(struct drm_device *dev,
>  }
>
>  static int _dpu_kms_initialize_hdmi(struct drm_device *dev,
> -                                   struct msm_drm_private *priv,
> -                                   struct dpu_kms *dpu_kms)
> +                                   struct msm_drm_private *priv)
>  {
>         struct drm_encoder *encoder = NULL;
>         struct msm_display_info info;
> @@ -671,19 +668,19 @@ static int _dpu_kms_setup_displays(struct drm_device *dev,
>         int rc = 0;
>         int i;
>
> -       rc = _dpu_kms_initialize_dsi(dev, priv, dpu_kms);
> +       rc = _dpu_kms_initialize_dsi(dev, priv);
>         if (rc) {
>                 DPU_ERROR("initialize_dsi failed, rc = %d\n", rc);
>                 return rc;
>         }
>
> -       rc = _dpu_kms_initialize_displayport(dev, priv, dpu_kms);
> +       rc = _dpu_kms_initialize_displayport(dev, priv);
>         if (rc) {
>                 DPU_ERROR("initialize_DP failed, rc = %d\n", rc);
>                 return rc;
>         }
>
> -       rc = _dpu_kms_initialize_hdmi(dev, priv, dpu_kms);
> +       rc = _dpu_kms_initialize_hdmi(dev, priv);
>         if (rc) {
>                 DPU_ERROR("initialize HDMI failed, rc = %d\n", rc);
>                 return rc;
> --
> 2.34.1
>


--
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization
  2024-03-04 13:06 ` Dmitry Baryshkov
@ 2024-03-04 18:07   ` Abhinav Kumar
  0 siblings, 0 replies; 6+ messages in thread
From: Abhinav Kumar @ 2024-03-04 18:07 UTC (permalink / raw)
  To: Dmitry Baryshkov
  Cc: freedreno, Rob Clark, Sean Paul, Marijn Suijten, David Airlie,
	Daniel Vetter, dri-devel, quic_parellan, quic_jesszhan,
	linux-arm-msm, linux-kernel



On 3/4/2024 5:06 AM, Dmitry Baryshkov wrote:
> On Wed, 28 Feb 2024 at 21:47, Abhinav Kumar <quic_abhinavk@quicinc.com> wrote:
>>
>> dpu_kms seems unused while initializing DSI, HDMI and DP through
>> their respective _dpu_kms_initialize_* functions.
>>
>> Hence lets drop the parameter altogether.
>>
>> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
>> ---
>>   drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 15 ++++++---------
>>   1 file changed, 6 insertions(+), 9 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
>> index 2af62d8fa9a7..ab924ac78c9b 100644
>> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
>> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
>> @@ -494,8 +494,7 @@ static void dpu_kms_wait_flush(struct msm_kms *kms, unsigned crtc_mask)
>>   }
>>
>>   static int _dpu_kms_initialize_dsi(struct drm_device *dev,
>> -                                   struct msm_drm_private *priv,
>> -                                   struct dpu_kms *dpu_kms)
>> +                                  struct msm_drm_private *priv)
>>   {
>>          struct drm_encoder *encoder = NULL;
>>          struct msm_display_info info;
>> @@ -558,8 +557,7 @@ static int _dpu_kms_initialize_dsi(struct drm_device *dev,
>>   }
>>
>>   static int _dpu_kms_initialize_displayport(struct drm_device *dev,
>> -                                           struct msm_drm_private *priv,
>> -                                           struct dpu_kms *dpu_kms)
>> +                                          struct msm_drm_private *priv)
> 
> This breaks now on top of YUV patchset:
> 
> drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c: In function
> '_dpu_kms_initialize_displayport':
> drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c:583:35: error: 'dpu_kms'
> undeclared (first use in this function)
> 583 | yuv_supported = !!dpu_kms->catalog->cdm;
> 
> As this requires adding of the yuv_supported argument, let's consider
> moving it backwards: for  _dpu_kms_initialize_writeback() we can get
> format_list and n_formats from the dpu_kms.
> 

Yes, my bad, I realized after sending this that my branch did not have 
CDM changes yet.

Let me rework and post this on top of the latest tree.

> 
>>   {
>>          struct drm_encoder *encoder = NULL;
>>          struct msm_display_info info;
>> @@ -592,8 +590,7 @@ static int _dpu_kms_initialize_displayport(struct drm_device *dev,
>>   }
>>
>>   static int _dpu_kms_initialize_hdmi(struct drm_device *dev,
>> -                                   struct msm_drm_private *priv,
>> -                                   struct dpu_kms *dpu_kms)
>> +                                   struct msm_drm_private *priv)
>>   {
>>          struct drm_encoder *encoder = NULL;
>>          struct msm_display_info info;
>> @@ -671,19 +668,19 @@ static int _dpu_kms_setup_displays(struct drm_device *dev,
>>          int rc = 0;
>>          int i;
>>
>> -       rc = _dpu_kms_initialize_dsi(dev, priv, dpu_kms);
>> +       rc = _dpu_kms_initialize_dsi(dev, priv);
>>          if (rc) {
>>                  DPU_ERROR("initialize_dsi failed, rc = %d\n", rc);
>>                  return rc;
>>          }
>>
>> -       rc = _dpu_kms_initialize_displayport(dev, priv, dpu_kms);
>> +       rc = _dpu_kms_initialize_displayport(dev, priv);
>>          if (rc) {
>>                  DPU_ERROR("initialize_DP failed, rc = %d\n", rc);
>>                  return rc;
>>          }
>>
>> -       rc = _dpu_kms_initialize_hdmi(dev, priv, dpu_kms);
>> +       rc = _dpu_kms_initialize_hdmi(dev, priv);
>>          if (rc) {
>>                  DPU_ERROR("initialize HDMI failed, rc = %d\n", rc);
>>                  return rc;
>> --
>> 2.34.1
>>
> 
> 
> --
> With best wishes
> Dmitry

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-03-04 18:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-28 19:47 [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Abhinav Kumar
2024-02-28 19:47 ` [PATCH 2/2] drm/msm/dpu: drop dpu_kms from _dpu_kms_initialize_writeback Abhinav Kumar
2024-03-04  9:46   ` Dmitry Baryshkov
2024-03-04  9:44 ` [PATCH 1/2] drm/msm/dpu: drop unused dpu_kms from interface initialization Dmitry Baryshkov
2024-03-04 13:06 ` Dmitry Baryshkov
2024-03-04 18:07   ` Abhinav Kumar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).