diff mbox series

drm/i915/display : Remove support for interlace mode

Message ID 20230614040749.1702127-1-ankit.k.nautiyal@intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915/display : Remove support for interlace mode | expand

Commit Message

Nautiyal, Ankit K June 14, 2023, 4:07 a.m. UTC
There are multiple panels with which Interlace mode is seen to cause
flickering (interlacing artifacts) with different platforms.

The issue is seen with both HDMI, DP with CML, CFL, ICL, EHL with
different display models from Acer, Benq, Dell etc.
There are some models where the issue is not seen with same setup.

Due to this, cases where multiple display are configured in clone mode,
sometimes interlaced mode gets picked up in one of the displays
and flickers are seen.

Since its difficult to pin point if issue is due to the HW or due to
panels, removing interlace mode for DP and HDMI till this is
root caused.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8395

Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
 drivers/gpu/drm/i915/display/intel_dp.c   | 3 ---
 drivers/gpu/drm/i915/display/intel_hdmi.c | 3 ---
 2 files changed, 6 deletions(-)

Comments

Ville Syrjälä June 14, 2023, 12:38 p.m. UTC | #1
On Wed, Jun 14, 2023 at 09:37:49AM +0530, Ankit Nautiyal wrote:
> There are multiple panels with which Interlace mode is seen to cause
> flickering (interlacing artifacts) with different platforms.
> 
> The issue is seen with both HDMI, DP with CML, CFL, ICL, EHL with
> different display models from Acer, Benq, Dell etc.
> There are some models where the issue is not seen with same setup.
> 
> Due to this, cases where multiple display are configured in clone mode,
> sometimes interlaced mode gets picked up in one of the displays
> and flickers are seen.
> 
> Since its difficult to pin point if issue is due to the HW or due to
> panels, removing interlace mode for DP and HDMI till this is
> root caused.

I though people already confirmewd the problem on non-Intel hw?
So seems pretty clear that it's the displays themselves that are
garbage.

> 
> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8395
> 
> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_dp.c   | 3 ---
>  drivers/gpu/drm/i915/display/intel_hdmi.c | 3 ---
>  2 files changed, 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index f4192fda1a76..78d8ceb590a3 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -5665,9 +5665,6 @@ intel_dp_init_connector(struct intel_digital_port *dig_port,
>  	drm_connector_init(dev, connector, &intel_dp_connector_funcs, type);
>  	drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs);
>  
> -	if (!HAS_GMCH(dev_priv) && DISPLAY_VER(dev_priv) < 12)
> -		connector->interlace_allowed = true;
> -
>  	intel_connector->polled = DRM_CONNECTOR_POLL_HPD;
>  
>  	intel_dp_aux_init(intel_dp);
> diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
> index 7ac5e6c5e00d..9b3ea307ef40 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
> @@ -2998,9 +2998,6 @@ void intel_hdmi_init_connector(struct intel_digital_port *dig_port,
>  				    ddc);
>  	drm_connector_helper_add(connector, &intel_hdmi_connector_helper_funcs);
>  
> -	if (DISPLAY_VER(dev_priv) < 12)
> -		connector->interlace_allowed = true;
> -
>  	connector->stereo_allowed = true;
>  
>  	if (DISPLAY_VER(dev_priv) >= 10)
> -- 
> 2.40.1
Jani Nikula June 26, 2023, 12:35 p.m. UTC | #2
On Wed, 14 Jun 2023, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Wed, Jun 14, 2023 at 09:37:49AM +0530, Ankit Nautiyal wrote:
>> There are multiple panels with which Interlace mode is seen to cause
>> flickering (interlacing artifacts) with different platforms.
>> 
>> The issue is seen with both HDMI, DP with CML, CFL, ICL, EHL with
>> different display models from Acer, Benq, Dell etc.
>> There are some models where the issue is not seen with same setup.
>> 
>> Due to this, cases where multiple display are configured in clone mode,
>> sometimes interlaced mode gets picked up in one of the displays
>> and flickers are seen.
>> 
>> Since its difficult to pin point if issue is due to the HW or due to
>> panels, removing interlace mode for DP and HDMI till this is
>> root caused.
>
> I though people already confirmewd the problem on non-Intel hw?
> So seems pretty clear that it's the displays themselves that are
> garbage.

Moreover, later means never. If you brush it under the carpet, nobody's
ever going to root cause it.

BR,
Jani.


>
>> 
>> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8395
>> 
>> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
>> ---
>>  drivers/gpu/drm/i915/display/intel_dp.c   | 3 ---
>>  drivers/gpu/drm/i915/display/intel_hdmi.c | 3 ---
>>  2 files changed, 6 deletions(-)
>> 
>> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
>> index f4192fda1a76..78d8ceb590a3 100644
>> --- a/drivers/gpu/drm/i915/display/intel_dp.c
>> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
>> @@ -5665,9 +5665,6 @@ intel_dp_init_connector(struct intel_digital_port *dig_port,
>>  	drm_connector_init(dev, connector, &intel_dp_connector_funcs, type);
>>  	drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs);
>>  
>> -	if (!HAS_GMCH(dev_priv) && DISPLAY_VER(dev_priv) < 12)
>> -		connector->interlace_allowed = true;
>> -
>>  	intel_connector->polled = DRM_CONNECTOR_POLL_HPD;
>>  
>>  	intel_dp_aux_init(intel_dp);
>> diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
>> index 7ac5e6c5e00d..9b3ea307ef40 100644
>> --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
>> +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
>> @@ -2998,9 +2998,6 @@ void intel_hdmi_init_connector(struct intel_digital_port *dig_port,
>>  				    ddc);
>>  	drm_connector_helper_add(connector, &intel_hdmi_connector_helper_funcs);
>>  
>> -	if (DISPLAY_VER(dev_priv) < 12)
>> -		connector->interlace_allowed = true;
>> -
>>  	connector->stereo_allowed = true;
>>  
>>  	if (DISPLAY_VER(dev_priv) >= 10)
>> -- 
>> 2.40.1
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index f4192fda1a76..78d8ceb590a3 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -5665,9 +5665,6 @@  intel_dp_init_connector(struct intel_digital_port *dig_port,
 	drm_connector_init(dev, connector, &intel_dp_connector_funcs, type);
 	drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs);
 
-	if (!HAS_GMCH(dev_priv) && DISPLAY_VER(dev_priv) < 12)
-		connector->interlace_allowed = true;
-
 	intel_connector->polled = DRM_CONNECTOR_POLL_HPD;
 
 	intel_dp_aux_init(intel_dp);
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 7ac5e6c5e00d..9b3ea307ef40 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -2998,9 +2998,6 @@  void intel_hdmi_init_connector(struct intel_digital_port *dig_port,
 				    ddc);
 	drm_connector_helper_add(connector, &intel_hdmi_connector_helper_funcs);
 
-	if (DISPLAY_VER(dev_priv) < 12)
-		connector->interlace_allowed = true;
-
 	connector->stereo_allowed = true;
 
 	if (DISPLAY_VER(dev_priv) >= 10)