Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [v2] drm/i915/dp: Add FEC Enable Retry mechanism
@ 2024-10-08 12:53 Chaitanya Kumar Borah
  2024-10-08 14:17 ` ✓ Fi.CI.BAT: success for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Chaitanya Kumar Borah @ 2024-10-08 12:53 UTC (permalink / raw)
  To: intel-gfx, intel-xe; +Cc: nagavenkata.srikanth.v, jani.nikula

From PTL, FEC_DECODE_EN sequence can be sent to a DPRX independent
of TRANS_CONF enable. This allows us to re-issue an FEC_DECODE_EN
sequence without re-doing the whole mode set sequence. This separate
control over FEC_ECODE_EN/DIS sequence enables us to have a retry
mechanism in case the DPRX does not respond with an FEC_ENABLE
within the stipulated 5ms.

v2:
 - Refactor code to avoid duplication and improve readability [Jani]
 - In case of PTL, wait for FEC status directly after FEC enable [Srikanth]
 - Wait for FEC_ENABLE_LIVE_STATUS to be cleared before
   re-enabling FEC [Srikanth]

Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
---
 drivers/gpu/drm/i915/display/intel_ddi.c    | 79 +++++++++++++++++----
 drivers/gpu/drm/i915/display/intel_ddi.h    |  2 +-
 drivers/gpu/drm/i915/display/intel_dp_mst.c |  4 +-
 3 files changed, 67 insertions(+), 18 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
index fe1ded6707f9..047816a427d5 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -2256,30 +2256,74 @@ static int read_fec_detected_status(struct drm_dp_aux *aux)
 	return status;
 }
 
-static void wait_for_fec_detected(struct drm_dp_aux *aux, bool enabled)
+static void retry_fec_enable(struct intel_encoder *encoder,
+			     const struct intel_crtc_state *crtc_state,
+		struct drm_dp_aux *aux)
+{
+	struct drm_i915_private *i915 = to_i915(aux->drm_dev);
+	int ret = 0;
+
+	ret = intel_de_wait_for_clear(i915, dp_tp_status_reg(encoder, crtc_state),
+				      DP_TP_STATUS_FEC_ENABLE_LIVE, 1);
+
+	if (ret)
+		drm_err(&i915->drm,
+			"Timeout waiting for FEC live state to get disabled during retry\n");
+
+	/* Clear FEC enable */
+	intel_de_rmw(i915, dp_tp_ctl_reg(encoder, crtc_state),
+		     DP_TP_CTL_FEC_ENABLE, 0);
+
+	/* Set FEC enable */
+	intel_de_rmw(i915, dp_tp_ctl_reg(encoder, crtc_state),
+		     0, DP_TP_CTL_FEC_ENABLE);
+
+	ret = intel_de_wait_for_set(i915, dp_tp_status_reg(encoder, crtc_state),
+				    DP_TP_STATUS_FEC_ENABLE_LIVE, 1);
+	if (!ret)
+		drm_dbg_kms(&i915->drm,
+			    "Timeout waiting for FEC live state to get enabled");
+}
+
+static void wait_for_fec_detected(struct intel_encoder *encoder,
+				  const struct intel_crtc_state *crtc_state,
+		struct drm_dp_aux *aux, bool enabled, bool retry)
 {
 	struct drm_i915_private *i915 = to_i915(aux->drm_dev);
 	int mask = enabled ? DP_FEC_DECODE_EN_DETECTED : DP_FEC_DECODE_DIS_DETECTED;
 	int status;
 	int err;
+	int max_retries = retry ? 3 : 1;
 
-	err = readx_poll_timeout(read_fec_detected_status, aux, status,
-				 status & mask || status < 0,
-				 10000, 200000);
+	for (int retrycount = 0; retrycount < max_retries; retrycount++) {
+		err = readx_poll_timeout(read_fec_detected_status, aux, status,
+					 status & mask || status < 0,
+					 retry ? 500 : 10000,
+					 retry ? 5000 : 200000);
 
-	if (!err && status >= 0)
-		return;
+		if (!err && status >= 0)
+			return;
 
-	if (err == -ETIMEDOUT)
-		drm_dbg_kms(&i915->drm, "Timeout waiting for FEC %s to get detected\n",
-			    str_enabled_disabled(enabled));
-	else
-		drm_dbg_kms(&i915->drm, "FEC detected status read error: %d\n", status);
+		if (err == -ETIMEDOUT) {
+			drm_dbg_kms(&i915->drm,
+				    "Timeout waiting for FEC %s to get detected, retrying (%d/%d)\n",
+				    str_enabled_disabled(enabled), retrycount + 1, max_retries);
+
+			if (retry && enabled)
+				retry_fec_enable(encoder, crtc_state, aux);
+		} else {
+			drm_dbg_kms(&i915->drm, "FEC detected status read error: %d\n", status);
+			return;
+		}
+	}
+
+	drm_err(&i915->drm, "FEC %s Failed after %d attempts\n",
+		str_enabled_disabled(enabled), max_retries);
 }
 
 void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
 				   const struct intel_crtc_state *crtc_state,
-				   bool enabled)
+				   bool enabled, bool retry)
 {
 	struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
 	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
@@ -2305,7 +2349,7 @@ void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
 	 * FEC decoding disabling so skip waiting for that.
 	 */
 	if (enabled)
-		wait_for_fec_detected(&intel_dp->aux, enabled);
+		wait_for_fec_detected(encoder, crtc_state, &intel_dp->aux, enabled, retry);
 }
 
 static void intel_ddi_enable_fec(struct intel_encoder *encoder,
@@ -2318,6 +2362,9 @@ static void intel_ddi_enable_fec(struct intel_encoder *encoder,
 
 	intel_de_rmw(dev_priv, dp_tp_ctl_reg(encoder, crtc_state),
 		     0, DP_TP_CTL_FEC_ENABLE);
+
+	if (DISPLAY_VER(dev_priv) >= 30)
+		intel_ddi_wait_for_fec_status(encoder, crtc_state, true, true);
 }
 
 static void intel_ddi_disable_fec(struct intel_encoder *encoder,
@@ -3010,7 +3057,7 @@ static void intel_disable_ddi_buf(struct intel_encoder *encoder,
 		disable_ddi_buf(encoder, crtc_state);
 	}
 
-	intel_ddi_wait_for_fec_status(encoder, crtc_state, false);
+	intel_ddi_wait_for_fec_status(encoder, crtc_state, false, false);
 }
 
 static void intel_ddi_post_disable_dp(struct intel_atomic_state *state,
@@ -3383,6 +3430,7 @@ static void intel_enable_ddi(struct intel_atomic_state *state,
 			     const struct intel_crtc_state *crtc_state,
 			     const struct drm_connector_state *conn_state)
 {
+	struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
 	struct intel_display *display = to_intel_display(encoder);
 	struct intel_crtc *pipe_crtc;
 	int i;
@@ -3394,7 +3442,8 @@ static void intel_enable_ddi(struct intel_atomic_state *state,
 
 	intel_enable_transcoder(crtc_state);
 
-	intel_ddi_wait_for_fec_status(encoder, crtc_state, true);
+	if (DISPLAY_VER(i915) < 30)
+		intel_ddi_wait_for_fec_status(encoder, crtc_state, true, false);
 
 	for_each_pipe_crtc_modeset_enable(display, pipe_crtc, crtc_state, i) {
 		const struct intel_crtc_state *pipe_crtc_state =
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.h b/drivers/gpu/drm/i915/display/intel_ddi.h
index 6d85422bdefe..981e7702e11e 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.h
+++ b/drivers/gpu/drm/i915/display/intel_ddi.h
@@ -65,7 +65,7 @@ void intel_ddi_enable_transcoder_clock(struct intel_encoder *encoder,
 void intel_ddi_disable_transcoder_clock(const  struct intel_crtc_state *crtc_state);
 void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
 				   const struct intel_crtc_state *crtc_state,
-				   bool enabled);
+				   bool enabled, bool retry);
 void intel_ddi_set_dp_msa(const struct intel_crtc_state *crtc_state,
 			  const struct drm_connector_state *conn_state);
 bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector);
diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c
index 732d7543ad06..226ac9a73a55 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -1289,8 +1289,8 @@ static void intel_mst_enable_dp(struct intel_atomic_state *state,
 
 	wait_for_act_sent(encoder, pipe_config);
 
-	if (first_mst_stream)
-		intel_ddi_wait_for_fec_status(encoder, pipe_config, true);
+	if (first_mst_stream && DISPLAY_VER(dev_priv) < 30)
+		intel_ddi_wait_for_fec_status(encoder, pipe_config, true, false);
 
 	ret = drm_dp_add_payload_part2(&intel_dp->mst_mgr,
 				       drm_atomic_get_mst_payload_state(mst_state,
-- 
2.25.1


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

* ✓ Fi.CI.BAT: success for drm/i915/dp: Add FEC Enable Retry mechanism (rev2)
  2024-10-08 12:53 [v2] drm/i915/dp: Add FEC Enable Retry mechanism Chaitanya Kumar Borah
@ 2024-10-08 14:17 ` Patchwork
  2024-10-09 15:16 ` [v2] drm/i915/dp: Add FEC Enable Retry mechanism Jani Nikula
  2024-10-09 20:12 ` ✗ Fi.CI.IGT: failure for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2024-10-08 14:17 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-gfx

[-- Attachment #1: Type: text/plain, Size: 5783 bytes --]

== Series Details ==

Series: drm/i915/dp: Add FEC Enable Retry mechanism (rev2)
URL   : https://patchwork.freedesktop.org/series/138963/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_15491 -> Patchwork_138963v2
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/index.html

Participating hosts (44 -> 42)
------------------------------

  Missing    (2): bat-rpls-4 fi-snb-2520m 

Known issues
------------

  Here are the changes found in Patchwork_138963v2 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@i915_module_load@load:
    - bat-apl-1:          [PASS][1] -> [DMESG-WARN][2] ([i915#180]) +1 other test dmesg-warn
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-apl-1/igt@i915_module_load@load.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-apl-1/igt@i915_module_load@load.html

  * igt@i915_module_load@reload:
    - bat-apl-1:          [PASS][3] -> [DMESG-WARN][4] ([i915#180] / [i915#1982]) +2 other tests dmesg-warn
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-apl-1/igt@i915_module_load@reload.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-apl-1/igt@i915_module_load@reload.html

  * igt@i915_selftest@live:
    - bat-arls-2:         [PASS][5] -> [ABORT][6] ([i915#12061] / [i915#12133])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-arls-2/igt@i915_selftest@live.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-arls-2/igt@i915_selftest@live.html

  * igt@i915_selftest@live@sanitycheck:
    - bat-apl-1:          [PASS][7] -> [DMESG-WARN][8] ([i915#11621]) +46 other tests dmesg-warn
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-apl-1/igt@i915_selftest@live@sanitycheck.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-apl-1/igt@i915_selftest@live@sanitycheck.html

  * igt@i915_selftest@live@workarounds:
    - bat-mtlp-6:         [PASS][9] -> [ABORT][10] ([i915#12216]) +1 other test abort
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
    - bat-arls-2:         [PASS][11] -> [ABORT][12] ([i915#12061])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-arls-2/igt@i915_selftest@live@workarounds.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-arls-2/igt@i915_selftest@live@workarounds.html

  * igt@kms_busy@basic:
    - bat-apl-1:          [PASS][13] -> [DMESG-WARN][14] ([i915#11621] / [i915#180] / [i915#1982]) +1 other test dmesg-warn
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-apl-1/igt@kms_busy@basic.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-apl-1/igt@kms_busy@basic.html

  * igt@kms_pm_rpm@basic-pci-d3-state:
    - bat-apl-1:          [PASS][15] -> [DMESG-WARN][16] ([i915#11621] / [i915#180]) +41 other tests dmesg-warn
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-apl-1/igt@kms_pm_rpm@basic-pci-d3-state.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-apl-1/igt@kms_pm_rpm@basic-pci-d3-state.html

  
#### Possible fixes ####

  * igt@i915_selftest@live:
    - bat-mtlp-8:         [ABORT][17] ([i915#12216]) -> [PASS][18] +1 other test pass
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-mtlp-8/igt@i915_selftest@live.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-mtlp-8/igt@i915_selftest@live.html
    - bat-dg2-11:         [ABORT][19] ([i915#12133]) -> [PASS][20]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-dg2-11/igt@i915_selftest@live.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-dg2-11/igt@i915_selftest@live.html

  * igt@i915_selftest@live@active:
    - bat-dg2-11:         [ABORT][21] ([i915#12305]) -> [PASS][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-dg2-11/igt@i915_selftest@live@active.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-dg2-11/igt@i915_selftest@live@active.html

  
#### Warnings ####

  * igt@i915_pm_rpm@module-reload:
    - bat-apl-1:          [DMESG-WARN][23] ([i915#11621]) -> [DMESG-WARN][24] ([i915#11621] / [i915#180])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/bat-apl-1/igt@i915_pm_rpm@module-reload.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/bat-apl-1/igt@i915_pm_rpm@module-reload.html

  
  [i915#11621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11621
  [i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061
  [i915#12133]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12133
  [i915#12216]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12216
  [i915#12305]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12305
  [i915#180]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/180
  [i915#1982]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1982


Build changes
-------------

  * Linux: CI_DRM_15491 -> Patchwork_138963v2

  CI-20190529: 20190529
  CI_DRM_15491: c2c031e80da1ca6b5a70dfcd7981bdbe18b8aac2 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_8059: 8059
  Patchwork_138963v2: c2c031e80da1ca6b5a70dfcd7981bdbe18b8aac2 @ git://anongit.freedesktop.org/gfx-ci/linux

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/index.html

[-- Attachment #2: Type: text/html, Size: 7512 bytes --]

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

* Re: [v2] drm/i915/dp: Add FEC Enable Retry mechanism
  2024-10-08 12:53 [v2] drm/i915/dp: Add FEC Enable Retry mechanism Chaitanya Kumar Borah
  2024-10-08 14:17 ` ✓ Fi.CI.BAT: success for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork
@ 2024-10-09 15:16 ` Jani Nikula
  2024-10-14 12:05   ` Borah, Chaitanya Kumar
  2024-10-09 20:12 ` ✗ Fi.CI.IGT: failure for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork
  2 siblings, 1 reply; 5+ messages in thread
From: Jani Nikula @ 2024-10-09 15:16 UTC (permalink / raw)
  To: Chaitanya Kumar Borah, intel-gfx, intel-xe; +Cc: nagavenkata.srikanth.v

On Tue, 08 Oct 2024, Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> wrote:
> From PTL, FEC_DECODE_EN sequence can be sent to a DPRX independent
> of TRANS_CONF enable. This allows us to re-issue an FEC_DECODE_EN
> sequence without re-doing the whole mode set sequence. This separate
> control over FEC_ECODE_EN/DIS sequence enables us to have a retry
> mechanism in case the DPRX does not respond with an FEC_ENABLE
> within the stipulated 5ms.
>
> v2:
>  - Refactor code to avoid duplication and improve readability [Jani]
>  - In case of PTL, wait for FEC status directly after FEC enable [Srikanth]
>  - Wait for FEC_ENABLE_LIVE_STATUS to be cleared before
>    re-enabling FEC [Srikanth]
>
> Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>

What you have here is really hard to understand.

> ---
>  drivers/gpu/drm/i915/display/intel_ddi.c    | 79 +++++++++++++++++----
>  drivers/gpu/drm/i915/display/intel_ddi.h    |  2 +-
>  drivers/gpu/drm/i915/display/intel_dp_mst.c |  4 +-
>  3 files changed, 67 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
> index fe1ded6707f9..047816a427d5 100644
> --- a/drivers/gpu/drm/i915/display/intel_ddi.c
> +++ b/drivers/gpu/drm/i915/display/intel_ddi.c
> @@ -2256,30 +2256,74 @@ static int read_fec_detected_status(struct drm_dp_aux *aux)
>  	return status;
>  }
>  
> -static void wait_for_fec_detected(struct drm_dp_aux *aux, bool enabled)
> +static void retry_fec_enable(struct intel_encoder *encoder,
> +			     const struct intel_crtc_state *crtc_state,
> +		struct drm_dp_aux *aux)

Probably shouldn't pass aux around.

> +{
> +	struct drm_i915_private *i915 = to_i915(aux->drm_dev);

struct intel_display for new code please.

> +	int ret = 0;

Unnecessary initialization.

> +
> +	ret = intel_de_wait_for_clear(i915, dp_tp_status_reg(encoder, crtc_state),
> +				      DP_TP_STATUS_FEC_ENABLE_LIVE, 1);
> +
> +	if (ret)
> +		drm_err(&i915->drm,
> +			"Timeout waiting for FEC live state to get disabled during retry\n");
> +
> +	/* Clear FEC enable */
> +	intel_de_rmw(i915, dp_tp_ctl_reg(encoder, crtc_state),
> +		     DP_TP_CTL_FEC_ENABLE, 0);
> +
> +	/* Set FEC enable */
> +	intel_de_rmw(i915, dp_tp_ctl_reg(encoder, crtc_state),
> +		     0, DP_TP_CTL_FEC_ENABLE);
> +
> +	ret = intel_de_wait_for_set(i915, dp_tp_status_reg(encoder, crtc_state),
> +				    DP_TP_STATUS_FEC_ENABLE_LIVE, 1);
> +	if (!ret)
> +		drm_dbg_kms(&i915->drm,
> +			    "Timeout waiting for FEC live state to get enabled");
> +}
> +
> +static void wait_for_fec_detected(struct intel_encoder *encoder,
> +				  const struct intel_crtc_state *crtc_state,
> +		struct drm_dp_aux *aux, bool enabled, bool retry)

Multiple bool parameters make for a crappy interface.

>  {
>  	struct drm_i915_private *i915 = to_i915(aux->drm_dev);
>  	int mask = enabled ? DP_FEC_DECODE_EN_DETECTED : DP_FEC_DECODE_DIS_DETECTED;
>  	int status;
>  	int err;
> +	int max_retries = retry ? 3 : 1;
>  
> -	err = readx_poll_timeout(read_fec_detected_status, aux, status,
> -				 status & mask || status < 0,
> -				 10000, 200000);
> +	for (int retrycount = 0; retrycount < max_retries; retrycount++) {
> +		err = readx_poll_timeout(read_fec_detected_status, aux, status,
> +					 status & mask || status < 0,
> +					 retry ? 500 : 10000,
> +					 retry ? 5000 : 200000);
>  
> -	if (!err && status >= 0)
> -		return;
> +		if (!err && status >= 0)
> +			return;
>  
> -	if (err == -ETIMEDOUT)
> -		drm_dbg_kms(&i915->drm, "Timeout waiting for FEC %s to get detected\n",
> -			    str_enabled_disabled(enabled));
> -	else
> -		drm_dbg_kms(&i915->drm, "FEC detected status read error: %d\n", status);
> +		if (err == -ETIMEDOUT) {
> +			drm_dbg_kms(&i915->drm,
> +				    "Timeout waiting for FEC %s to get detected, retrying (%d/%d)\n",
> +				    str_enabled_disabled(enabled), retrycount + 1, max_retries);
> +
> +			if (retry && enabled)
> +				retry_fec_enable(encoder, crtc_state, aux);

A function whose name is "wait for fec detected" really should *not*
retry itself. The point is to report status. The callers are supposed to
act on that. It's really hard to follow what's going on.

> +		} else {
> +			drm_dbg_kms(&i915->drm, "FEC detected status read error: %d\n", status);
> +			return;
> +		}
> +	}
> +
> +	drm_err(&i915->drm, "FEC %s Failed after %d attempts\n",
> +		str_enabled_disabled(enabled), max_retries);
>  }
>  
>  void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
>  				   const struct intel_crtc_state *crtc_state,
> -				   bool enabled)
> +				   bool enabled, bool retry)
>  {
>  	struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
>  	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
> @@ -2305,7 +2349,7 @@ void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
>  	 * FEC decoding disabling so skip waiting for that.
>  	 */
>  	if (enabled)
> -		wait_for_fec_detected(&intel_dp->aux, enabled);
> +		wait_for_fec_detected(encoder, crtc_state, &intel_dp->aux, enabled, retry);
>  }
>  
>  static void intel_ddi_enable_fec(struct intel_encoder *encoder,
> @@ -2318,6 +2362,9 @@ static void intel_ddi_enable_fec(struct intel_encoder *encoder,
>  
>  	intel_de_rmw(dev_priv, dp_tp_ctl_reg(encoder, crtc_state),
>  		     0, DP_TP_CTL_FEC_ENABLE);
> +
> +	if (DISPLAY_VER(dev_priv) >= 30)
> +		intel_ddi_wait_for_fec_status(encoder, crtc_state, true, true);

Ugh. So I was trying to say that I don't want duplication of fec
enable. But you still have that. Both intel_ddi_enable_fec() and
retry_fec_enable() have it.

It's probably intel_ddi_enable_fec() that should try multiple times for
display version 30+. Right here.

Adding the retries in "wait for status" is odd.

Add building blocks for doing parts of what needs to be done, and then
drive them at the high level.

>  }
>  
>  static void intel_ddi_disable_fec(struct intel_encoder *encoder,
> @@ -3010,7 +3057,7 @@ static void intel_disable_ddi_buf(struct intel_encoder *encoder,
>  		disable_ddi_buf(encoder, crtc_state);
>  	}
>  
> -	intel_ddi_wait_for_fec_status(encoder, crtc_state, false);
> +	intel_ddi_wait_for_fec_status(encoder, crtc_state, false, false);
>  }
>  
>  static void intel_ddi_post_disable_dp(struct intel_atomic_state *state,
> @@ -3383,6 +3430,7 @@ static void intel_enable_ddi(struct intel_atomic_state *state,
>  			     const struct intel_crtc_state *crtc_state,
>  			     const struct drm_connector_state *conn_state)
>  {
> +	struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
>  	struct intel_display *display = to_intel_display(encoder);
>  	struct intel_crtc *pipe_crtc;
>  	int i;
> @@ -3394,7 +3442,8 @@ static void intel_enable_ddi(struct intel_atomic_state *state,
>  
>  	intel_enable_transcoder(crtc_state);
>  
> -	intel_ddi_wait_for_fec_status(encoder, crtc_state, true);
> +	if (DISPLAY_VER(i915) < 30)
> +		intel_ddi_wait_for_fec_status(encoder, crtc_state, true, false);

Presumably there's no harm in waiting on all platforms here. It gets
tricky with all the display version checks.

>  
>  	for_each_pipe_crtc_modeset_enable(display, pipe_crtc, crtc_state, i) {
>  		const struct intel_crtc_state *pipe_crtc_state =
> diff --git a/drivers/gpu/drm/i915/display/intel_ddi.h b/drivers/gpu/drm/i915/display/intel_ddi.h
> index 6d85422bdefe..981e7702e11e 100644
> --- a/drivers/gpu/drm/i915/display/intel_ddi.h
> +++ b/drivers/gpu/drm/i915/display/intel_ddi.h
> @@ -65,7 +65,7 @@ void intel_ddi_enable_transcoder_clock(struct intel_encoder *encoder,
>  void intel_ddi_disable_transcoder_clock(const  struct intel_crtc_state *crtc_state);
>  void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
>  				   const struct intel_crtc_state *crtc_state,
> -				   bool enabled);
> +				   bool enabled, bool retry);
>  void intel_ddi_set_dp_msa(const struct intel_crtc_state *crtc_state,
>  			  const struct drm_connector_state *conn_state);
>  bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector);
> diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c
> index 732d7543ad06..226ac9a73a55 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
> @@ -1289,8 +1289,8 @@ static void intel_mst_enable_dp(struct intel_atomic_state *state,
>  
>  	wait_for_act_sent(encoder, pipe_config);
>  
> -	if (first_mst_stream)
> -		intel_ddi_wait_for_fec_status(encoder, pipe_config, true);
> +	if (first_mst_stream && DISPLAY_VER(dev_priv) < 30)
> +		intel_ddi_wait_for_fec_status(encoder, pipe_config, true, false);

Ditto.

>  
>  	ret = drm_dp_add_payload_part2(&intel_dp->mst_mgr,
>  				       drm_atomic_get_mst_payload_state(mst_state,

-- 
Jani Nikula, Intel

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

* ✗ Fi.CI.IGT: failure for drm/i915/dp: Add FEC Enable Retry mechanism (rev2)
  2024-10-08 12:53 [v2] drm/i915/dp: Add FEC Enable Retry mechanism Chaitanya Kumar Borah
  2024-10-08 14:17 ` ✓ Fi.CI.BAT: success for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork
  2024-10-09 15:16 ` [v2] drm/i915/dp: Add FEC Enable Retry mechanism Jani Nikula
@ 2024-10-09 20:12 ` Patchwork
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2024-10-09 20:12 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-gfx

[-- Attachment #1: Type: text/plain, Size: 100277 bytes --]

== Series Details ==

Series: drm/i915/dp: Add FEC Enable Retry mechanism (rev2)
URL   : https://patchwork.freedesktop.org/series/138963/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_15491_full -> Patchwork_138963v2_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with Patchwork_138963v2_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_138963v2_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

Participating hosts (8 -> 9)
------------------------------

  Additional (1): shard-glk-0 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in Patchwork_138963v2_full:

### IGT changes ###

#### Possible regressions ####

  * igt@gem_exec_suspend@basic-s3@lmem0:
    - shard-dg2:          [PASS][1] -> [INCOMPLETE][2] +3 other tests incomplete
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-10/igt@gem_exec_suspend@basic-s3@lmem0.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@gem_exec_suspend@basic-s3@lmem0.html

  * igt@kms_cursor_crc@cursor-random-64x64@pipe-d-edp-1:
    - shard-mtlp:         [PASS][3] -> [FAIL][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-mtlp-1/igt@kms_cursor_crc@cursor-random-64x64@pipe-d-edp-1.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-2/igt@kms_cursor_crc@cursor-random-64x64@pipe-d-edp-1.html

  * igt@kms_flip@plain-flip-ts-check-interruptible@d-hdmi-a3:
    - shard-dg1:          [PASS][5] -> [FAIL][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-12/igt@kms_flip@plain-flip-ts-check-interruptible@d-hdmi-a3.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-12/igt@kms_flip@plain-flip-ts-check-interruptible@d-hdmi-a3.html

  
#### Warnings ####

  * igt@kms_flip@2x-wf_vblank-ts-check@ac-hdmi-a1-hdmi-a2:
    - shard-glk:          [FAIL][7] ([i915#2122]) -> [FAIL][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk7/igt@kms_flip@2x-wf_vblank-ts-check@ac-hdmi-a1-hdmi-a2.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk6/igt@kms_flip@2x-wf_vblank-ts-check@ac-hdmi-a1-hdmi-a2.html

  
Known issues
------------

  Here are the changes found in Patchwork_138963v2_full that come from known issues:

### CI changes ###

#### Possible fixes ####

  * boot:
    - shard-dg1:          ([PASS][9], [PASS][10], [PASS][11], [PASS][12], [PASS][13], [PASS][14], [FAIL][15], [PASS][16], [PASS][17], [PASS][18], [PASS][19], [PASS][20], [PASS][21], [PASS][22], [PASS][23], [PASS][24], [PASS][25], [PASS][26], [PASS][27], [PASS][28], [PASS][29], [PASS][30], [PASS][31], [PASS][32], [PASS][33]) -> ([PASS][34], [PASS][35], [PASS][36], [PASS][37], [PASS][38], [PASS][39], [PASS][40], [PASS][41], [PASS][42], [PASS][43], [PASS][44], [PASS][45], [PASS][46], [PASS][47], [PASS][48], [PASS][49], [PASS][50], [PASS][51], [PASS][52], [PASS][53], [PASS][54], [PASS][55], [PASS][56], [PASS][57], [PASS][58])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-12/boot.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-12/boot.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-12/boot.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-12/boot.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-13/boot.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-13/boot.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-13/boot.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-14/boot.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-14/boot.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-14/boot.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-15/boot.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-15/boot.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-15/boot.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-16/boot.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-16/boot.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-16/boot.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-17/boot.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-17/boot.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-17/boot.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-18/boot.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-18/boot.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-18/boot.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-19/boot.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-19/boot.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-19/boot.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-14/boot.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-14/boot.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-12/boot.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/boot.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/boot.html
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-12/boot.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/boot.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/boot.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/boot.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/boot.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-17/boot.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-17/boot.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-17/boot.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-17/boot.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-16/boot.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-16/boot.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-16/boot.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/boot.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-15/boot.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-15/boot.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/boot.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-15/boot.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-14/boot.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-14/boot.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/boot.html

  

### IGT changes ###

#### Issues hit ####

  * igt@device_reset@cold-reset-bound:
    - shard-dg1:          NOTRUN -> [SKIP][59] ([i915#11078])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/igt@device_reset@cold-reset-bound.html
    - shard-rkl:          NOTRUN -> [SKIP][60] ([i915#11078])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@device_reset@cold-reset-bound.html

  * igt@drm_fdinfo@most-busy-check-all:
    - shard-dg1:          NOTRUN -> [SKIP][61] ([i915#8414]) +5 other tests skip
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/igt@drm_fdinfo@most-busy-check-all.html

  * igt@fbdev@pan:
    - shard-dg2:          [PASS][62] -> [SKIP][63] ([i915#2582])
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@fbdev@pan.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@fbdev@pan.html

  * igt@gem_busy@close-race:
    - shard-dg1:          NOTRUN -> [FAIL][64] ([i915#12297])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_busy@close-race.html

  * igt@gem_ccs@block-multicopy-compressed:
    - shard-rkl:          NOTRUN -> [SKIP][65] ([i915#9323])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@gem_ccs@block-multicopy-compressed.html

  * igt@gem_ccs@ctrl-surf-copy-new-ctx:
    - shard-dg1:          NOTRUN -> [SKIP][66] ([i915#9323])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_ccs@ctrl-surf-copy-new-ctx.html

  * igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0:
    - shard-dg2:          NOTRUN -> [INCOMPLETE][67] ([i915#7297])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-1/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0.html

  * igt@gem_ctx_engines@invalid-engines:
    - shard-rkl:          [PASS][68] -> [FAIL][69] ([i915#12065])
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-5/igt@gem_ctx_engines@invalid-engines.html
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-5/igt@gem_ctx_engines@invalid-engines.html

  * igt@gem_ctx_persistence@engines-mixed-process:
    - shard-snb:          NOTRUN -> [SKIP][70] ([i915#1099])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb7/igt@gem_ctx_persistence@engines-mixed-process.html

  * igt@gem_ctx_persistence@hang:
    - shard-dg1:          NOTRUN -> [SKIP][71] ([i915#8555])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_ctx_persistence@hang.html

  * igt@gem_ctx_persistence@heartbeat-many:
    - shard-mtlp:         NOTRUN -> [SKIP][72] ([i915#8555])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@gem_ctx_persistence@heartbeat-many.html

  * igt@gem_eio@kms:
    - shard-dg1:          [PASS][73] -> [FAIL][74] ([i915#5784])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-14/igt@gem_eio@kms.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/igt@gem_eio@kms.html

  * igt@gem_exec_balancer@bonded-dual:
    - shard-dg1:          NOTRUN -> [SKIP][75] ([i915#4771])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_exec_balancer@bonded-dual.html

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-rkl:          NOTRUN -> [SKIP][76] ([i915#4525]) +2 other tests skip
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_fair@basic-none-rrul:
    - shard-dg2:          NOTRUN -> [SKIP][77] ([i915#3539] / [i915#4852])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@gem_exec_fair@basic-none-rrul.html
    - shard-dg1:          NOTRUN -> [SKIP][78] ([i915#3539] / [i915#4852])
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/igt@gem_exec_fair@basic-none-rrul.html

  * igt@gem_exec_fair@basic-none@bcs0:
    - shard-rkl:          NOTRUN -> [FAIL][79] ([i915#2842]) +4 other tests fail
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@gem_exec_fair@basic-none@bcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [PASS][80] -> [FAIL][81] ([i915#2842]) +1 other test fail
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk1/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk2/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_fair@basic-pace-solo:
    - shard-rkl:          [PASS][82] -> [FAIL][83] ([i915#2842]) +1 other test fail
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-1/igt@gem_exec_fair@basic-pace-solo.html
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@gem_exec_fair@basic-pace-solo.html

  * igt@gem_exec_fair@basic-pace@rcs0:
    - shard-rkl:          [PASS][84] -> [FAIL][85] ([i915#2876])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-7/igt@gem_exec_fair@basic-pace@rcs0.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-1/igt@gem_exec_fair@basic-pace@rcs0.html

  * igt@gem_exec_fence@submit:
    - shard-dg1:          NOTRUN -> [SKIP][86] ([i915#4812]) +1 other test skip
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_exec_fence@submit.html

  * igt@gem_exec_params@rsvd2-dirt:
    - shard-dg2:          NOTRUN -> [SKIP][87] ([i915#5107])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@gem_exec_params@rsvd2-dirt.html

  * igt@gem_exec_reloc@basic-concurrent16:
    - shard-mtlp:         NOTRUN -> [SKIP][88] ([i915#3281]) +3 other tests skip
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@gem_exec_reloc@basic-concurrent16.html

  * igt@gem_exec_reloc@basic-range:
    - shard-rkl:          NOTRUN -> [SKIP][89] ([i915#3281]) +2 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@gem_exec_reloc@basic-range.html

  * igt@gem_exec_reloc@basic-scanout:
    - shard-dg1:          NOTRUN -> [SKIP][90] ([i915#3281]) +2 other tests skip
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_exec_reloc@basic-scanout.html

  * igt@gem_exec_schedule@preempt-queue:
    - shard-mtlp:         NOTRUN -> [SKIP][91] ([i915#4537] / [i915#4812])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@gem_exec_schedule@preempt-queue.html

  * igt@gem_fenced_exec_thrash@no-spare-fences-busy-interruptible:
    - shard-dg1:          NOTRUN -> [SKIP][92] ([i915#4860])
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_fenced_exec_thrash@no-spare-fences-busy-interruptible.html

  * igt@gem_lmem_swapping@heavy-verify-multi:
    - shard-rkl:          NOTRUN -> [SKIP][93] ([i915#4613]) +2 other tests skip
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@gem_lmem_swapping@heavy-verify-multi.html

  * igt@gem_lmem_swapping@verify-random-ccs:
    - shard-glk:          NOTRUN -> [SKIP][94] ([i915#4613]) +1 other test skip
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk2/igt@gem_lmem_swapping@verify-random-ccs.html

  * igt@gem_media_vme:
    - shard-rkl:          NOTRUN -> [SKIP][95] ([i915#284])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@gem_media_vme.html

  * igt@gem_mmap_gtt@basic-small-copy-xy:
    - shard-dg1:          NOTRUN -> [SKIP][96] ([i915#4077]) +5 other tests skip
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_mmap_gtt@basic-small-copy-xy.html

  * igt@gem_mmap_wc@close:
    - shard-mtlp:         NOTRUN -> [SKIP][97] ([i915#4083]) +1 other test skip
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@gem_mmap_wc@close.html

  * igt@gem_mmap_wc@write-wc-read-gtt:
    - shard-dg1:          NOTRUN -> [SKIP][98] ([i915#4083])
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_mmap_wc@write-wc-read-gtt.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-display:
    - shard-mtlp:         NOTRUN -> [SKIP][99] ([i915#3282])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-2/igt@gem_partial_pwrite_pread@writes-after-reads-display.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-snoop:
    - shard-dg1:          NOTRUN -> [SKIP][100] ([i915#3282])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/igt@gem_partial_pwrite_pread@writes-after-reads-snoop.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-uncached:
    - shard-rkl:          NOTRUN -> [SKIP][101] ([i915#3282]) +3 other tests skip
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@gem_partial_pwrite_pread@writes-after-reads-uncached.html

  * igt@gem_pxp@display-protected-crc:
    - shard-rkl:          NOTRUN -> [SKIP][102] ([i915#4270]) +1 other test skip
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@gem_pxp@display-protected-crc.html

  * igt@gem_render_copy@linear-to-vebox-y-tiled:
    - shard-mtlp:         NOTRUN -> [SKIP][103] ([i915#8428]) +1 other test skip
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@gem_render_copy@linear-to-vebox-y-tiled.html
    - shard-dg2:          NOTRUN -> [SKIP][104] ([i915#5190] / [i915#8428])
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-3/igt@gem_render_copy@linear-to-vebox-y-tiled.html

  * igt@gem_set_tiling_vs_blt@tiled-to-tiled:
    - shard-rkl:          NOTRUN -> [SKIP][105] ([i915#8411]) +1 other test skip
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@gem_set_tiling_vs_blt@tiled-to-tiled.html

  * igt@gem_tiled_swapping@non-threaded:
    - shard-dg2:          NOTRUN -> [SKIP][106] ([i915#4077])
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-3/igt@gem_tiled_swapping@non-threaded.html

  * igt@gem_tiling_max_stride:
    - shard-mtlp:         NOTRUN -> [SKIP][107] ([i915#4077]) +2 other tests skip
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@gem_tiling_max_stride.html

  * igt@gem_userptr_blits@coherency-unsync:
    - shard-dg1:          NOTRUN -> [SKIP][108] ([i915#3297]) +1 other test skip
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gem_userptr_blits@coherency-unsync.html

  * igt@gem_userptr_blits@forbidden-operations:
    - shard-mtlp:         NOTRUN -> [SKIP][109] ([i915#3282] / [i915#3297])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@gem_userptr_blits@forbidden-operations.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-dg1:          NOTRUN -> [SKIP][110] ([i915#2527])
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@batch-without-end:
    - shard-rkl:          NOTRUN -> [SKIP][111] ([i915#2527]) +1 other test skip
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@gen9_exec_parse@batch-without-end.html

  * igt@gen9_exec_parse@shadow-peek:
    - shard-mtlp:         NOTRUN -> [SKIP][112] ([i915#2856])
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@gen9_exec_parse@shadow-peek.html

  * igt@i915_module_load@reload-with-fault-injection:
    - shard-dg1:          [PASS][113] -> [ABORT][114] ([i915#9820])
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-12/igt@i915_module_load@reload-with-fault-injection.html
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-12/igt@i915_module_load@reload-with-fault-injection.html
    - shard-dg2:          [PASS][115] -> [ABORT][116] ([i915#9820])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-1/igt@i915_module_load@reload-with-fault-injection.html
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-6/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pm_freq_api@freq-reset-multiple:
    - shard-rkl:          NOTRUN -> [SKIP][117] ([i915#8399])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@i915_pm_freq_api@freq-reset-multiple.html

  * igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0:
    - shard-dg1:          NOTRUN -> [FAIL][118] ([i915#3591]) +2 other tests fail
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@i915_pm_rc6_residency@rc6-idle@gt0-vcs0.html

  * igt@kms_addfb_basic@basic-x-tiled-legacy:
    - shard-dg1:          NOTRUN -> [SKIP][119] ([i915#4212])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/igt@kms_addfb_basic@basic-x-tiled-legacy.html

  * igt@kms_addfb_basic@bo-too-small-due-to-tiling:
    - shard-mtlp:         NOTRUN -> [SKIP][120] ([i915#4212])
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-2-y-rc-ccs-cc:
    - shard-rkl:          NOTRUN -> [SKIP][121] ([i915#8709]) +3 other tests skip
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-5/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-2-y-rc-ccs-cc.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-d-hdmi-a-3-4-mc-ccs:
    - shard-dg2:          NOTRUN -> [SKIP][122] ([i915#8709]) +11 other tests skip
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-d-hdmi-a-3-4-mc-ccs.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
    - shard-snb:          NOTRUN -> [SKIP][123] ([i915#1769])
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html

  * igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-1:
    - shard-tglu:         [PASS][124] -> [FAIL][125] ([i915#11808]) +1 other test fail
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-tglu-8/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-1.html
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-tglu-6/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-1.html

  * igt@kms_big_fb@4-tiled-8bpp-rotate-90:
    - shard-rkl:          NOTRUN -> [SKIP][126] ([i915#5286]) +3 other tests skip
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_big_fb@4-tiled-8bpp-rotate-90.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-dg1:          NOTRUN -> [SKIP][127] ([i915#4538] / [i915#5286]) +1 other test skip
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip:
    - shard-mtlp:         [PASS][128] -> [FAIL][129] ([i915#5138])
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-mtlp-6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html

  * igt@kms_big_fb@linear-64bpp-rotate-90:
    - shard-dg1:          NOTRUN -> [SKIP][130] ([i915#3638])
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/igt@kms_big_fb@linear-64bpp-rotate-90.html

  * igt@kms_big_fb@x-tiled-64bpp-rotate-270:
    - shard-rkl:          NOTRUN -> [SKIP][131] ([i915#3638]) +3 other tests skip
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_big_fb@x-tiled-64bpp-rotate-270.html

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180:
    - shard-dg2:          NOTRUN -> [SKIP][132] ([i915#9197]) +2 other tests skip
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-180:
    - shard-dg1:          NOTRUN -> [SKIP][133] ([i915#4538])
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_big_fb@yf-tiled-64bpp-rotate-180.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip:
    - shard-mtlp:         NOTRUN -> [SKIP][134]
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip.html

  * igt@kms_ccs@bad-pixel-format-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][135] ([i915#6095]) +4 other tests skip
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-tglu-8/igt@kms_ccs@bad-pixel-format-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-1.html

  * igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs:
    - shard-dg1:          NOTRUN -> [SKIP][136] ([i915#12313])
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs.html

  * igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-b-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][137] ([i915#6095]) +4 other tests skip
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-b-edp-1.html

  * igt@kms_ccs@crc-primary-basic-y-tiled-gen12-mc-ccs@pipe-d-hdmi-a-1:
    - shard-dg2:          NOTRUN -> [SKIP][138] ([i915#10307] / [i915#10434] / [i915#6095]) +2 other tests skip
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-4/igt@kms_ccs@crc-primary-basic-y-tiled-gen12-mc-ccs@pipe-d-hdmi-a-1.html

  * igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][139] ([i915#6095]) +62 other tests skip
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-1.html

  * igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs:
    - shard-mtlp:         NOTRUN -> [SKIP][140] ([i915#12313])
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs.html

  * igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs@pipe-b-hdmi-a-2:
    - shard-dg2:          NOTRUN -> [SKIP][141] ([i915#10307] / [i915#6095]) +144 other tests skip
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-3/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs@pipe-b-hdmi-a-2.html

  * igt@kms_ccs@random-ccs-data-yf-tiled-ccs@pipe-a-hdmi-a-3:
    - shard-dg1:          NOTRUN -> [SKIP][142] ([i915#6095]) +92 other tests skip
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_ccs@random-ccs-data-yf-tiled-ccs@pipe-a-hdmi-a-3.html

  * igt@kms_cdclk@mode-transition@pipe-d-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [SKIP][143] ([i915#7213]) +3 other tests skip
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_cdclk@mode-transition@pipe-d-hdmi-a-3.html

  * igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-2:
    - shard-dg2:          NOTRUN -> [SKIP][144] ([i915#4087]) +3 other tests skip
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-3/igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-2.html

  * igt@kms_chamelium_edid@dp-mode-timings:
    - shard-dg1:          NOTRUN -> [SKIP][145] ([i915#7828]) +2 other tests skip
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_chamelium_edid@dp-mode-timings.html

  * igt@kms_chamelium_edid@hdmi-mode-timings:
    - shard-dg2:          NOTRUN -> [SKIP][146] ([i915#7828])
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-8/igt@kms_chamelium_edid@hdmi-mode-timings.html

  * igt@kms_chamelium_edid@vga-edid-read:
    - shard-mtlp:         NOTRUN -> [SKIP][147] ([i915#7828])
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@kms_chamelium_edid@vga-edid-read.html

  * igt@kms_chamelium_hpd@dp-hpd:
    - shard-rkl:          NOTRUN -> [SKIP][148] ([i915#7828]) +5 other tests skip
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_chamelium_hpd@dp-hpd.html

  * igt@kms_content_protection@dp-mst-lic-type-1:
    - shard-dg1:          NOTRUN -> [SKIP][149] ([i915#3299])
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_content_protection@dp-mst-lic-type-1.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-rkl:          NOTRUN -> [SKIP][150] ([i915#3116]) +1 other test skip
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_content_protection@mei-interface:
    - shard-dg1:          NOTRUN -> [SKIP][151] ([i915#9433])
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_content_protection@mei-interface.html

  * igt@kms_cursor_crc@cursor-offscreen-512x170:
    - shard-mtlp:         NOTRUN -> [SKIP][152] ([i915#11453])
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@kms_cursor_crc@cursor-offscreen-512x170.html

  * igt@kms_cursor_crc@cursor-onscreen-512x170:
    - shard-rkl:          NOTRUN -> [SKIP][153] ([i915#11453]) +1 other test skip
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_cursor_crc@cursor-onscreen-512x170.html

  * igt@kms_cursor_crc@cursor-sliding-32x10:
    - shard-rkl:          NOTRUN -> [SKIP][154] ([i915#3555]) +4 other tests skip
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_cursor_crc@cursor-sliding-32x10.html

  * igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-3:
    - shard-dg1:          NOTRUN -> [INCOMPLETE][155] ([i915#12358]) +1 other test incomplete
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-3.html

  * igt@kms_cursor_edge_walk@128x128-top-bottom:
    - shard-dg2:          [PASS][156] -> [SKIP][157] ([i915#9197]) +31 other tests skip
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_cursor_edge_walk@128x128-top-bottom.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_cursor_edge_walk@128x128-top-bottom.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-atomic:
    - shard-mtlp:         NOTRUN -> [SKIP][158] ([i915#9809]) +2 other tests skip
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-2/igt@kms_cursor_legacy@cursora-vs-flipb-atomic.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
    - shard-rkl:          NOTRUN -> [SKIP][159] +12 other tests skip
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
    - shard-mtlp:         NOTRUN -> [SKIP][160] ([i915#4213])
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
    - shard-dg1:          NOTRUN -> [SKIP][161] ([i915#4103] / [i915#4213])
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
    - shard-rkl:          NOTRUN -> [SKIP][162] ([i915#4103])
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html

  * igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
    - shard-rkl:          NOTRUN -> [SKIP][163] ([i915#9723])
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html

  * igt@kms_dirtyfb@fbc-dirtyfb-ioctl:
    - shard-snb:          NOTRUN -> [FAIL][164] ([i915#12170])
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@kms_dirtyfb@fbc-dirtyfb-ioctl.html

  * igt@kms_dirtyfb@fbc-dirtyfb-ioctl@a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [FAIL][165] ([i915#11968])
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@kms_dirtyfb@fbc-dirtyfb-ioctl@a-hdmi-a-1.html

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc:
    - shard-rkl:          NOTRUN -> [SKIP][166] ([i915#3555] / [i915#3804])
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][167] ([i915#3804])
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1.html

  * igt@kms_dp_aux_dev:
    - shard-dg2:          NOTRUN -> [SKIP][168] ([i915#1257])
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-3/igt@kms_dp_aux_dev.html
    - shard-dg1:          NOTRUN -> [SKIP][169] ([i915#1257])
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_dp_aux_dev.html

  * igt@kms_dsc@dsc-with-output-formats-with-bpc:
    - shard-mtlp:         NOTRUN -> [SKIP][170] ([i915#3555] / [i915#3840] / [i915#9053])
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-2/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
    - shard-rkl:          NOTRUN -> [SKIP][171] ([i915#3840] / [i915#9053])
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_dsc@dsc-with-output-formats-with-bpc.html

  * igt@kms_fbcon_fbt@psr-suspend:
    - shard-rkl:          NOTRUN -> [SKIP][172] ([i915#3955])
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_fbcon_fbt@psr-suspend.html

  * igt@kms_feature_discovery@psr1:
    - shard-rkl:          NOTRUN -> [SKIP][173] ([i915#658]) +1 other test skip
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_feature_discovery@psr1.html

  * igt@kms_flip@2x-plain-flip-fb-recreate:
    - shard-glk:          [PASS][174] -> [FAIL][175] ([i915#2122]) +4 other tests fail
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk3/igt@kms_flip@2x-plain-flip-fb-recreate.html
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk3/igt@kms_flip@2x-plain-flip-fb-recreate.html

  * igt@kms_flip@modeset-vs-vblank-race:
    - shard-rkl:          NOTRUN -> [FAIL][176] ([i915#10826]) +1 other test fail
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_flip@modeset-vs-vblank-race.html

  * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling:
    - shard-dg2:          NOTRUN -> [SKIP][177] ([i915#3555]) +1 other test skip
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-rkl:          NOTRUN -> [SKIP][178] ([i915#2672]) +2 other tests skip
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-dg2:          NOTRUN -> [SKIP][179] ([i915#2672])
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling:
    - shard-dg1:          NOTRUN -> [SKIP][180] ([i915#2587] / [i915#2672] / [i915#3555])
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode:
    - shard-dg1:          NOTRUN -> [SKIP][181] ([i915#2587] / [i915#2672])
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
    - shard-dg2:          [PASS][182] -> [SKIP][183] ([i915#3555]) +2 other tests skip
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
    - shard-rkl:          NOTRUN -> [SKIP][184] ([i915#2672] / [i915#3555]) +2 other tests skip
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-glk:          NOTRUN -> [SKIP][185] +15 other tests skip
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk2/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_frontbuffer_tracking@fbc-1p-indfb-fliptrack-mmap-gtt:
    - shard-mtlp:         NOTRUN -> [SKIP][186] ([i915#8708]) +1 other test skip
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbc-1p-indfb-fliptrack-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-blt:
    - shard-dg2:          NOTRUN -> [SKIP][187] ([i915#5354]) +6 other tests skip
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-cpu:
    - shard-dg1:          NOTRUN -> [SKIP][188] +13 other tests skip
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-gtt:
    - shard-dg1:          NOTRUN -> [SKIP][189] ([i915#8708]) +9 other tests skip
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-rgb565-draw-render:
    - shard-dg2:          [PASS][190] -> [SKIP][191] ([i915#5354]) +17 other tests skip
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-render.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu:
    - shard-dg2:          NOTRUN -> [SKIP][192] ([i915#3458])
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt:
    - shard-snb:          NOTRUN -> [SKIP][193] +54 other tests skip
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb7/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt:
    - shard-rkl:          NOTRUN -> [SKIP][194] ([i915#1825]) +27 other tests skip
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt:
    - shard-rkl:          NOTRUN -> [SKIP][195] ([i915#3023]) +16 other tests skip
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-wc:
    - shard-mtlp:         NOTRUN -> [SKIP][196] ([i915#1825]) +1 other test skip
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-2/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][197] ([i915#8708]) +2 other tests skip
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-6/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render:
    - shard-dg1:          NOTRUN -> [SKIP][198] ([i915#3458]) +4 other tests skip
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html

  * igt@kms_hdr@bpc-switch:
    - shard-dg1:          NOTRUN -> [SKIP][199] ([i915#3555] / [i915#8228])
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_hdr@bpc-switch.html

  * igt@kms_hdr@bpc-switch-dpms:
    - shard-rkl:          NOTRUN -> [SKIP][200] ([i915#3555] / [i915#8228])
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_hdr@bpc-switch-dpms.html

  * igt@kms_plane@plane-panning-bottom-right:
    - shard-dg2:          [PASS][201] -> [SKIP][202] ([i915#8825])
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_plane@plane-panning-bottom-right.html
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane@plane-panning-bottom-right.html

  * igt@kms_plane_alpha_blend@constant-alpha-min:
    - shard-dg2:          [PASS][203] -> [SKIP][204] ([i915#7294]) +2 other tests skip
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_plane_alpha_blend@constant-alpha-min.html
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_alpha_blend@constant-alpha-min.html

  * igt@kms_plane_scaling@invalid-num-scalers:
    - shard-dg2:          [PASS][205] -> [SKIP][206] ([i915#3555] / [i915#6953] / [i915#8152] / [i915#9423])
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_plane_scaling@invalid-num-scalers.html
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@invalid-num-scalers.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers:
    - shard-dg2:          [PASS][207] -> [SKIP][208] ([i915#12247] / [i915#8152] / [i915#9423]) +2 other tests skip
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers.html
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers@pipe-c:
    - shard-dg2:          [PASS][209] -> [SKIP][210] ([i915#12247]) +11 other tests skip
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers@pipe-c.html
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers@pipe-c.html

  * igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-d:
    - shard-dg2:          [PASS][211] -> [SKIP][212] ([i915#12247] / [i915#8152]) +3 other tests skip
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-d.html
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-d.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5:
    - shard-dg2:          [PASS][213] -> [SKIP][214] ([i915#12247] / [i915#3555] / [i915#6953] / [i915#8152] / [i915#9423])
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5.html
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5.html

  * igt@kms_pm_backlight@fade-with-dpms:
    - shard-rkl:          NOTRUN -> [SKIP][215] ([i915#5354]) +1 other test skip
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_pm_backlight@fade-with-dpms.html

  * igt@kms_pm_backlight@fade-with-suspend:
    - shard-dg1:          NOTRUN -> [SKIP][216] ([i915#5354])
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_pm_backlight@fade-with-suspend.html

  * igt@kms_pm_dc@dc5-dpms-negative:
    - shard-dg2:          [PASS][217] -> [SKIP][218] ([i915#9293])
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-10/igt@kms_pm_dc@dc5-dpms-negative.html
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_pm_dc@dc5-dpms-negative.html

  * igt@kms_pm_dc@dc6-dpms:
    - shard-rkl:          NOTRUN -> [SKIP][219] ([i915#3361])
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_pm_dc@dc6-dpms.html

  * igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-rkl:          NOTRUN -> [SKIP][220] ([i915#9519])
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@kms_prime@d3hot:
    - shard-rkl:          NOTRUN -> [SKIP][221] ([i915#6524])
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_prime@d3hot.html

  * igt@kms_properties@plane-properties-legacy:
    - shard-dg2:          [PASS][222] -> [SKIP][223] ([i915#11521])
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_properties@plane-properties-legacy.html
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_properties@plane-properties-legacy.html

  * igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf:
    - shard-mtlp:         NOTRUN -> [SKIP][224] ([i915#12316])
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-7/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf:
    - shard-rkl:          NOTRUN -> [SKIP][225] ([i915#11520]) +4 other tests skip
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@pr-cursor-plane-move-continuous-exceed-fully-sf:
    - shard-snb:          NOTRUN -> [SKIP][226] ([i915#11520]) +2 other tests skip
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf:
    - shard-dg1:          NOTRUN -> [SKIP][227] ([i915#11520]) +1 other test skip
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb:
    - shard-glk:          NOTRUN -> [SKIP][228] ([i915#11520])
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk1/igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb.html

  * igt@kms_psr@fbc-psr-primary-render:
    - shard-dg1:          NOTRUN -> [SKIP][229] ([i915#1072] / [i915#9732]) +10 other tests skip
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_psr@fbc-psr-primary-render.html

  * igt@kms_psr@pr-basic:
    - shard-mtlp:         NOTRUN -> [SKIP][230] ([i915#9688]) +1 other test skip
   [230]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@kms_psr@pr-basic.html

  * igt@kms_psr@psr-sprite-mmap-gtt@edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][231] ([i915#4077] / [i915#9688]) +1 other test skip
   [231]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@kms_psr@psr-sprite-mmap-gtt@edp-1.html

  * igt@kms_psr@psr-sprite-plane-onoff:
    - shard-rkl:          NOTRUN -> [SKIP][232] ([i915#1072] / [i915#9732]) +13 other tests skip
   [232]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_psr@psr-sprite-plane-onoff.html

  * igt@kms_psr@psr2-cursor-mmap-cpu:
    - shard-dg2:          NOTRUN -> [SKIP][233] ([i915#1072] / [i915#9732])
   [233]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_psr@psr2-cursor-mmap-cpu.html

  * igt@kms_rotation_crc@primary-4-tiled-reflect-x-180:
    - shard-rkl:          NOTRUN -> [SKIP][234] ([i915#5289])
   [234]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-90:
    - shard-mtlp:         NOTRUN -> [SKIP][235] ([i915#11131])
   [235]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html

  * igt@kms_setmode@basic@pipe-a-hdmi-a-2:
    - shard-glk:          NOTRUN -> [FAIL][236] ([i915#5465]) +4 other tests fail
   [236]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk2/igt@kms_setmode@basic@pipe-a-hdmi-a-2.html

  * igt@kms_setmode@clone-exclusive-crtc:
    - shard-dg1:          NOTRUN -> [SKIP][237] ([i915#3555]) +3 other tests skip
   [237]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/igt@kms_setmode@clone-exclusive-crtc.html

  * igt@kms_sysfs_edid_timing:
    - shard-dg2:          [PASS][238] -> [FAIL][239] ([IGT#2])
   [238]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_sysfs_edid_timing.html
   [239]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_sysfs_edid_timing.html

  * igt@kms_vrr@flip-basic-fastset:
    - shard-rkl:          NOTRUN -> [SKIP][240] ([i915#9906])
   [240]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@kms_vrr@flip-basic-fastset.html

  * igt@kms_vrr@negative-basic:
    - shard-rkl:          NOTRUN -> [SKIP][241] ([i915#3555] / [i915#9906])
   [241]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@kms_vrr@negative-basic.html

  * igt@kms_writeback@writeback-invalid-parameters:
    - shard-dg1:          NOTRUN -> [SKIP][242] ([i915#2437])
   [242]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@kms_writeback@writeback-invalid-parameters.html

  * igt@perf_pmu@rc6@other-idle-gt0:
    - shard-dg1:          NOTRUN -> [SKIP][243] ([i915#8516])
   [243]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@perf_pmu@rc6@other-idle-gt0.html

  * igt@prime_vgem@basic-fence-flip:
    - shard-dg1:          NOTRUN -> [SKIP][244] ([i915#3708]) +1 other test skip
   [244]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-18/igt@prime_vgem@basic-fence-flip.html
    - shard-dg2:          NOTRUN -> [SKIP][245] ([i915#3708] / [i915#9197])
   [245]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@prime_vgem@basic-fence-flip.html

  * igt@prime_vgem@coherency-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][246] ([i915#3708]) +1 other test skip
   [246]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-2/igt@prime_vgem@coherency-gtt.html

  * igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all:
    - shard-dg1:          NOTRUN -> [SKIP][247] ([i915#9917])
   [247]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-13/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html

  * igt@syncobj_wait@invalid-reset-one-illegal-handle:
    - shard-snb:          [PASS][248] -> [INCOMPLETE][249] ([i915#2295])
   [248]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-snb2/igt@syncobj_wait@invalid-reset-one-illegal-handle.html
   [249]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb6/igt@syncobj_wait@invalid-reset-one-illegal-handle.html

  
#### Possible fixes ####

  * igt@fbdev@unaligned-read:
    - shard-dg2:          [SKIP][250] ([i915#2582]) -> [PASS][251] +1 other test pass
   [250]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@fbdev@unaligned-read.html
   [251]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@fbdev@unaligned-read.html

  * igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0:
    - shard-dg2:          [INCOMPLETE][252] ([i915#7297]) -> [PASS][253]
   [252]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-4/igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0.html
   [253]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-1/igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0.html

  * igt@gem_ctx_engines@invalid-engines:
    - shard-tglu:         [FAIL][254] ([i915#12027]) -> [PASS][255]
   [254]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-tglu-9/igt@gem_ctx_engines@invalid-engines.html
   [255]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-tglu-6/igt@gem_ctx_engines@invalid-engines.html

  * igt@gem_ctx_persistence@hostile:
    - shard-tglu:         [FAIL][256] ([i915#11980]) -> [PASS][257]
   [256]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-tglu-4/igt@gem_ctx_persistence@hostile.html
   [257]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-tglu-5/igt@gem_ctx_persistence@hostile.html

  * igt@gem_ctx_persistence@smoketest:
    - shard-rkl:          [FAIL][258] ([i915#11837]) -> [PASS][259]
   [258]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-1/igt@gem_ctx_persistence@smoketest.html
   [259]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@gem_ctx_persistence@smoketest.html

  * igt@gem_eio@hibernate:
    - shard-dg1:          [ABORT][260] ([i915#7975] / [i915#8213]) -> [PASS][261]
   [260]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-14/igt@gem_eio@hibernate.html
   [261]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-19/igt@gem_eio@hibernate.html

  * igt@gem_eio@in-flight-suspend:
    - shard-dg2:          [DMESG-FAIL][262] -> [PASS][263]
   [262]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@gem_eio@in-flight-suspend.html
   [263]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@gem_eio@in-flight-suspend.html

  * igt@gem_exec_fair@basic-pace-solo:
    - shard-glk:          [FAIL][264] ([i915#2842]) -> [PASS][265] +1 other test pass
   [264]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk6/igt@gem_exec_fair@basic-pace-solo.html
   [265]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk1/igt@gem_exec_fair@basic-pace-solo.html

  * igt@i915_pm_rps@reset:
    - shard-snb:          [INCOMPLETE][266] ([i915#7790]) -> [PASS][267]
   [266]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-snb1/igt@i915_pm_rps@reset.html
   [267]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@i915_pm_rps@reset.html

  * igt@i915_suspend@basic-s3-without-i915:
    - shard-rkl:          [INCOMPLETE][268] ([i915#4817]) -> [PASS][269]
   [268]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-3/igt@i915_suspend@basic-s3-without-i915.html
   [269]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-7/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_atomic_transition@plane-use-after-nonblocking-unbind-fencing:
    - shard-dg2:          [SKIP][270] ([i915#9197]) -> [PASS][271] +35 other tests pass
   [270]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_atomic_transition@plane-use-after-nonblocking-unbind-fencing.html
   [271]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_atomic_transition@plane-use-after-nonblocking-unbind-fencing.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-glk:          [FAIL][272] ([i915#2346]) -> [PASS][273]
   [272]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [273]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@flip-vs-cursor-varying-size:
    - shard-snb:          [FAIL][274] -> [PASS][275]
   [274]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-snb4/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html
   [275]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@kms_cursor_legacy@flip-vs-cursor-varying-size.html

  * igt@kms_flip@flip-vs-suspend@b-hdmi-a1:
    - shard-snb:          [INCOMPLETE][276] ([i915#4839]) -> [PASS][277] +1 other test pass
   [276]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-snb6/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html
   [277]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb7/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html

  * igt@kms_flip@plain-flip-ts-check-interruptible:
    - shard-snb:          [FAIL][278] ([i915#2122]) -> [PASS][279] +6 other tests pass
   [278]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-snb4/igt@kms_flip@plain-flip-ts-check-interruptible.html
   [279]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb2/igt@kms_flip@plain-flip-ts-check-interruptible.html
    - shard-tglu:         [FAIL][280] ([i915#2122]) -> [PASS][281] +1 other test pass
   [280]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-tglu-8/igt@kms_flip@plain-flip-ts-check-interruptible.html
   [281]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-tglu-6/igt@kms_flip@plain-flip-ts-check-interruptible.html
    - shard-mtlp:         [FAIL][282] ([i915#11989] / [i915#2122]) -> [PASS][283]
   [282]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-mtlp-1/igt@kms_flip@plain-flip-ts-check-interruptible.html
   [283]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-6/igt@kms_flip@plain-flip-ts-check-interruptible.html

  * igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a3:
    - shard-dg2:          [FAIL][284] ([i915#2122]) -> [PASS][285]
   [284]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-1/igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a3.html
   [285]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-6/igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a3.html

  * igt@kms_flip@plain-flip-ts-check-interruptible@c-edp1:
    - shard-mtlp:         [FAIL][286] ([i915#2122]) -> [PASS][287] +2 other tests pass
   [286]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-mtlp-1/igt@kms_flip@plain-flip-ts-check-interruptible@c-edp1.html
   [287]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-6/igt@kms_flip@plain-flip-ts-check-interruptible@c-edp1.html

  * igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling:
    - shard-dg2:          [SKIP][288] ([i915#3555]) -> [PASS][289] +4 other tests pass
   [288]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling.html
   [289]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-upscaling.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render:
    - shard-dg2:          [SKIP][290] ([i915#5354]) -> [PASS][291] +6 other tests pass
   [290]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html
   [291]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-cpu:
    - shard-dg2:          [FAIL][292] ([i915#6880]) -> [PASS][293]
   [292]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-cpu.html
   [293]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-cpu.html

  * igt@kms_plane@pixel-format:
    - shard-dg2:          [SKIP][294] ([i915#8825]) -> [PASS][295]
   [294]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane@pixel-format.html
   [295]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane@pixel-format.html

  * igt@kms_plane_alpha_blend@constant-alpha-max:
    - shard-dg2:          [SKIP][296] ([i915#7294]) -> [PASS][297]
   [296]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_alpha_blend@constant-alpha-max.html
   [297]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_alpha_blend@constant-alpha-max.html

  * igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation:
    - shard-dg2:          [SKIP][298] ([i915#12247] / [i915#8152] / [i915#9423]) -> [PASS][299]
   [298]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation.html
   [299]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-5/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-75-upscale-20x20:
    - shard-dg2:          [SKIP][300] ([i915#12247] / [i915#3558] / [i915#8152] / [i915#9423]) -> [PASS][301]
   [300]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@planes-downscale-factor-0-75-upscale-20x20.html
   [301]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@planes-downscale-factor-0-75-upscale-20x20.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75:
    - shard-dg2:          [SKIP][302] ([i915#12247] / [i915#3555] / [i915#6953] / [i915#8152] / [i915#9423]) -> [PASS][303]
   [302]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75.html
   [303]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-c:
    - shard-dg2:          [SKIP][304] ([i915#12247]) -> [PASS][305] +8 other tests pass
   [304]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-c.html
   [305]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-c.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-d:
    - shard-dg2:          [SKIP][306] ([i915#12247] / [i915#8152]) -> [PASS][307] +2 other tests pass
   [306]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-d.html
   [307]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-d.html

  * igt@kms_pm_dc@dc9-dpms:
    - shard-dg2:          [FAIL][308] ([i915#7330]) -> [PASS][309]
   [308]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_pm_dc@dc9-dpms.html
   [309]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_pm_dc@dc9-dpms.html

  * igt@kms_pm_lpsp@kms-lpsp:
    - shard-dg2:          [SKIP][310] ([i915#9340]) -> [PASS][311]
   [310]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-6/igt@kms_pm_lpsp@kms-lpsp.html
   [311]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-8/igt@kms_pm_lpsp@kms-lpsp.html

  * igt@kms_pm_rpm@modeset-non-lpsp-stress:
    - shard-dg2:          [SKIP][312] ([i915#9519]) -> [PASS][313]
   [312]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
   [313]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
    - shard-rkl:          [SKIP][314] ([i915#9519]) -> [PASS][315]
   [314]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-4/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
   [315]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-5/igt@kms_pm_rpm@modeset-non-lpsp-stress.html

  * igt@kms_properties@crtc-properties-legacy:
    - shard-dg2:          [SKIP][316] ([i915#11521]) -> [PASS][317]
   [316]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_properties@crtc-properties-legacy.html
   [317]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_properties@crtc-properties-legacy.html

  * igt@kms_rotation_crc@sprite-rotation-180:
    - shard-mtlp:         [INCOMPLETE][318] -> [PASS][319]
   [318]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-mtlp-7/igt@kms_rotation_crc@sprite-rotation-180.html
   [319]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-4/igt@kms_rotation_crc@sprite-rotation-180.html

  * igt@kms_setmode@basic:
    - shard-snb:          [FAIL][320] ([i915#5465]) -> [PASS][321] +2 other tests pass
   [320]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-snb2/igt@kms_setmode@basic.html
   [321]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-snb4/igt@kms_setmode@basic.html

  * igt@kms_vblank@wait-forked-busy-hang:
    - shard-tglu:         [SKIP][322] -> [PASS][323]
   [322]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-tglu-4/igt@kms_vblank@wait-forked-busy-hang.html
   [323]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-tglu-5/igt@kms_vblank@wait-forked-busy-hang.html

  * igt@kms_vrr@negative-basic:
    - shard-dg2:          [SKIP][324] ([i915#3555] / [i915#9906]) -> [PASS][325]
   [324]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-1/igt@kms_vrr@negative-basic.html
   [325]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-10/igt@kms_vrr@negative-basic.html

  
#### Warnings ####

  * igt@i915_module_load@reload-with-fault-injection:
    - shard-mtlp:         [ABORT][326] ([i915#10131] / [i915#9697]) -> [ABORT][327] ([i915#10131] / [i915#9820])
   [326]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-mtlp-1/igt@i915_module_load@reload-with-fault-injection.html
   [327]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-mtlp-6/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pipe_stress@stress-xrgb8888-ytiled:
    - shard-dg2:          [SKIP][328] ([i915#7091]) -> [SKIP][329] ([i915#9197])
   [328]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@i915_pipe_stress@stress-xrgb8888-ytiled.html
   [329]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@i915_pipe_stress@stress-xrgb8888-ytiled.html

  * igt@i915_selftest@mock:
    - shard-glk:          [DMESG-WARN][330] ([i915#1982] / [i915#9311]) -> [DMESG-WARN][331] ([i915#9311])
   [330]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk1/igt@i915_selftest@mock.html
   [331]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk4/igt@i915_selftest@mock.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
    - shard-dg2:          [SKIP][332] ([i915#1769] / [i915#3555]) -> [SKIP][333] ([i915#9197])
   [332]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html
   [333]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html

  * igt@kms_big_fb@4-tiled-16bpp-rotate-90:
    - shard-dg2:          [SKIP][334] -> [SKIP][335] ([i915#9197]) +2 other tests skip
   [334]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_big_fb@4-tiled-16bpp-rotate-90.html
   [335]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_big_fb@4-tiled-16bpp-rotate-90.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-270:
    - shard-dg2:          [SKIP][336] ([i915#9197]) -> [SKIP][337] +1 other test skip
   [336]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
   [337]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-32bpp-rotate-270:
    - shard-dg2:          [SKIP][338] ([i915#4538] / [i915#5190]) -> [SKIP][339] ([i915#5190] / [i915#9197]) +10 other tests skip
   [338]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_big_fb@y-tiled-32bpp-rotate-270.html
   [339]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_big_fb@y-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-0:
    - shard-dg2:          [SKIP][340] ([i915#5190] / [i915#9197]) -> [SKIP][341] ([i915#4538] / [i915#5190]) +5 other tests skip
   [340]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html
   [341]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@y-tiled-addfb-size-overflow:
    - shard-dg2:          [SKIP][342] ([i915#5190]) -> [SKIP][343] ([i915#5190] / [i915#9197])
   [342]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_big_fb@y-tiled-addfb-size-overflow.html
   [343]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_big_fb@y-tiled-addfb-size-overflow.html

  * igt@kms_big_fb@yf-tiled-addfb-size-overflow:
    - shard-dg2:          [SKIP][344] ([i915#5190] / [i915#9197]) -> [SKIP][345] ([i915#5190]) +1 other test skip
   [344]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
   [345]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-5/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html

  * igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs:
    - shard-dg2:          [SKIP][346] ([i915#12313]) -> [SKIP][347] ([i915#9197]) +1 other test skip
   [346]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html
   [347]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs:
    - shard-dg2:          [SKIP][348] ([i915#9197]) -> [SKIP][349] ([i915#10307] / [i915#6095]) +7 other tests skip
   [348]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs.html
   [349]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs.html

  * igt@kms_ccs@crc-primary-rotation-180-yf-tiled-ccs:
    - shard-dg2:          [SKIP][350] ([i915#10307] / [i915#6095]) -> [SKIP][351] ([i915#9197]) +6 other tests skip
   [350]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_ccs@crc-primary-rotation-180-yf-tiled-ccs.html
   [351]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_ccs@crc-primary-rotation-180-yf-tiled-ccs.html

  * igt@kms_cdclk@mode-transition:
    - shard-dg2:          [SKIP][352] ([i915#9197]) -> [SKIP][353] ([i915#11616] / [i915#7213])
   [352]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_cdclk@mode-transition.html
   [353]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_cdclk@mode-transition.html

  * igt@kms_content_protection@uevent:
    - shard-dg2:          [SKIP][354] ([i915#7118] / [i915#9424]) -> [SKIP][355] ([i915#9197]) +1 other test skip
   [354]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_content_protection@uevent.html
   [355]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_content_protection@uevent.html

  * igt@kms_cursor_crc@cursor-random-512x170:
    - shard-dg2:          [SKIP][356] ([i915#11453]) -> [SKIP][357] ([i915#9197])
   [356]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_cursor_crc@cursor-random-512x170.html
   [357]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_cursor_crc@cursor-random-512x170.html

  * igt@kms_cursor_crc@cursor-random-max-size:
    - shard-dg2:          [SKIP][358] ([i915#9197]) -> [SKIP][359] ([i915#3555]) +1 other test skip
   [358]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_cursor_crc@cursor-random-max-size.html
   [359]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_cursor_crc@cursor-random-max-size.html

  * igt@kms_cursor_crc@cursor-rapid-movement-max-size:
    - shard-dg2:          [SKIP][360] ([i915#3555]) -> [SKIP][361] ([i915#9197]) +3 other tests skip
   [360]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html
   [361]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
    - shard-dg2:          [SKIP][362] ([i915#5354]) -> [SKIP][363] ([i915#9197]) +2 other tests skip
   [362]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
   [363]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
    - shard-dg2:          [SKIP][364] ([i915#9197]) -> [SKIP][365] ([i915#4103] / [i915#4213])
   [364]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
   [365]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html

  * igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
    - shard-dg2:          [SKIP][366] ([i915#9197]) -> [SKIP][367] ([i915#9067])
   [366]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
   [367]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-5/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html

  * igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
    - shard-dg2:          [SKIP][368] ([i915#9833]) -> [SKIP][369] ([i915#9197])
   [368]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
   [369]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html

  * igt@kms_display_modes@mst-extended-mode-negative:
    - shard-dg2:          [SKIP][370] ([i915#8588]) -> [SKIP][371] ([i915#9197])
   [370]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_display_modes@mst-extended-mode-negative.html
   [371]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_display_modes@mst-extended-mode-negative.html

  * igt@kms_dsc@dsc-fractional-bpp-with-bpc:
    - shard-dg2:          [SKIP][372] ([i915#9197]) -> [SKIP][373] ([i915#3840])
   [372]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
   [373]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html

  * igt@kms_dsc@dsc-with-output-formats:
    - shard-dg2:          [SKIP][374] ([i915#9197]) -> [SKIP][375] ([i915#3555] / [i915#3840])
   [374]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_dsc@dsc-with-output-formats.html
   [375]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_dsc@dsc-with-output-formats.html

  * igt@kms_flip@flip-vs-suspend@b-hdmi-a1:
    - shard-glk:          [INCOMPLETE][376] -> [INCOMPLETE][377] ([i915#4839])
   [376]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk2/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html
   [377]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk6/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling:
    - shard-dg2:          [SKIP][378] ([i915#3555]) -> [SKIP][379] ([i915#2672] / [i915#3555])
   [378]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html
   [379]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling:
    - shard-dg2:          [SKIP][380] ([i915#2672] / [i915#3555]) -> [SKIP][381] ([i915#3555])
   [380]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling.html
   [381]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-wc:
    - shard-dg2:          [SKIP][382] ([i915#5354]) -> [SKIP][383] ([i915#8708]) +6 other tests skip
   [382]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-wc.html
   [383]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite:
    - shard-dg2:          [SKIP][384] ([i915#3458]) -> [SKIP][385] ([i915#10433] / [i915#3458]) +2 other tests skip
   [384]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-5/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite.html
   [385]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-wc:
    - shard-dg2:          [SKIP][386] ([i915#8708]) -> [SKIP][387] ([i915#5354]) +11 other tests skip
   [386]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-wc.html
   [387]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render:
    - shard-dg1:          [SKIP][388] ([i915#3458] / [i915#4423]) -> [SKIP][389] ([i915#3458])
   [388]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg1-13/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render.html
   [389]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg1-17/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-suspend:
    - shard-dg2:          [SKIP][390] ([i915#10433] / [i915#3458]) -> [SKIP][391] ([i915#3458]) +1 other test skip
   [390]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html
   [391]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-1/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-y:
    - shard-dg2:          [SKIP][392] ([i915#10055]) -> [SKIP][393] ([i915#5354])
   [392]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html
   [393]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render:
    - shard-dg2:          [SKIP][394] ([i915#5354]) -> [SKIP][395] ([i915#3458]) +11 other tests skip
   [394]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render.html
   [395]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary:
    - shard-dg2:          [SKIP][396] ([i915#3458]) -> [SKIP][397] ([i915#5354]) +8 other tests skip
   [396]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-11/igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary.html
   [397]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary.html

  * igt@kms_hdr@invalid-hdr:
    - shard-dg2:          [SKIP][398] ([i915#9197]) -> [SKIP][399] ([i915#3555] / [i915#8228])
   [398]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_hdr@invalid-hdr.html
   [399]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_hdr@invalid-hdr.html

  * igt@kms_hdr@static-toggle:
    - shard-dg2:          [SKIP][400] ([i915#3555] / [i915#8228]) -> [SKIP][401] ([i915#9197]) +1 other test skip
   [400]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_hdr@static-toggle.html
   [401]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_hdr@static-toggle.html

  * igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
    - shard-rkl:          [SKIP][402] ([i915#4070] / [i915#4816]) -> [SKIP][403] ([i915#4816])
   [402]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-6/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
   [403]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-4/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html

  * igt@kms_plane_lowres@tiling-yf:
    - shard-dg2:          [SKIP][404] ([i915#3555] / [i915#8821]) -> [SKIP][405] ([i915#9197])
   [404]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_plane_lowres@tiling-yf.html
   [405]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_lowres@tiling-yf.html

  * igt@kms_plane_scaling@2x-scaler-multi-pipe:
    - shard-dg2:          [SKIP][406] ([i915#5354] / [i915#8152] / [i915#9423]) -> [SKIP][407] ([i915#5354] / [i915#9423])
   [406]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@2x-scaler-multi-pipe.html
   [407]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@2x-scaler-multi-pipe.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers:
    - shard-dg2:          [SKIP][408] ([i915#12247] / [i915#9423]) -> [SKIP][409] ([i915#12247] / [i915#8152] / [i915#9423]) +1 other test skip
   [408]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-10/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers.html
   [409]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d:
    - shard-dg2:          [SKIP][410] ([i915#12247]) -> [SKIP][411] ([i915#12247] / [i915#8152]) +1 other test skip
   [410]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-3/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d.html
   [411]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-d.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25:
    - shard-dg2:          [SKIP][412] ([i915#12247] / [i915#6953] / [i915#8152] / [i915#9423]) -> [SKIP][413] ([i915#12247] / [i915#6953] / [i915#9423]) +1 other test skip
   [412]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html
   [413]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-d:
    - shard-dg2:          [SKIP][414] ([i915#12247] / [i915#8152]) -> [SKIP][415] ([i915#12247]) +1 other test skip
   [414]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-d.html
   [415]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-d.html

  * igt@kms_pm_dc@dc9-dpms:
    - shard-rkl:          [SKIP][416] ([i915#3361]) -> [SKIP][417] ([i915#4281])
   [416]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-rkl-4/igt@kms_pm_dc@dc9-dpms.html
   [417]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-rkl-5/igt@kms_pm_dc@dc9-dpms.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
    - shard-dg2:          [SKIP][418] ([i915#5190] / [i915#9197]) -> [SKIP][419] ([i915#11131] / [i915#5190])
   [418]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
   [419]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html

  * igt@kms_rotation_crc@sprite-rotation-270:
    - shard-dg2:          [SKIP][420] ([i915#9197]) -> [SKIP][421] ([i915#11131])
   [420]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_rotation_crc@sprite-rotation-270.html
   [421]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-5/igt@kms_rotation_crc@sprite-rotation-270.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-glk:          [FAIL][422] ([i915#10959]) -> [SKIP][423]
   [422]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-glk4/igt@kms_tiled_display@basic-test-pattern.html
   [423]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-glk8/igt@kms_tiled_display@basic-test-pattern.html

  * igt@kms_vrr@flip-basic-fastset:
    - shard-dg2:          [SKIP][424] ([i915#9906]) -> [SKIP][425] ([i915#9197]) +1 other test skip
   [424]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-8/igt@kms_vrr@flip-basic-fastset.html
   [425]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-2/igt@kms_vrr@flip-basic-fastset.html

  * igt@kms_vrr@lobf:
    - shard-dg2:          [SKIP][426] ([i915#9197]) -> [SKIP][427] ([i915#11920])
   [426]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_15491/shard-dg2-2/igt@kms_vrr@lobf.html
   [427]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/shard-dg2-7/igt@kms_vrr@lobf.html

  
  [IGT#2]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/2
  [i915#10055]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10055
  [i915#10131]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10131
  [i915#10307]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10307
  [i915#10433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10433
  [i915#10434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10434
  [i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
  [i915#10826]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10826
  [i915#10959]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10959
  [i915#1099]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1099
  [i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078
  [i915#11131]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11131
  [i915#11453]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11453
  [i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520
  [i915#11521]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11521
  [i915#11616]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11616
  [i915#11808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11808
  [i915#11837]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11837
  [i915#11920]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11920
  [i915#11968]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11968
  [i915#11980]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11980
  [i915#11989]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11989
  [i915#12027]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12027
  [i915#12065]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12065
  [i915#12170]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12170
  [i915#12247]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12247
  [i915#12297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12297
  [i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313
  [i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316
  [i915#12358]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12358
  [i915#1257]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1257
  [i915#1769]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1769
  [i915#1825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1825
  [i915#1982]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1982
  [i915#2122]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2122
  [i915#2295]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2295
  [i915#2346]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2346
  [i915#2437]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2527
  [i915#2582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2587
  [i915#2672]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2672
  [i915#284]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2856
  [i915#2876]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2876
  [i915#3023]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3023
  [i915#3116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3282
  [i915#3297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3299
  [i915#3361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3361
  [i915#3458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3458
  [i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3558
  [i915#3591]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3591
  [i915#3638]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3638
  [i915#3708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3708
  [i915#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804
  [i915#3840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3840
  [i915#3955]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3955
  [i915#4070]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4077
  [i915#4083]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4083
  [i915#4087]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4087
  [i915#4103]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4213
  [i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
  [i915#4281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4281
  [i915#4423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4423
  [i915#4525]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4525
  [i915#4537]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4537
  [i915#4538]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4538
  [i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
  [i915#4771]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812
  [i915#4816]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4816
  [i915#4817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4817
  [i915#4839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4839
  [i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4860
  [i915#5107]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5107
  [i915#5138]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5138
  [i915#5190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5190
  [i915#5286]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5289
  [i915#5354]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5354
  [i915#5465]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5465
  [i915#5784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5784
  [i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
  [i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
  [i915#6880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6880
  [i915#6953]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6953
  [i915#7091]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7091
  [i915#7118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7118
  [i915#7213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7213
  [i915#7294]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7294
  [i915#7297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7297
  [i915#7330]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7330
  [i915#7790]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7790
  [i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828
  [i915#7975]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7975
  [i915#8152]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8152
  [i915#8213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8213
  [i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
  [i915#8399]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8399
  [i915#8411]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8411
  [i915#8414]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8414
  [i915#8428]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8428
  [i915#8516]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8516
  [i915#8555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8555
  [i915#8588]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8588
  [i915#8708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8708
  [i915#8709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8709
  [i915#8821]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8821
  [i915#8825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8825
  [i915#9053]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9053
  [i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067
  [i915#9197]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9197
  [i915#9293]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9293
  [i915#9311]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9311
  [i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
  [i915#9340]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9340
  [i915#9423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9423
  [i915#9424]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9424
  [i915#9433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9433
  [i915#9519]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9519
  [i915#9688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9688
  [i915#9697]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9697
  [i915#9723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9723
  [i915#9732]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9732
  [i915#9809]:

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_138963v2/index.html

[-- Attachment #2: Type: text/html, Size: 125816 bytes --]

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

* RE: [v2] drm/i915/dp: Add FEC Enable Retry mechanism
  2024-10-09 15:16 ` [v2] drm/i915/dp: Add FEC Enable Retry mechanism Jani Nikula
@ 2024-10-14 12:05   ` Borah, Chaitanya Kumar
  0 siblings, 0 replies; 5+ messages in thread
From: Borah, Chaitanya Kumar @ 2024-10-14 12:05 UTC (permalink / raw)
  To: Jani Nikula, intel-gfx@lists.freedesktop.org,
	intel-xe@lists.freedesktop.org
  Cc: Srikanth V, NagaVenkata, Deak, Imre

Hello Jani,

Thank  you for the review.

> -----Original Message-----
> From: Jani Nikula <jani.nikula@linux.intel.com>
> Sent: Wednesday, October 9, 2024 8:47 PM
> To: Borah, Chaitanya Kumar <chaitanya.kumar.borah@intel.com>; intel-
> gfx@lists.freedesktop.org; intel-xe@lists.freedesktop.org
> Cc: Srikanth V, NagaVenkata <nagavenkata.srikanth.v@intel.com>
> Subject: Re: [v2] drm/i915/dp: Add FEC Enable Retry mechanism
> 
> On Tue, 08 Oct 2024, Chaitanya Kumar Borah
> <chaitanya.kumar.borah@intel.com> wrote:
> > From PTL, FEC_DECODE_EN sequence can be sent to a DPRX independent of
> > TRANS_CONF enable. This allows us to re-issue an FEC_DECODE_EN
> > sequence without re-doing the whole mode set sequence. This separate
> > control over FEC_ECODE_EN/DIS sequence enables us to have a retry
> > mechanism in case the DPRX does not respond with an FEC_ENABLE within
> > the stipulated 5ms.
> >
> > v2:
> >  - Refactor code to avoid duplication and improve readability [Jani]
> >  - In case of PTL, wait for FEC status directly after FEC enable
> > [Srikanth]
> >  - Wait for FEC_ENABLE_LIVE_STATUS to be cleared before
> >    re-enabling FEC [Srikanth]
> >
> > Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
> 
> What you have here is really hard to understand.
> 

I will try to rephrase this.

> > ---
> >  drivers/gpu/drm/i915/display/intel_ddi.c    | 79 +++++++++++++++++----
> >  drivers/gpu/drm/i915/display/intel_ddi.h    |  2 +-
> >  drivers/gpu/drm/i915/display/intel_dp_mst.c |  4 +-
> >  3 files changed, 67 insertions(+), 18 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c
> > b/drivers/gpu/drm/i915/display/intel_ddi.c
> > index fe1ded6707f9..047816a427d5 100644
> > --- a/drivers/gpu/drm/i915/display/intel_ddi.c
> > +++ b/drivers/gpu/drm/i915/display/intel_ddi.c
> > @@ -2256,30 +2256,74 @@ static int read_fec_detected_status(struct
> drm_dp_aux *aux)
> >  	return status;
> >  }
> >
> > -static void wait_for_fec_detected(struct drm_dp_aux *aux, bool
> > enabled)
> > +static void retry_fec_enable(struct intel_encoder *encoder,
> > +			     const struct intel_crtc_state *crtc_state,
> > +		struct drm_dp_aux *aux)
> 
> Probably shouldn't pass aux around.
> 

ack

> > +{
> > +	struct drm_i915_private *i915 = to_i915(aux->drm_dev);
> 
> struct intel_display for new code please.
> 
> > +	int ret = 0;
> 
> Unnecessary initialization.
> 

Ack

> > +
> > +	ret = intel_de_wait_for_clear(i915, dp_tp_status_reg(encoder,
> crtc_state),
> > +				      DP_TP_STATUS_FEC_ENABLE_LIVE, 1);
> > +
> > +	if (ret)
> > +		drm_err(&i915->drm,
> > +			"Timeout waiting for FEC live state to get disabled
> during
> > +retry\n");
> > +
> > +	/* Clear FEC enable */
> > +	intel_de_rmw(i915, dp_tp_ctl_reg(encoder, crtc_state),
> > +		     DP_TP_CTL_FEC_ENABLE, 0);
> > +
> > +	/* Set FEC enable */
> > +	intel_de_rmw(i915, dp_tp_ctl_reg(encoder, crtc_state),
> > +		     0, DP_TP_CTL_FEC_ENABLE);
> > +
> > +	ret = intel_de_wait_for_set(i915, dp_tp_status_reg(encoder,
> crtc_state),
> > +				    DP_TP_STATUS_FEC_ENABLE_LIVE, 1);
> > +	if (!ret)
> > +		drm_dbg_kms(&i915->drm,
> > +			    "Timeout waiting for FEC live state to get enabled");
> }
> > +
> > +static void wait_for_fec_detected(struct intel_encoder *encoder,
> > +				  const struct intel_crtc_state *crtc_state,
> > +		struct drm_dp_aux *aux, bool enabled, bool retry)
> 
> Multiple bool parameters make for a crappy interface.
> 

Ack


> >  {
> >  	struct drm_i915_private *i915 = to_i915(aux->drm_dev);
> >  	int mask = enabled ? DP_FEC_DECODE_EN_DETECTED :
> DP_FEC_DECODE_DIS_DETECTED;
> >  	int status;
> >  	int err;
> > +	int max_retries = retry ? 3 : 1;
> >
> > -	err = readx_poll_timeout(read_fec_detected_status, aux, status,
> > -				 status & mask || status < 0,
> > -				 10000, 200000);
> > +	for (int retrycount = 0; retrycount < max_retries; retrycount++) {
> > +		err = readx_poll_timeout(read_fec_detected_status, aux,
> status,
> > +					 status & mask || status < 0,
> > +					 retry ? 500 : 10000,
> > +					 retry ? 5000 : 200000);
> >
> > -	if (!err && status >= 0)
> > -		return;
> > +		if (!err && status >= 0)
> > +			return;
> >
> > -	if (err == -ETIMEDOUT)
> > -		drm_dbg_kms(&i915->drm, "Timeout waiting for FEC %s to
> get detected\n",
> > -			    str_enabled_disabled(enabled));
> > -	else
> > -		drm_dbg_kms(&i915->drm, "FEC detected status read error:
> %d\n", status);
> > +		if (err == -ETIMEDOUT) {
> > +			drm_dbg_kms(&i915->drm,
> > +				    "Timeout waiting for FEC %s to get
> detected, retrying (%d/%d)\n",
> > +				    str_enabled_disabled(enabled), retrycount
> + 1, max_retries);
> > +
> > +			if (retry && enabled)
> > +				retry_fec_enable(encoder, crtc_state, aux);
> 
> A function whose name is "wait for fec detected" really should *not* retry
> itself. The point is to report status. The callers are supposed to act on that. It's
> really hard to follow what's going on.
> 

ack

> > +		} else {
> > +			drm_dbg_kms(&i915->drm, "FEC detected status read
> error: %d\n", status);
> > +			return;
> > +		}
> > +	}
> > +
> > +	drm_err(&i915->drm, "FEC %s Failed after %d attempts\n",
> > +		str_enabled_disabled(enabled), max_retries);
> >  }
> >
> >  void intel_ddi_wait_for_fec_status(struct intel_encoder *encoder,
> >  				   const struct intel_crtc_state *crtc_state,
> > -				   bool enabled)
> > +				   bool enabled, bool retry)
> >  {
> >  	struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
> >  	struct intel_dp *intel_dp = enc_to_intel_dp(encoder); @@ -2305,7
> > +2349,7 @@ void intel_ddi_wait_for_fec_status(struct intel_encoder
> *encoder,
> >  	 * FEC decoding disabling so skip waiting for that.
> >  	 */
> >  	if (enabled)
> > -		wait_for_fec_detected(&intel_dp->aux, enabled);
> > +		wait_for_fec_detected(encoder, crtc_state, &intel_dp->aux,
> enabled,
> > +retry);
> >  }
> >
> >  static void intel_ddi_enable_fec(struct intel_encoder *encoder, @@
> > -2318,6 +2362,9 @@ static void intel_ddi_enable_fec(struct
> > intel_encoder *encoder,
> >
> >  	intel_de_rmw(dev_priv, dp_tp_ctl_reg(encoder, crtc_state),
> >  		     0, DP_TP_CTL_FEC_ENABLE);
> > +
> > +	if (DISPLAY_VER(dev_priv) >= 30)
> > +		intel_ddi_wait_for_fec_status(encoder, crtc_state, true, true);
> 
> Ugh. So I was trying to say that I don't want duplication of fec enable. But you
> still have that. Both intel_ddi_enable_fec() and
> retry_fec_enable() have it.
> 
> It's probably intel_ddi_enable_fec() that should try multiple times for display
> version 30+. Right here.
> 
> Adding the retries in "wait for status" is odd.
> 
> Add building blocks for doing parts of what needs to be done, and then drive
> them at the high level.
> 

Just to confirm that I understand the comment correctly, are we talking about something like this

static void intel_ddi_enable_fec(struct intel_encoder *encoder,
                                 const struct intel_crtc_state *crtc_state)
{
...

        intel_de_rmw(dev_priv, dp_tp_ctl_reg(encoder, crtc_state),
                     0, DP_TP_CTL_FEC_ENABLE);

        if (DISPLAY_VER(dev_priv) < 30)
                return;

        for (i = 0; i < 3; i++) {
	/* Wait for FEC status */
                ret = intel_ddi_wait_for_fec_status(encoder, crtc_state, true);

	/* Return if FEC is enabled */
                if(!ret)
                        return;
	...

	/* Disable FEC */
                intel_de_rmw(dev_priv, dp_tp_ctl_reg(encoder, crtc_state),
                             DP_TP_CTL_FEC_ENABLE, 0);
	
	/* Wait for FEC disabled */
                ret = intel_ddi_wait_for_fec_status(encoder, crtc_state, false);

              ...
	/* Enable FEC */
                intel_de_rmw(dev_priv, dp_tp_ctl_reg(encoder, crtc_state),
                             0, DP_TP_CTL_FEC_ENABLE);
        }
}

If so, we have to make two changes to the current code. Let me know if they work.

1. Change return type of intel_ddi_wait_for_fec_status and wait_for_fec_detected to int.
2. I could not find the reason for it (may be Imre knows) but currently the timeout for reading FEC DPCD register is set as 200ms with every read made in an interval of 5ms. However, the spec says that sink should acknowledge FEC enable within 5ms.
    Considering that the initial values were selected based on some empirical evidence, can we have different timeout (5ms or 10ms) for the retry case depending on the Display version?

> >  }
> >
> >  static void intel_ddi_disable_fec(struct intel_encoder *encoder, @@
> > -3010,7 +3057,7 @@ static void intel_disable_ddi_buf(struct intel_encoder
> *encoder,
> >  		disable_ddi_buf(encoder, crtc_state);
> >  	}
> >
> > -	intel_ddi_wait_for_fec_status(encoder, crtc_state, false);
> > +	intel_ddi_wait_for_fec_status(encoder, crtc_state, false, false);
> >  }
> >
> >  static void intel_ddi_post_disable_dp(struct intel_atomic_state
> > *state, @@ -3383,6 +3430,7 @@ static void intel_enable_ddi(struct
> intel_atomic_state *state,
> >  			     const struct intel_crtc_state *crtc_state,
> >  			     const struct drm_connector_state *conn_state)  {
> > +	struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
> >  	struct intel_display *display = to_intel_display(encoder);
> >  	struct intel_crtc *pipe_crtc;
> >  	int i;
> > @@ -3394,7 +3442,8 @@ static void intel_enable_ddi(struct
> > intel_atomic_state *state,
> >
> >  	intel_enable_transcoder(crtc_state);
> >
> > -	intel_ddi_wait_for_fec_status(encoder, crtc_state, true);
> > +	if (DISPLAY_VER(i915) < 30)
> > +		intel_ddi_wait_for_fec_status(encoder, crtc_state, true, false);
> 
> Presumably there's no harm in waiting on all platforms here. It gets tricky
> with all the display version checks.
> 

Ack

> >
> >  	for_each_pipe_crtc_modeset_enable(display, pipe_crtc, crtc_state, i) {
> >  		const struct intel_crtc_state *pipe_crtc_state = diff --git
> > a/drivers/gpu/drm/i915/display/intel_ddi.h
> > b/drivers/gpu/drm/i915/display/intel_ddi.h
> > index 6d85422bdefe..981e7702e11e 100644
> > --- a/drivers/gpu/drm/i915/display/intel_ddi.h
> > +++ b/drivers/gpu/drm/i915/display/intel_ddi.h
> > @@ -65,7 +65,7 @@ void intel_ddi_enable_transcoder_clock(struct
> > intel_encoder *encoder,  void intel_ddi_disable_transcoder_clock(const
> > struct intel_crtc_state *crtc_state);  void intel_ddi_wait_for_fec_status(struct
> intel_encoder *encoder,
> >  				   const struct intel_crtc_state *crtc_state,
> > -				   bool enabled);
> > +				   bool enabled, bool retry);
> >  void intel_ddi_set_dp_msa(const struct intel_crtc_state *crtc_state,
> >  			  const struct drm_connector_state *conn_state);
> bool
> > intel_ddi_connector_get_hw_state(struct intel_connector
> > *intel_connector); diff --git
> > a/drivers/gpu/drm/i915/display/intel_dp_mst.c
> > b/drivers/gpu/drm/i915/display/intel_dp_mst.c
> > index 732d7543ad06..226ac9a73a55 100644
> > --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
> > +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
> > @@ -1289,8 +1289,8 @@ static void intel_mst_enable_dp(struct
> > intel_atomic_state *state,
> >
> >  	wait_for_act_sent(encoder, pipe_config);
> >
> > -	if (first_mst_stream)
> > -		intel_ddi_wait_for_fec_status(encoder, pipe_config, true);
> > +	if (first_mst_stream && DISPLAY_VER(dev_priv) < 30)
> > +		intel_ddi_wait_for_fec_status(encoder, pipe_config, true,
> false);
> 
> Ditto.

Ack

Regards

Chaitanya
> 
> >
> >  	ret = drm_dp_add_payload_part2(&intel_dp->mst_mgr,
> >
> drm_atomic_get_mst_payload_state(mst_state,
> 
> --
> Jani Nikula, Intel

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

end of thread, other threads:[~2024-10-14 12:05 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-08 12:53 [v2] drm/i915/dp: Add FEC Enable Retry mechanism Chaitanya Kumar Borah
2024-10-08 14:17 ` ✓ Fi.CI.BAT: success for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork
2024-10-09 15:16 ` [v2] drm/i915/dp: Add FEC Enable Retry mechanism Jani Nikula
2024-10-14 12:05   ` Borah, Chaitanya Kumar
2024-10-09 20:12 ` ✗ Fi.CI.IGT: failure for drm/i915/dp: Add FEC Enable Retry mechanism (rev2) Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox