diff mbox series

drm/i915/display: Get bigjoiner config before dsc config during readout

Message ID 20231122064627.905828-1-ankit.k.nautiyal@intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915/display: Get bigjoiner config before dsc config during readout | expand

Commit Message

Nautiyal, Ankit K Nov. 22, 2023, 6:46 a.m. UTC
Currently we get bigjoiner config after the dsc get config, during HW
readout.
Since dsc_get_config now uses bigjoiner flags/pipes to compute DSC PPS
parameter pic_width, this results in a state mismatch when Bigjoiner
and DSC are used together.

So call get bigjoiner config before calling dsc get config function.

Fixes: 8b70b5691704 ("drm/i915/vdsc: Fill the intel_dsc_get_pps_config function")
Cc: Suraj Kandpal <suraj.kandpal@intel.com>
Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>

Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Suraj Kandpal Nov. 23, 2023, 6:27 a.m. UTC | #1
> -----Original Message-----
> From: Nautiyal, Ankit K <ankit.k.nautiyal@intel.com>
> Sent: Wednesday, November 22, 2023 12:16 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: Kandpal, Suraj <suraj.kandpal@intel.com>; Manna, Animesh
> <animesh.manna@intel.com>; jani.nikula@linux.intel.com; Nautiyal, Ankit K
> <ankit.k.nautiyal@intel.com>
> Subject: [PATCH] drm/i915/display: Get bigjoiner config before dsc config
> during readout
> 
> Currently we get bigjoiner config after the dsc get config, during HW readout.
> Since dsc_get_config now uses bigjoiner flags/pipes to compute DSC PPS
> parameter pic_width, this results in a state mismatch when Bigjoiner and DSC
> are used together.
> 
> So call get bigjoiner config before calling dsc get config function.
> 

LGTM.

Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>

> Fixes: 8b70b5691704 ("drm/i915/vdsc: Fill the intel_dsc_get_pps_config
> function")
> Cc: Suraj Kandpal <suraj.kandpal@intel.com>
> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> Cc: Animesh Manna <animesh.manna@intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> 
> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index 959db3f61e84..e086caf3963d 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -3694,8 +3694,8 @@ static bool hsw_get_pipe_config(struct intel_crtc
> *crtc,
>  	if (!active)
>  		goto out;
> 
> -	intel_dsc_get_config(pipe_config);
>  	intel_bigjoiner_get_config(pipe_config);
> +	intel_dsc_get_config(pipe_config);
> 
>  	if (!transcoder_is_dsi(pipe_config->cpu_transcoder) ||
>  	    DISPLAY_VER(dev_priv) >= 11)
> --
> 2.40.1
Nautiyal, Ankit K Dec. 13, 2023, 9:30 a.m. UTC | #2
On 11/23/2023 11:57 AM, Kandpal, Suraj wrote:
>
>> -----Original Message-----
>> From: Nautiyal, Ankit K <ankit.k.nautiyal@intel.com>
>> Sent: Wednesday, November 22, 2023 12:16 PM
>> To: intel-gfx@lists.freedesktop.org
>> Cc: Kandpal, Suraj <suraj.kandpal@intel.com>; Manna, Animesh
>> <animesh.manna@intel.com>; jani.nikula@linux.intel.com; Nautiyal, Ankit K
>> <ankit.k.nautiyal@intel.com>
>> Subject: [PATCH] drm/i915/display: Get bigjoiner config before dsc config
>> during readout
>>
>> Currently we get bigjoiner config after the dsc get config, during HW readout.
>> Since dsc_get_config now uses bigjoiner flags/pipes to compute DSC PPS
>> parameter pic_width, this results in a state mismatch when Bigjoiner and DSC
>> are used together.
>>
>> So call get bigjoiner config before calling dsc get config function.
>>
> LGTM.
>
> Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>

Thanks for the review, pushed to drm-intel-next.

Regards,

Ankit

>
>> Fixes: 8b70b5691704 ("drm/i915/vdsc: Fill the intel_dsc_get_pps_config
>> function")
>> Cc: Suraj Kandpal <suraj.kandpal@intel.com>
>> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
>> Cc: Animesh Manna <animesh.manna@intel.com>
>> Cc: Jani Nikula <jani.nikula@intel.com>
>>
>> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
>> ---
>>   drivers/gpu/drm/i915/display/intel_display.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_display.c
>> b/drivers/gpu/drm/i915/display/intel_display.c
>> index 959db3f61e84..e086caf3963d 100644
>> --- a/drivers/gpu/drm/i915/display/intel_display.c
>> +++ b/drivers/gpu/drm/i915/display/intel_display.c
>> @@ -3694,8 +3694,8 @@ static bool hsw_get_pipe_config(struct intel_crtc
>> *crtc,
>>   	if (!active)
>>   		goto out;
>>
>> -	intel_dsc_get_config(pipe_config);
>>   	intel_bigjoiner_get_config(pipe_config);
>> +	intel_dsc_get_config(pipe_config);
>>
>>   	if (!transcoder_is_dsi(pipe_config->cpu_transcoder) ||
>>   	    DISPLAY_VER(dev_priv) >= 11)
>> --
>> 2.40.1
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 959db3f61e84..e086caf3963d 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -3694,8 +3694,8 @@  static bool hsw_get_pipe_config(struct intel_crtc *crtc,
 	if (!active)
 		goto out;
 
-	intel_dsc_get_config(pipe_config);
 	intel_bigjoiner_get_config(pipe_config);
+	intel_dsc_get_config(pipe_config);
 
 	if (!transcoder_is_dsi(pipe_config->cpu_transcoder) ||
 	    DISPLAY_VER(dev_priv) >= 11)