diff mbox series

[1/1,SRU,G,H,Unstable,OEM-5.10] UBUNTU: SAUCE: drm/i915/display: Disable PSR2 if TGL Display stepping is B1 from A0

Message ID 20210429084526.409635-2-acelan.kao@canonical.com
State New
Headers show
Series On TGL platforms screen shows garbage when browsing websites by scrolling mouse | expand

Commit Message

AceLan Kao April 29, 2021, 8:45 a.m. UTC
From: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>

BugLink: https://bugs.launchpad.net/bugs/1926579

TGL PSR2 hardware tracking shows momentary flicker and screen shift if
TGL Display stepping is B1 from A0.
It has been fixed from TGL Display stepping C0.

HSDES: 18015970021
HSDES: 2209313811
BSpec: 55378

Cc: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
(backported from https://patchwork.freedesktop.org/patch/430153/)
Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
---
 drivers/gpu/drm/i915/display/intel_psr.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

Comments

Stefan Bader May 3, 2021, 7:17 a.m. UTC | #1
On 29.04.21 10:45, AceLan Kao wrote:
> From: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
> 
> BugLink: https://bugs.launchpad.net/bugs/1926579
> 
> TGL PSR2 hardware tracking shows momentary flicker and screen shift if
> TGL Display stepping is B1 from A0.
> It has been fixed from TGL Display stepping C0.
> 
> HSDES: 18015970021
> HSDES: 2209313811
> BSpec: 55378
> 
> Cc: José Roberto de Souza <jose.souza@intel.com>
> Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
> (backported from https://patchwork.freedesktop.org/patch/430153/)
> Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
> ---
>   drivers/gpu/drm/i915/display/intel_psr.c | 20 ++++++++++++++++++++
>   1 file changed, 20 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
> index 61fb8fdcb5e81..0eaa6f8364138 100644
> --- a/drivers/gpu/drm/i915/display/intel_psr.c
> +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> @@ -812,6 +812,26 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
>   		return false;
>   	}
>   
> +	/*
> +	 * Symbolic steppings that do not match the hardware. These are valid both as gt
> +	 * and display steppings as symbolic names.
> +	 */
> +	enum intel_step {
> +		STEP_NONE = 0,
> +		STEP_A0,
> +		STEP_A2,
> +		STEP_B0,
> +		STEP_B1,
> +		STEP_C0,
> +		STEP_D0,
> +	};
> +
> +	/* Wa_2209313811 */
> +	if (IS_TGL_DISP_REVID(dev_priv, STEP_A0, STEP_B1)) {
> +		drm_dbg_kms(&dev_priv->drm, "PSR2 is not supported this Display stepping\n");
> +		return false;
> +	}
> +
>   	tgl_dc3co_exitline_compute_config(intel_dp, crtc_state);
>   	return true;
>   }
>
Paolo Pisati May 4, 2021, 9:55 a.m. UTC | #2
On Thu, Apr 29, 2021 at 04:45:26PM +0800, AceLan Kao wrote:
> From: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
> 
> BugLink: https://bugs.launchpad.net/bugs/1926579
Tim Gardner May 4, 2021, 2:32 p.m. UTC | #3
Acked-by: Tim Gardner <tim.gardner@canonical.com>

Self contained. Little chance of regression.

On 4/29/21 2:45 AM, AceLan Kao wrote:
> From: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
> 
> BugLink: https://bugs.launchpad.net/bugs/1926579
> 
> TGL PSR2 hardware tracking shows momentary flicker and screen shift if
> TGL Display stepping is B1 from A0.
> It has been fixed from TGL Display stepping C0.
> 
> HSDES: 18015970021
> HSDES: 2209313811
> BSpec: 55378
> 
> Cc: José Roberto de Souza <jose.souza@intel.com>
> Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
> (backported from https://patchwork.freedesktop.org/patch/430153/)
> Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
> ---
>   drivers/gpu/drm/i915/display/intel_psr.c | 20 ++++++++++++++++++++
>   1 file changed, 20 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
> index 61fb8fdcb5e81..0eaa6f8364138 100644
> --- a/drivers/gpu/drm/i915/display/intel_psr.c
> +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> @@ -812,6 +812,26 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
>   		return false;
>   	}
>   
> +	/*
> +	 * Symbolic steppings that do not match the hardware. These are valid both as gt
> +	 * and display steppings as symbolic names.
> +	 */
> +	enum intel_step {
> +		STEP_NONE = 0,
> +		STEP_A0,
> +		STEP_A2,
> +		STEP_B0,
> +		STEP_B1,
> +		STEP_C0,
> +		STEP_D0,
> +	};
> +
> +	/* Wa_2209313811 */
> +	if (IS_TGL_DISP_REVID(dev_priv, STEP_A0, STEP_B1)) {
> +		drm_dbg_kms(&dev_priv->drm, "PSR2 is not supported this Display stepping\n");
> +		return false;
> +	}
> +
>   	tgl_dc3co_exitline_compute_config(intel_dp, crtc_state);
>   	return true;
>   }
>
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 61fb8fdcb5e81..0eaa6f8364138 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -812,6 +812,26 @@  static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
 		return false;
 	}
 
+	/*
+	 * Symbolic steppings that do not match the hardware. These are valid both as gt
+	 * and display steppings as symbolic names.
+	 */
+	enum intel_step {
+		STEP_NONE = 0,
+		STEP_A0,
+		STEP_A2,
+		STEP_B0,
+		STEP_B1,
+		STEP_C0,
+		STEP_D0,
+	};
+
+	/* Wa_2209313811 */
+	if (IS_TGL_DISP_REVID(dev_priv, STEP_A0, STEP_B1)) {
+		drm_dbg_kms(&dev_priv->drm, "PSR2 is not supported this Display stepping\n");
+		return false;
+	}
+
 	tgl_dc3co_exitline_compute_config(intel_dp, crtc_state);
 	return true;
 }