All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner
@ 2022-11-15 17:08 Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 01/52] lib/igt_kms: Add a helper for valid pipe/output constraint Bhanuprakash Modem
                   ` (59 more replies)
  0 siblings, 60 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

Add IGT support for bigjoiner:
* Pipe-D won't support mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Rebase
V3: - Optimizations in helper
V4, V5: - Rebase

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

Bhanuprakash Modem (52):
  lib/igt_kms: Add a helper for valid pipe/output constraint
  lib/igt_kms: Bigjoiner check in max_bpc constraint
  tests/kms_async_flips: Add support for Bigjoiner
  tests/kms_atomic: Add support for Bigjoiner
  tests/kms_atomic_interruptible: Add support for Bigjoiner
  tests/kms_atomic_transition: Add support for Bigjoiner
  tests/kms_color_helper: Helper to check Bigjoiner constraint
  tests/kms_color: Add support for Bigjoiner
  tests/chamelium/kms_color_chamelium: Add support for Bigjoiner
  tests/kms_concurrent: Add support for Bigjoiner
  tests/kms_content_protection: Add support for Bigjoiner
  tests/kms_cursor_crc: Add support for Bigjoiner
  tests/kms_cursor_edge_walk: Add support for Bigjoiner
  tests/kms_cursor_legacy: Add support for Bigjoiner
  tests/kms_display_modes: Add support for Bigjoiner
  tests/kms_dp_tiled_display: Add support for Bigjoiner
  tests/kms_flip_event_leak: Add support for Bigjoiner
  tests/kms_invalid_mode: Add support for Bigjoiner
  tests/kms_lease: Add support for Bigjoiner
  tests/kms_multipipe_modeset: Find the suitable mode instead of using
    default
  tests/kms_pipe_crc_basic: Add support for Bigjoiner
  tests/kms_plane: Add support for Bigjoiner
  tests/kms_plane_alpha_blend: Add support for Bigjoiner
  tests/kms_plane_cursor: Add support for Bigjoiner
  tests/kms_plane_lowres: Add support for Bigjoiner
  tests/kms_plane_multiple: Add support for Bigjoiner
  tests/kms_plane_scaling: Add support for Bigjoiner
  tests/kms_prime: Add support for Bigjoiner
  tests/kms_properties: Add support for Bigjoiner
  tests/kms_rmfb: Add support for Bigjoiner
  tests/kms_rotation_crc: Add support for Bigjoiner
  tests/kms_scaling_modes: Add support for Bigjoiner
  tests/kms_sequence: Add support for Bigjoiner
  tests/kms_universal_plane: Add support for Bigjoiner
  tests/kms_vblank: Add support for Bigjoiner
  tests/kms_vrr: Add support for Bigjoiner
  tests/i915/kms_big_fb: Add support for Bigjoiner
  tests/i915/kms_big_joiner: Negative tests for Bigjoiner
  tests/i915/kms_busy: Add support for Bigjoiner
  tests/i915/kms_ccs: Add support for Bigjoiner
  tests/i915/kms_cdclk: Add support for Bigjoiner
  tests/i915/kms_draw_crc: Add support for Bigjoiner
  tests/i915/kms_fence_pin_leak: Add support for Bigjoiner
  tests/i915/kms_flip_scaled_crc: Add support for Bigjoiner
  tests/i915/kms_flip_tiling: Add support for Bigjoiner
  tests/i915/kms_frontbuffer_tracking: Add support for Bigjoiner
  tests/i915/kms_mmap_write_crc: Add support for Bigjoiner
  tests/i915/kms_psr2_sf: Add support for Bigjoiner
  tests/i915/kms_psr2_su: Add support for Bigjoiner
  tests/i915/kms_psr: Add support for Bigjoiner
  tests/i915/kms_psr_stress_test: Add support for Bigjoiner
  tests/i915/kms_pwrite_crc: Add support for Bigjoiner

 lib/igt_kms.c                         |  54 ++++++-
 lib/igt_kms.h                         |   1 +
 tests/chamelium/kms_color_chamelium.c |   9 ++
 tests/i915/kms_big_fb.c               |  13 ++
 tests/i915/kms_big_joiner.c           | 187 ++++++++++------------
 tests/i915/kms_busy.c                 | 106 ++++++++-----
 tests/i915/kms_ccs.c                  |  18 ++-
 tests/i915/kms_cdclk.c                |  93 ++++++-----
 tests/i915/kms_draw_crc.c             |  10 +-
 tests/i915/kms_fence_pin_leak.c       |   9 ++
 tests/i915/kms_flip_scaled_crc.c      |  13 +-
 tests/i915/kms_flip_tiling.c          |   7 +
 tests/i915/kms_frontbuffer_tracking.c |  16 +-
 tests/i915/kms_mmap_write_crc.c       |   6 +
 tests/i915/kms_psr.c                  |   4 +
 tests/i915/kms_psr2_sf.c              |   7 +
 tests/i915/kms_psr2_su.c              |   7 +
 tests/i915/kms_psr_stress_test.c      |   8 +-
 tests/i915/kms_pwrite_crc.c           |  12 +-
 tests/kms_async_flips.c               |  24 ++-
 tests/kms_atomic.c                    |  32 +++-
 tests/kms_atomic_interruptible.c      |  40 +++++
 tests/kms_atomic_transition.c         |  50 +++++-
 tests/kms_color.c                     |   9 +-
 tests/kms_color_helper.c              |  12 ++
 tests/kms_color_helper.h              |   1 +
 tests/kms_concurrent.c                |  10 +-
 tests/kms_content_protection.c        |  15 ++
 tests/kms_cursor_crc.c                |  33 ++++
 tests/kms_cursor_edge_walk.c          |   6 +
 tests/kms_cursor_legacy.c             | 202 +++++++++++++++---------
 tests/kms_display_modes.c             | 104 +++++++-----
 tests/kms_dp_tiled_display.c          |   1 +
 tests/kms_flip_event_leak.c           |  11 +-
 tests/kms_invalid_mode.c              |   6 +
 tests/kms_lease.c                     |   8 +-
 tests/kms_multipipe_modeset.c         |   9 ++
 tests/kms_pipe_crc_basic.c            |  24 +++
 tests/kms_plane.c                     |  30 ++--
 tests/kms_plane_alpha_blend.c         |   9 +-
 tests/kms_plane_cursor.c              |   6 +
 tests/kms_plane_lowres.c              |   3 +
 tests/kms_plane_multiple.c            |  15 +-
 tests/kms_plane_scaling.c             | 218 +++++++++++++++++---------
 tests/kms_prime.c                     |  11 +-
 tests/kms_properties.c                |  18 +++
 tests/kms_rmfb.c                      |  10 +-
 tests/kms_rotation_crc.c              |  25 ++-
 tests/kms_scaling_modes.c             |   8 +-
 tests/kms_sequence.c                  |   6 +
 tests/kms_universal_plane.c           |  94 +++++++++--
 tests/kms_vblank.c                    |  54 ++++++-
 tests/kms_vrr.c                       |   6 +
 53 files changed, 1219 insertions(+), 471 deletions(-)

--
2.38.0

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

* [igt-dev] [i-g-t v5 01/52] lib/igt_kms: Add a helper for valid pipe/output constraint
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 02/52] lib/igt_kms: Bigjoiner check in max_bpc constraint Bhanuprakash Modem
                   ` (58 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

Add an IGT helper to check the given pipe/output combo is valid to decide
whether to run/skip the subtest.

Example:
* Pipe-D can't support mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.
* MSO is supported only on PIPE_A/PIPE_B.

This helper is supposed to be a superset of all constraints of pipe/output
combo. But as of now, this helper supports only Bigjoiner.

V2:
- Rename the helper
- Add is_i915 constraint
- Add pre-condition check (igt_output_set_pipe called)
- Update documentaion
- Minor cleanup in Bigjoiner helper

Cc: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
---
 lib/igt_kms.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++---
 lib/igt_kms.h |  1 +
 2 files changed, 47 insertions(+), 3 deletions(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 921a623d..38aa85d1 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -5824,6 +5824,7 @@ bool igt_check_bigjoiner_support(igt_display_t *display)
 {
 	uint8_t i, total_pipes = 0, pipes_in_use = 0;
 	enum pipe p;
+	igt_output_t *output;
 	struct {
 		enum pipe idx;
 		drmModeModeInfo *mode;
@@ -5837,9 +5838,7 @@ bool igt_check_bigjoiner_support(igt_display_t *display)
 	 * Get list of pipes in use those were set by igt_output_set_pipe()
 	 * just before calling this function.
 	 */
-	for (i = 0 ; i < display->n_outputs; i++) {
-		igt_output_t *output = &display->outputs[i];
-
+	for_each_connected_output(display, output) {
 		if (output->pending_pipe == PIPE_NONE)
 			continue;
 
@@ -5905,3 +5904,47 @@ bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode)
 
 	return true;
 }
+
+/*
+ * i915_pipe_output_combo_valid:
+ * @display: a pointer to an #igt_display_t structure
+ *
+ * Every individual test must use igt_output_set_pipe() before calling this
+ * helper, so that this function will get all active pipes from connected
+ * outputs (i.e. pending_pipe != PIPE_NONE) and check the selected combo is
+ * valid or not.
+ *
+ * This helper is supposed to be a superset of all constraints of pipe/output
+ * combo.
+ *
+ * Example:
+ *  * Pipe-D can't support mode > 5K
+ *  * To use 8K mode on a pipe then consecutive pipe must be free.
+ *  * MSO is supported only on PIPE_A/PIPE_B.
+ *
+ * Returns: true if a valid pipe/output mode combo found, else false
+ */
+bool i915_pipe_output_combo_valid(igt_display_t *display)
+{
+	int combo = 0;
+	igt_output_t *output;
+
+	if (!is_i915_device(display->drm_fd))
+		return true;
+
+	for_each_connected_output(display, output) {
+		if (output->pending_pipe == PIPE_NONE)
+			continue;
+
+		combo++;
+	}
+
+	igt_assert_f(combo, "At least one pipe/output combo needed.\n");
+
+	/*
+	 * Check the given pipe/output combo is valid for Bigjoiner.
+	 *
+	 * TODO: Update this helper to support other features like MSO.
+	 */
+	return igt_check_bigjoiner_support(display);
+}
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b09441d0..0c4ab7ae 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -999,5 +999,6 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
 		igt_output_t *output, int bpc);
 bool igt_check_bigjoiner_support(igt_display_t *display);
 bool igt_parse_mode_string(const char *mode_string, drmModeModeInfo *mode);
+bool i915_pipe_output_combo_valid(igt_display_t *display);
 
 #endif /* __IGT_KMS_H__ */
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 02/52] lib/igt_kms: Bigjoiner check in max_bpc constraint
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 01/52] lib/igt_kms: Add a helper for valid pipe/output constraint Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner Bhanuprakash Modem
                   ` (57 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

There is a possibility of commit failure if the selected pipe/output
won't support Bigjoiner or 8K. So we need to handle this case.

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by:  Swati Sharma <swati2.sharma@intel.com>
---
 lib/igt_kms.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 38aa85d1..86049cb7 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -5794,6 +5794,11 @@ bool igt_max_bpc_constraint(igt_display_t *display, enum pipe pipe,
 
 	for_each_connector_mode(output) {
 		igt_output_override_mode(output, &connector->modes[j__]);
+
+		if (is_i915_device(display->drm_fd) &&
+		    !igt_check_bigjoiner_support(display))
+			continue;
+
 		igt_display_commit2(display, display->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
 
 		if (!igt_check_output_bpc_equal(display->drm_fd, pipe,
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 01/52] lib/igt_kms: Add a helper for valid pipe/output constraint Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 02/52] lib/igt_kms: Bigjoiner check in max_bpc constraint Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-23  6:29   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: " Bhanuprakash Modem
                   ` (56 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_async_flips.c | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c
index 7cb71f6b..674fcb5a 100644
--- a/tests/kms_async_flips.c
+++ b/tests/kms_async_flips.c
@@ -330,15 +330,6 @@ static void test_cursor(data_t *data)
 	struct igt_fb cursor_fb;
 	struct drm_mode_cursor cur;
 
-	/*
-	 * Intel's PSR2 selective fetch adds other planes to state when
-	 * necessary, causing the async flip to fail because async flip is not
-	 * supported in cursor plane.
-	 */
-	igt_skip_on_f(i915_psr2_selective_fetch_check(data->drm_fd),
-		      "PSR2 sel fetch causes cursor to be added to primary plane " \
-		      "pages flips and async flip is not supported in cursor\n");
-
 	do_or_die(drmGetCap(data->drm_fd, DRM_CAP_CURSOR_WIDTH, &width));
 	do_or_die(drmGetCap(data->drm_fd, DRM_CAP_CURSOR_WIDTH, &height));
 
@@ -380,12 +371,12 @@ static void test_invalid(data_t *data)
 	struct igt_fb fb;
 	drmModeModeInfo *mode;
 
+	test_init(data);
+
 	mode = igt_output_get_mode(data->output);
 	width = mode->hdisplay;
 	height = mode->vdisplay;
 
-	test_init(data);
-
 	igt_create_fb(data->drm_fd, width, height, DRM_FORMAT_XRGB8888,
 		      I915_FORMAT_MOD_Y_TILED, &fb);
 
@@ -542,9 +533,16 @@ static void run_test(data_t *data, void (*test)(data_t *))
 {
 	igt_output_t *output;
 	enum pipe pipe;
+	igt_display_t *display = &data->display;
+
+	for_each_pipe(display, pipe) {
+		for_each_valid_output_on_pipe(display, pipe, output) {
+			igt_display_reset(display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(display))
+				continue;
 
-	for_each_pipe(&data->display, pipe) {
-		for_each_valid_output_on_pipe(&data->display, pipe, output) {
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
 				data->output = output;
 				data->pipe = pipe;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (2 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-28 18:30   ` Swati Sharma
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: " Bhanuprakash Modem
                   ` (55 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_atomic.c | 32 ++++++++++++++++++++++++++++----
 1 file changed, 28 insertions(+), 4 deletions(-)

diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
index 2a3fb74b..61117a3f 100644
--- a/tests/kms_atomic.c
+++ b/tests/kms_atomic.c
@@ -1265,6 +1265,10 @@ static void atomic_plane_damage(igt_pipe_t *pipe, igt_plane_t *plane, struct igt
 
 static void atomic_setup(igt_display_t *display, enum pipe pipe, igt_output_t *output, igt_plane_t *primary, struct igt_fb *fb)
 {
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	igt_display_reset(display);
 	igt_output_set_pipe(output, pipe);
 	igt_plane_set_fb(primary, fb);
 
@@ -1293,6 +1297,7 @@ igt_main
 	igt_plane_t *primary = NULL;
 	drmModeModeInfo *mode;
 	struct igt_fb fb;
+	bool valid_config = false;
 
 	igt_fixture {
 		display.drm_fd = drm_open_driver_master(DRIVER_ANY);
@@ -1303,8 +1308,16 @@ igt_main
 		igt_require(display.is_atomic);
 		igt_display_require_output(&display);
 
-		for_each_pipe_with_valid_output(&display, pipe, output)
-			break;
+		for_each_pipe_with_valid_output(&display, pipe, output) {
+			igt_display_reset(&display);
+
+			igt_output_set_pipe(output, pipe);
+			if (i915_pipe_output_combo_valid(&display)) {
+				valid_config = true;
+				break;
+			}
+		}
+		igt_require(valid_config);
 
 		pipe_obj = &display.pipes[pipe];
 		primary = igt_pipe_get_plane_type(pipe_obj, DRM_PLANE_TYPE_PRIMARY);
@@ -1342,9 +1355,13 @@ igt_main
 	igt_subtest("plane-primary-overlay-mutable-zpos") {
 		uint32_t format_primary = DRM_FORMAT_ARGB8888;
 		uint32_t format_overlay = DRM_FORMAT_ARGB1555;
+		igt_plane_t *overlay;
 
-		igt_plane_t *overlay =
-			igt_pipe_get_plane_type(pipe_obj, DRM_PLANE_TYPE_OVERLAY);
+		igt_info("Using (pipe %s + %s) to run the subtest.\n",
+			 kmstest_pipe_name(pipe), igt_output_name(output));
+
+		igt_display_reset(&display);
+		overlay = igt_pipe_get_plane_type(pipe_obj, DRM_PLANE_TYPE_OVERLAY);
 		igt_require(overlay);
 
 		igt_require(igt_plane_has_prop(primary, IGT_PLANE_ZPOS));
@@ -1361,6 +1378,10 @@ igt_main
 	igt_describe("Verify the reported zpos property of planes by making sure "\
 		     "only higher zpos planes cover the lower zpos ones.");
 	igt_subtest("plane-immutable-zpos") {
+		igt_info("Using (pipe %s + %s) to run the subtest.\n",
+			 kmstest_pipe_name(pipe), igt_output_name(output));
+
+		igt_display_reset(&display);
 		igt_output_set_pipe(output, pipe);
 		plane_immutable_zpos(&display, pipe_obj, output);
 	}
@@ -1370,6 +1391,9 @@ igt_main
 	igt_subtest("test-only") {
 		atomic_clear(&display, pipe, primary, output);
 
+		igt_info("Using (pipe %s + %s) to run the subtest.\n",
+			 kmstest_pipe_name(pipe), igt_output_name(output));
+
 		test_only(pipe_obj, primary, output);
 	}
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (3 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 06/52] tests/kms_atomic_transition: " Bhanuprakash Modem
                   ` (54 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_atomic_interruptible.c | 40 ++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/tests/kms_atomic_interruptible.c b/tests/kms_atomic_interruptible.c
index f461a15c..74b2e246 100644
--- a/tests/kms_atomic_interruptible.c
+++ b/tests/kms_atomic_interruptible.c
@@ -82,11 +82,15 @@ static void run_plane_test(igt_display_t *display, enum pipe pipe, igt_output_t
 	igt_plane_t *primary, *plane;
 	int block;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	/*
 	 * Make sure we start with everything disabled to force a real modeset.
 	 * igt_display_require only sets sw state, and assumes the first test
 	 * doesn't care about hw state.
 	 */
+	igt_display_reset(display);
 	igt_display_commit2(display, COMMIT_ATOMIC);
 
 	igt_output_set_pipe(output, pipe);
@@ -265,6 +269,21 @@ static void run_plane_test(igt_display_t *display, enum pipe pipe, igt_output_t
 	igt_remove_fb(display->drm_fd, &fb);
 }
 
+static bool pipe_output_combo_valid(igt_display_t *display,
+				    enum pipe pipe, igt_output_t *output)
+{
+	bool ret = true;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 igt_main
 {
 	igt_display_t display;
@@ -286,6 +305,9 @@ igt_main
 	igt_describe("Tests the interrupt properties of legacy modeset");
 	igt_subtest_with_dynamic("legacy-setmode") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_legacy_modeset, DRM_PLANE_TYPE_PRIMARY);
 			break;
@@ -295,6 +317,9 @@ igt_main
 	igt_describe("Tests the interrupt properties of atomic modeset");
 	igt_subtest_with_dynamic("atomic-setmode") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_atomic_modeset, DRM_PLANE_TYPE_PRIMARY);
 			break;
@@ -304,6 +329,9 @@ igt_main
 	igt_describe("Tests the interrupt properties for DPMS");
 	igt_subtest_with_dynamic("legacy-dpms") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_legacy_dpms, DRM_PLANE_TYPE_PRIMARY);
 			break;
@@ -313,6 +341,9 @@ igt_main
 	igt_describe("Tests the interrupt properties for pageflip");
 	igt_subtest_with_dynamic("legacy-pageflip") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_pageflip, DRM_PLANE_TYPE_PRIMARY);
 			break;
@@ -322,6 +353,9 @@ igt_main
 	igt_describe("Tests the interrupt properties for cursor");
 	igt_subtest_with_dynamic("legacy-cursor") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_setcursor, DRM_PLANE_TYPE_CURSOR);
 			break;
@@ -331,6 +365,9 @@ igt_main
 	igt_describe("Tests the interrupt properties for primary plane");
 	igt_subtest_with_dynamic("universal-setplane-primary") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_setplane, DRM_PLANE_TYPE_PRIMARY);
 			break;
@@ -340,6 +377,9 @@ igt_main
 	igt_describe("Tests the interrupt properties for cursor plane");
 	igt_subtest_with_dynamic("universal-setplane-cursor") {
 		for_each_pipe_with_valid_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, pipe, output))
+				continue;
+
 			igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe))
 				run_plane_test(&display, pipe, output, test_setplane, DRM_PLANE_TYPE_CURSOR);
 			break;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 06/52] tests/kms_atomic_transition: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (4 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 07/52] tests/kms_color_helper: Helper to check Bigjoiner constraint Bhanuprakash Modem
                   ` (53 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_atomic_transition.c | 50 ++++++++++++++++++++++++++++++++---
 1 file changed, 46 insertions(+), 4 deletions(-)

diff --git a/tests/kms_atomic_transition.c b/tests/kms_atomic_transition.c
index 6d2ebbbf..5285585f 100644
--- a/tests/kms_atomic_transition.c
+++ b/tests/kms_atomic_transition.c
@@ -68,6 +68,10 @@ run_primary_test(data_t *data, enum pipe pipe, igt_output_t *output)
 	unsigned flags = DRM_MODE_ATOMIC_TEST_ONLY | DRM_MODE_ATOMIC_ALLOW_MODESET;
 
 	igt_display_reset(&data->display);
+
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
@@ -487,6 +491,9 @@ run_transition_test(data_t *data, enum pipe pipe, igt_output_t *output,
 	unsigned flags = 0;
 	int ret;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	if (fencing)
 		prepare_fencing(data, pipe);
 	else
@@ -753,8 +760,13 @@ static unsigned set_combinations(data_t *data, unsigned mask, struct igt_fb *fb)
 			if (output->pending_pipe != PIPE_NONE)
 				continue;
 
-			mode = igt_output_get_mode(output);
-			break;
+			igt_output_set_pipe(output, pipe);
+			if (i915_pipe_output_combo_valid(&data->display)) {
+				mode = igt_output_get_mode(output);
+				break;
+			} else {
+				igt_output_set_pipe(output, PIPE_NONE);
+			}
 		}
 
 		if (!mode)
@@ -840,8 +852,17 @@ retry:
 				continue;
 
 			igt_output_set_pipe(output, i);
-			mode = igt_output_get_mode(output);
-			break;
+			if (i915_pipe_output_combo_valid(&data->display)) {
+				mode = igt_output_get_mode(output);
+
+				igt_info("(pipe %s + %s), mode:",
+					 kmstest_pipe_name(i), igt_output_name(output));
+				kmstest_dump_mode(mode);
+
+				break;
+			} else {
+				igt_output_set_pipe(output, PIPE_NONE);
+			}
 		}
 
 		if (mode) {
@@ -980,6 +1001,21 @@ static void run_modeset_transition(data_t *data, int requested_outputs, bool non
 	igt_remove_fb(data->drm_fd, &data->fbs[1]);
 }
 
+static bool pipe_output_combo_valid(igt_display_t *display,
+				    enum pipe pipe, igt_output_t *output)
+{
+	bool ret = true;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 static int opt_handler(int opt, int opt_index, void *_data)
 {
 	data_t *data = _data;
@@ -1079,6 +1115,9 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 			if (pipe_count == 2 * count && !data.extended)
 				break;
 
+			if (!pipe_output_combo_valid(&data.display, pipe, output))
+				continue;
+
 			pipe_count++;
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output))
 				run_primary_test(&data, pipe, output);
@@ -1108,6 +1147,9 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 				if (pipe_count == 2 * count && !data.extended)
 					break;
 
+				if (!pipe_output_combo_valid(&data.display, pipe, output))
+					continue;
+
 				pipe_count++;
 				igt_dynamic_f("pipe-%s-%s",
 					      kmstest_pipe_name(pipe),
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 07/52] tests/kms_color_helper: Helper to check Bigjoiner constraint
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (5 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 06/52] tests/kms_atomic_transition: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 08/52] tests/kms_color: Add support for Bigjoiner Bhanuprakash Modem
                   ` (52 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

Add a helper to Skip the subtest if a selected pipe/output combo
won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_color_helper.c | 12 ++++++++++++
 tests/kms_color_helper.h |  1 +
 2 files changed, 13 insertions(+)

diff --git a/tests/kms_color_helper.c b/tests/kms_color_helper.c
index 55f3e409..2f9950f8 100644
--- a/tests/kms_color_helper.c
+++ b/tests/kms_color_helper.c
@@ -24,6 +24,18 @@
 
 #include "kms_color_helper.h"
 
+bool pipe_output_combo_valid(data_t *data, enum pipe pipe)
+{
+	bool ret = true;
+
+	igt_output_set_pipe(data->output, pipe);
+	if (!i915_pipe_output_combo_valid(&data->display))
+		ret = false;
+	igt_output_set_pipe(data->output, PIPE_NONE);
+
+	return ret;
+}
+
 bool
 panel_supports_deep_color(int drm_fd, char *output_name)
 {
diff --git a/tests/kms_color_helper.h b/tests/kms_color_helper.h
index f0ae30e3..bfed2fb8 100644
--- a/tests/kms_color_helper.h
+++ b/tests/kms_color_helper.h
@@ -69,6 +69,7 @@ typedef struct {
 	color_t coeffs[];
 } gamma_lut_t;
 
+bool pipe_output_combo_valid(data_t *data, enum pipe pipe);
 bool panel_supports_deep_color(int fd, char *output_name);
 uint64_t get_max_bpc(igt_output_t *output);
 void paint_gradient_rectangles(data_t *data,
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 08/52] tests/kms_color: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (6 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 07/52] tests/kms_color_helper: Helper to check Bigjoiner constraint Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 09/52] tests/chamelium/kms_color_chamelium: " Bhanuprakash Modem
                   ` (51 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_color.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/tests/kms_color.c b/tests/kms_color.c
index d016cefb..5d53b441 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -725,9 +725,13 @@ run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
 	data->drm_format = DRM_FORMAT_XRGB8888;
 	data->mode = igt_output_get_mode(data->output);
 
+	if (!pipe_output_combo_valid(data, p))
+		goto out;
+
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
 		igt_assert(test_t(data, data->primary));
 
+out:
 	test_cleanup(data);
 }
 
@@ -755,6 +759,9 @@ run_ctm_tests_for_pipe(data_t *data, enum pipe p,
 	data->drm_format = DRM_FORMAT_XRGB8888;
 	data->mode = igt_output_get_mode(data->output);
 
+	if (!pipe_output_combo_valid(data, p))
+		goto out;
+
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
 		bool success = false;
 		int i;
@@ -783,6 +790,7 @@ run_ctm_tests_for_pipe(data_t *data, enum pipe p,
 		igt_assert(success);
 	}
 
+out:
 	test_cleanup(data);
 }
 
@@ -823,7 +831,6 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
 		igt_display_reset(&data->display);
 		igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
 		igt_output_set_pipe(output, p);
-		igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
 
 		if (is_i915_device(data->drm_fd) &&
 		    !igt_max_bpc_constraint(&data->display, p, output, 10))
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 09/52] tests/chamelium/kms_color_chamelium: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (7 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 08/52] tests/kms_color: Add support for Bigjoiner Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Bhanuprakash Modem
                   ` (50 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/chamelium/kms_color_chamelium.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/chamelium/kms_color_chamelium.c b/tests/chamelium/kms_color_chamelium.c
index 907f4dd5..b7c84ae4 100644
--- a/tests/chamelium/kms_color_chamelium.c
+++ b/tests/chamelium/kms_color_chamelium.c
@@ -458,6 +458,9 @@ run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
 	data->drm_format = DRM_FORMAT_XRGB8888;
 	data->mode = igt_output_get_mode(data->output);
 
+	if (!pipe_output_combo_valid(data, p))
+		return;
+
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
 		igt_assert(test_t(data, data->primary, data->ports[port_idx]));
 }
@@ -493,6 +496,9 @@ run_ctm_tests_for_pipe(data_t *data, enum pipe p,
 	data->drm_format = DRM_FORMAT_XRGB8888;
 	data->mode = igt_output_get_mode(data->output);
 
+	if (!pipe_output_combo_valid(data, p))
+		return;
+
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
 		bool success = false;
 		int i;
@@ -538,6 +544,9 @@ run_limited_range_ctm_test_for_pipe(data_t *data, enum pipe p,
 	data->drm_format = DRM_FORMAT_XRGB8888;
 	data->mode = igt_output_get_mode(data->output);
 
+	if (!pipe_output_combo_valid(data, p))
+		return;
+
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
 		igt_assert(test_t(data, data->primary, data->ports[port_idx]));
 }
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (8 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 09/52] tests/chamelium/kms_color_chamelium: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: " Bhanuprakash Modem
                   ` (49 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_concurrent.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
index 6f8ffd4a..e6d61a84 100644
--- a/tests/kms_concurrent.c
+++ b/tests/kms_concurrent.c
@@ -330,9 +330,17 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
 	igt_describe("Test atomic mode setting concurrently with multiple planes and screen "
 		     "resolution.");
 	igt_subtest_with_dynamic_f("pipe-%s", kmstest_pipe_name(pipe)) {
-		for_each_valid_output_on_pipe(&data->display, pipe, output)
+		for_each_valid_output_on_pipe(&data->display, pipe, output) {
+			igt_display_reset(&data->display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(&data->display))
+				continue;
+
+			igt_output_set_pipe(output, PIPE_NONE);
 			igt_dynamic_f("%s", igt_output_name(output))
 				run_test(data, pipe, output);
+		}
 	}
 }
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (9 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-27  6:36   ` Karthik B S
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: " Bhanuprakash Modem
                   ` (48 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_content_protection.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index aa28b7bf..0aa2a8a2 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -502,6 +502,13 @@ test_content_protection(enum igt_commit_style s, int content_type)
 				continue;
 
 			igt_display_reset(display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(display)) {
+				igt_output_set_pipe(output, PIPE_NONE);
+				continue;
+			}
+
 			modeset_with_fb(pipe, output, s);
 
 			if (!output_hdcp_capable(output, content_type))
@@ -623,6 +630,14 @@ test_content_protection_mst(int content_type)
 		igt_assert_f(pipe_found, "No valid pipe found for %s\n", output->name);
 
 		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display)){
+			igt_output_set_pipe(output, PIPE_NONE);
+			continue;
+		}
+
+		igt_info("Using (pipe %s + %s) to run the subtest.\n",
+			 kmstest_pipe_name(pipe), igt_output_name(output));
+
 		prepare_modeset_on_mst_output(output);
 		mst_output[dp_mst_outputs++] = output;
 	}
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (10 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-27  6:57   ` Thasleem, Mohammed
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: " Bhanuprakash Modem
                   ` (47 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_cursor_crc.c | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c
index 68bed666..99a7c717 100644
--- a/tests/kms_cursor_crc.c
+++ b/tests/kms_cursor_crc.c
@@ -700,6 +700,21 @@ static void test_rapid_movement(data_t *data)
 	igt_assert_lt(usec, 0.9 * 400 * 1000000 / data->refresh);
 }
 
+static bool pipe_output_combo_valid(data_t *data, enum pipe pipe)
+{
+	bool ret = true;
+	igt_display_t *display = &data->display;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(data->output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(data->output, PIPE_NONE);
+
+	return ret;
+}
+
 static void run_size_tests(data_t *data, int w, int h)
 {
 	enum pipe pipe;
@@ -757,6 +772,9 @@ static void run_size_tests(data_t *data, int w, int h)
 					continue;
 				}
 
+				if (!pipe_output_combo_valid(data, pipe))
+					continue;
+
 				igt_dynamic_f("pipe-%s-%s",
 					      kmstest_pipe_name(pipe), igt_output_name(data->output))
 					run_test(data, size_tests[i].testfunc, w, h);
@@ -787,6 +805,9 @@ static void run_tests_on_pipe(data_t *data)
 		for_each_pipe(&data->display, pipe) {
 			data->pipe = pipe;
 
+			if (!pipe_output_combo_valid(data, pipe))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s",
 				      kmstest_pipe_name(pipe),
 				      data->output->name)
@@ -801,6 +822,9 @@ static void run_tests_on_pipe(data_t *data)
 		for_each_pipe(&data->display, pipe) {
 			data->pipe = pipe;
 
+			if (!pipe_output_combo_valid(data, pipe))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s",
 				      kmstest_pipe_name(pipe),
 				      data->output->name)
@@ -815,6 +839,9 @@ static void run_tests_on_pipe(data_t *data)
 		for_each_pipe(&data->display, pipe) {
 			data->pipe = pipe;
 
+			if (!pipe_output_combo_valid(data, pipe))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s",
 				      kmstest_pipe_name(pipe),
 				      data->output->name)
@@ -833,6 +860,9 @@ static void run_tests_on_pipe(data_t *data)
 			data->pipe = pipe;
 			data->flags = TEST_DPMS;
 
+			if (!pipe_output_combo_valid(data, pipe))
+				continue;
+
 			if (require_cursor_size(data, data->cursor_max_w, data->cursor_max_h)) {
 				igt_debug("Cursor size %dx%d not supported by driver\n",
 					  data->cursor_max_w, data->cursor_max_h);
@@ -854,6 +884,9 @@ static void run_tests_on_pipe(data_t *data)
 			data->pipe = pipe;
 			data->flags = TEST_SUSPEND;
 
+			if (!pipe_output_combo_valid(data, pipe))
+				continue;
+
 			if (require_cursor_size(data, data->cursor_max_w, data->cursor_max_h)) {
 				igt_debug("Cursor size %dx%d not supported by driver\n",
 					  data->cursor_max_w, data->cursor_max_h);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (11 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-27  6:31   ` Thasleem, Mohammed
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: " Bhanuprakash Modem
                   ` (46 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_cursor_edge_walk.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/kms_cursor_edge_walk.c b/tests/kms_cursor_edge_walk.c
index e653b9ab..86b880d8 100644
--- a/tests/kms_cursor_edge_walk.c
+++ b/tests/kms_cursor_edge_walk.c
@@ -351,6 +351,12 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 						data.curh = data.curw;
 						igt_require(data.curw <= max_curw && data.curh <= max_curh);
 
+						igt_display_reset(&data.display);
+						igt_output_set_pipe(data.output, data.pipe);
+						if (!i915_pipe_output_combo_valid(&data.display))
+							continue;
+
+						igt_output_set_pipe(data.output, PIPE_NONE);
 						igt_dynamic_f("pipe-%s-%s-%dx%d",
 							      kmstest_pipe_name(data.pipe),
 							      data.output->name,
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (12 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-27 16:24   ` Thasleem, Mohammed
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 15/52] tests/kms_display_modes: " Bhanuprakash Modem
                   ` (45 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

As many 2x tests are currently running on Pipe-A & B only, those
tests will always SKIP if there is any 8K supported panel in the
config. Instead of Skipping the test, add some intelligence to
the subtest to identify the valid pipe/output combo to execute
the subtest.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_cursor_legacy.c | 202 +++++++++++++++++++++++---------------
 1 file changed, 124 insertions(+), 78 deletions(-)

diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 6b75e98c..acba3561 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -177,31 +177,21 @@ static void stress(igt_display_t *display,
 	munmap(results, PAGE_SIZE);
 }
 
-static igt_output_t *set_fb_on_crtc(igt_display_t *display, enum pipe pipe, struct igt_fb *fb_info)
+static void set_fb_on_crtc(igt_display_t *display, enum pipe pipe,
+			   igt_output_t *output, struct igt_fb *fb_info)
 {
-	igt_output_t *output;
-
-	for_each_valid_output_on_pipe(display, pipe, output) {
-		drmModeModeInfoPtr mode;
-		igt_plane_t *primary;
-
-		if (output->pending_pipe != PIPE_NONE)
-			continue;
-
-		igt_output_set_pipe(output, pipe);
-		mode = igt_output_get_mode(output);
+	drmModeModeInfoPtr mode;
+	igt_plane_t *primary;
 
-		igt_create_pattern_fb(display->drm_fd,
-			      mode->hdisplay, mode->vdisplay,
-			      DRM_FORMAT_XRGB8888, I915_TILING_NONE, fb_info);
+	igt_output_set_pipe(output, pipe);
+	mode = igt_output_get_mode(output);
 
-		primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
-		igt_plane_set_fb(primary, fb_info);
+	igt_create_pattern_fb(display->drm_fd,
+		      mode->hdisplay, mode->vdisplay,
+		      DRM_FORMAT_XRGB8888, I915_TILING_NONE, fb_info);
 
-		return output;
-	}
-
-	return NULL;
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+	igt_plane_set_fb(primary, fb_info);
 }
 
 static	igt_plane_t
@@ -236,36 +226,44 @@ static void populate_cursor_args(igt_display_t *display, enum pipe pipe,
 	arg[1] = *arg;
 }
 
-static enum pipe find_connected_pipe(igt_display_t *display, bool second)
+static enum pipe
+find_connected_pipe(igt_display_t *display, bool second, igt_output_t **output)
 {
-	enum pipe pipe, first = PIPE_NONE;
-	igt_output_t *output;
-	igt_output_t *first_output = NULL;
+	enum pipe pipe;
+	bool first_output = false;
 	bool found = false;
 
 	if (!second) {
 		igt_pipe_crc_free(pipe_crc);
 		pipe_crc = NULL;
-
-		/* Clear display, events will be eaten by commit.. */
-		igt_display_reset(display);
 	}
 
-	for_each_pipe_with_valid_output(display, pipe, output) {
-		if (first == pipe || output == first_output)
-			continue;
+	/* Clear display, events will be eaten by commit.. */
+	igt_display_reset(display);
 
-		if (second) {
-			first = pipe;
-			first_output = output;
-			second = false;
-			continue;
-		}
+	for_each_pipe(display, pipe) {
+		for_each_valid_output_on_pipe(display, pipe, *output) {
+			if((*output)->pending_pipe != PIPE_NONE)
+				continue;
 
-		found = true;
-		break;
+			igt_output_set_pipe(*output, pipe);
+			if (i915_pipe_output_combo_valid(display)) {
+				found = true;
+
+				if (second) {
+					first_output = true;
+					second = false;
+					found = false;
+				}
+				break;
+			}
+			igt_output_set_pipe(*output, PIPE_NONE);
+		}
+		if (found)
+			break;
 	}
 
+	igt_display_reset(display);
 	if (first_output)
 		igt_require_f(found, "No second valid output found\n");
 	else
@@ -429,10 +427,9 @@ static void flip(igt_display_t *display,
 	results = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
 	igt_assert(results != MAP_FAILED);
 
-	igt_display_reset(display);
-
-	flip_pipe = find_connected_pipe(display, !!flip_pipe);
-	cursor_pipe = find_connected_pipe(display, !!cursor_pipe);
+	flip_pipe = find_connected_pipe(display, !!flip_pipe, &output);
+	cursor_pipe = find_connected_pipe(display, !!cursor_pipe, &output2);
+	igt_skip_on(!output || !output2);
 
 	igt_info("Using pipe %s for page flip, pipe %s for cursor\n",
 		  kmstest_pipe_name(flip_pipe), kmstest_pipe_name(cursor_pipe));
@@ -446,15 +443,15 @@ static void flip(igt_display_t *display,
 					DRM_PLANE_TYPE_OVERLAY));
 	}
 
-	igt_require((output = set_fb_on_crtc(display, flip_pipe, &fb_info)));
+	set_fb_on_crtc(display, flip_pipe, output, &fb_info);
 	if (flip_pipe != cursor_pipe) {
-		igt_require((output2 = set_fb_on_crtc(display, cursor_pipe, &fb_info2)));
+		set_fb_on_crtc(display, cursor_pipe, output2, &fb_info2);
 
 		if (try_commit(display)) {
 			override_output_modes(display, output, output2);
 
-			igt_require((output = set_fb_on_crtc(display, flip_pipe, &fb_info)));
-			igt_require((output2 = set_fb_on_crtc(display, cursor_pipe, &fb_info2)));
+			set_fb_on_crtc(display, flip_pipe, output, &fb_info);
+			set_fb_on_crtc(display, cursor_pipe, output2, &fb_info2);
 		}
 	}
 
@@ -546,7 +543,7 @@ static void basic_flip_cursor(igt_display_t *display,
 	struct drm_event_vblank vbl;
 	struct igt_fb fb_info, cursor_fb, cursor_fb2, argb_fb;
 	unsigned vblank_start;
-	enum pipe pipe = find_connected_pipe(display, false);
+	enum pipe pipe;
 	uint64_t ahnd = 0;
 	igt_spin_t *spin;
 	int i, miss1 = 0, miss2 = 0, delta;
@@ -562,7 +559,13 @@ static void basic_flip_cursor(igt_display_t *display,
 	if (mode >= flip_test_atomic)
 		igt_require(display->is_atomic);
 
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	set_fb_on_crtc(display, pipe, output, &fb_info);
 
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
 	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
@@ -717,7 +720,7 @@ static void flip_vs_cursor(igt_display_t *display, enum flip_test mode, int nloo
 	struct igt_fb fb_info, cursor_fb, cursor_fb2, argb_fb;
 	unsigned vblank_start;
 	int target, cpu;
-	enum pipe pipe = find_connected_pipe(display, false);
+	enum pipe pipe;
 	volatile unsigned long *shared;
 	cpu_set_t mask, oldmask;
 	igt_output_t *output;
@@ -726,7 +729,13 @@ static void flip_vs_cursor(igt_display_t *display, enum flip_test mode, int nloo
 	if (mode >= flip_test_atomic)
 		igt_require(display->is_atomic);
 
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	set_fb_on_crtc(display, pipe, output, &fb_info);
 
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
 	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
@@ -845,12 +854,18 @@ static void nonblocking_modeset_vs_cursor(igt_display_t *display, int loops)
 {
 	struct igt_fb fb_info, cursor_fb;
 	igt_output_t *output;
-	enum pipe pipe = find_connected_pipe(display, false);
+	enum pipe pipe;
 	struct drm_mode_cursor arg[2];
 	igt_plane_t *primary, *cursor = NULL;
 
 	igt_require(display->is_atomic);
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	set_fb_on_crtc(display, pipe, output, &fb_info);
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
 	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
@@ -937,8 +952,7 @@ static void two_screens_flip_vs_cursor(igt_display_t *display, int nloops, bool
 {
 	struct drm_mode_cursor arg1[2], arg2[2];
 	struct igt_fb fb_info, fb2_info, cursor_fb;
-	enum pipe pipe = find_connected_pipe(display, false);
-	enum pipe pipe2 = find_connected_pipe(display, true);
+	enum pipe pipe, pipe2;
 	igt_output_t *output, *output2;
 	bool enabled = false;
 	volatile unsigned long *shared;
@@ -954,22 +968,28 @@ static void two_screens_flip_vs_cursor(igt_display_t *display, int nloops, bool
 		igt_require(drmGetCap(display->drm_fd, DRM_CAP_CRTC_IN_VBLANK_EVENT, &val) == 0);
 	}
 
+	if (atomic)
+		igt_require(display->is_atomic);
+
 	shared = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
 	igt_assert(shared != MAP_FAILED);
 
-	igt_fail_on(modeset && !atomic);
+	pipe = find_connected_pipe(display, false, &output);
+	pipe2 = find_connected_pipe(display, true, &output2);
+	igt_skip_on(!output || !output2);
 
-	if (atomic)
-		igt_require(display->is_atomic);
+	igt_info("Using pipe %s & %s and pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output),
+		 kmstest_pipe_name(pipe2), igt_output_name(output2));
 
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
-	igt_require((output2 = set_fb_on_crtc(display, pipe2, &fb2_info)));
+	set_fb_on_crtc(display, pipe, output, &fb_info);
+	set_fb_on_crtc(display, pipe2, output2, &fb2_info);
 
 	if (try_commit(display)) {
 		override_output_modes(display, output, output2);
 
-		igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
-		igt_require((output2 = set_fb_on_crtc(display, pipe2, &fb2_info)));
+		set_fb_on_crtc(display, pipe, output, &fb_info);
+		set_fb_on_crtc(display, pipe2, output2, &fb2_info);
 	}
 
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
@@ -1122,7 +1142,7 @@ static void cursor_vs_flip(igt_display_t *display, enum flip_test mode, int nloo
 	unsigned vblank_start, vblank_last;
 	volatile unsigned long *shared;
 	long target;
-	enum pipe pipe = find_connected_pipe(display, false);
+	enum pipe pipe;
 	igt_output_t *output;
 	uint32_t vrefresh;
 	int fail_count;
@@ -1134,7 +1154,13 @@ static void cursor_vs_flip(igt_display_t *display, enum flip_test mode, int nloo
 	shared = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
 	igt_assert(shared != MAP_FAILED);
 
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	set_fb_on_crtc(display, pipe, output, &fb_info);
 	vrefresh = igt_output_get_mode(output)->vrefresh;
 
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
@@ -1226,10 +1252,7 @@ static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool
 	struct igt_fb fb_info[2], cursor_fb;
 	volatile unsigned long *shared;
 	int target[2];
-	enum pipe pipe[2] = {
-		find_connected_pipe(display, false),
-		find_connected_pipe(display, true)
-	};
+	enum pipe pipe[2];
 	igt_output_t *outputs[2];
 	igt_plane_t *cursors[2];
 
@@ -1239,14 +1262,22 @@ static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool
 	if (atomic)
 		igt_require(display->is_atomic);
 
-	igt_require((outputs[0] = set_fb_on_crtc(display, pipe[0], &fb_info[0])));
-	igt_require((outputs[1] = set_fb_on_crtc(display, pipe[1], &fb_info[1])));
+	pipe[0] = find_connected_pipe(display, false, &outputs[0]);
+	pipe[1] = find_connected_pipe(display, true, &outputs[1]);
+	igt_skip_on(!outputs[0] || !outputs[1]);
+
+	igt_info("Using pipe %s & %s and pipe %s & %s\n",
+		 kmstest_pipe_name(pipe[0]), igt_output_name(outputs[0]),
+		 kmstest_pipe_name(pipe[1]), igt_output_name(outputs[1]));
+
+	set_fb_on_crtc(display, pipe[0], outputs[0], &fb_info[0]);
+	set_fb_on_crtc(display, pipe[1], outputs[1], &fb_info[1]);
 
 	if (try_commit(display)) {
 		override_output_modes(display, outputs[0], outputs[1]);
 
-		igt_require((outputs[0] = set_fb_on_crtc(display, pipe[0], &fb_info[0])));
-		igt_require((outputs[1] = set_fb_on_crtc(display, pipe[1], &fb_info[1])));
+		set_fb_on_crtc(display, pipe[0], outputs[0], &fb_info[0]);
+		set_fb_on_crtc(display, pipe[1], outputs[1], &fb_info[1]);
 	}
 
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
@@ -1347,7 +1378,7 @@ static void flip_vs_cursor_crc(igt_display_t *display, bool atomic)
 	struct drm_event_vblank vbl;
 	struct igt_fb fb_info, cursor_fb;
 	unsigned vblank_start;
-	enum pipe pipe = find_connected_pipe(display, false);
+	enum pipe pipe;
 	igt_crc_t crcs[3];
 	igt_output_t *output;
 	igt_plane_t *cursor;
@@ -1355,7 +1386,13 @@ static void flip_vs_cursor_crc(igt_display_t *display, bool atomic)
 	if (atomic)
 		igt_require(display->is_atomic);
 
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	set_fb_on_crtc(display, pipe, output, &fb_info);
 
 	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
 	populate_cursor_args(display, pipe, arg, &cursor_fb);
@@ -1412,9 +1449,9 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
 	struct drm_event_vblank vbl;
 	struct igt_fb fb_info[2], cursor_fb;
 	unsigned vblank_start;
-	enum pipe pipe = find_connected_pipe(display, false);
-	igt_pipe_t *pipe_connected = &display->pipes[pipe];
-	igt_plane_t *plane_primary = igt_pipe_get_plane_type(pipe_connected, DRM_PLANE_TYPE_PRIMARY);
+	enum pipe pipe;
+	igt_pipe_t *pipe_connected;
+	igt_plane_t *plane_primary;
 	igt_crc_t crcs[2], test_crc;
 	uint64_t ahnd;
 	igt_output_t *output;
@@ -1426,7 +1463,16 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
 	if (atomic)
 		igt_require(display->is_atomic);
 
-	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info[0])));
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	pipe_connected = &display->pipes[pipe];
+	plane_primary = igt_pipe_get_plane_type(pipe_connected, DRM_PLANE_TYPE_PRIMARY);
+
+	set_fb_on_crtc(display, pipe, output, &fb_info[0]);
 	igt_create_color_pattern_fb(display->drm_fd, fb_info[0].width, fb_info[0].height,
 				    DRM_FORMAT_XRGB8888, I915_FORMAT_MOD_X_TILED, .1, .1, .1, &fb_info[1]);
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 15/52] tests/kms_display_modes: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (13 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 16/52] tests/kms_dp_tiled_display: " Bhanuprakash Modem
                   ` (44 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

As many 2x tests are currently running on Pipe-A & B only, those
tests will always SKIP if there is any 8K supported panel in the
config. Instead of Skipping the test, add some intelligence to
the subtest to identify the valid pipe/output combo to execute
the subtest.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_display_modes.c | 104 +++++++++++++++++++++++---------------
 1 file changed, 62 insertions(+), 42 deletions(-)

diff --git a/tests/kms_display_modes.c b/tests/kms_display_modes.c
index e4191811..02fee317 100644
--- a/tests/kms_display_modes.c
+++ b/tests/kms_display_modes.c
@@ -34,31 +34,26 @@ typedef struct {
 	int n_pipes;
 } data_t;
 
-static void run_extendedmode_basic(data_t *data, int pipe1, int pipe2)
+static void run_extendedmode_basic(data_t *data,
+				   enum pipe pipe1, igt_output_t *output1,
+				   enum pipe pipe2, igt_output_t *output2)
 {
 	struct igt_fb fb, fbs[2];
 	drmModeModeInfo *mode[2];
-	igt_output_t *output, *extended_output[2];
 	igt_display_t *display = &data->display;
 	igt_plane_t *plane[2];
 	igt_pipe_crc_t *pipe_crc[2] = { 0 };
 	igt_crc_t ref_crc[2], crc[2];
-	int count = 0, width, height;
+	int width, height;
 	cairo_t *cr;
 
-	for_each_connected_output(display, output) {
-		extended_output[count] = output;
-		count++;
+	igt_display_reset(display);
 
-		if (count > 1)
-			break;
-	}
-
-	igt_output_set_pipe(extended_output[0], pipe1);
-	igt_output_set_pipe(extended_output[1], pipe2);
+	igt_output_set_pipe(output1, pipe1);
+	igt_output_set_pipe(output2, pipe2);
 
-	mode[0] = igt_output_get_mode(extended_output[0]);
-	mode[1] = igt_output_get_mode(extended_output[1]);
+	mode[0] = igt_output_get_mode(output1);
+	mode[1] = igt_output_get_mode(output2);
 
 	pipe_crc[0] = igt_pipe_crc_new(data->drm_fd, pipe1, IGT_PIPE_CRC_SOURCE_AUTO);
 	pipe_crc[1] = igt_pipe_crc_new(data->drm_fd, pipe2, IGT_PIPE_CRC_SOURCE_AUTO);
@@ -115,8 +110,8 @@ static void run_extendedmode_basic(data_t *data, int pipe1, int pipe2)
 	igt_pipe_crc_free(pipe_crc[0]);
 	igt_pipe_crc_free(pipe_crc[1]);
 
-	igt_output_set_pipe(extended_output[0], PIPE_NONE);
-	igt_output_set_pipe(extended_output[1], PIPE_NONE);
+	igt_output_set_pipe(output1, PIPE_NONE);
+	igt_output_set_pipe(output2, PIPE_NONE);
 
 	igt_plane_set_fb(igt_pipe_get_plane_type(&display->pipes[pipe1],
 			  DRM_PLANE_TYPE_PRIMARY), NULL);
@@ -129,43 +124,68 @@ static void run_extendedmode_basic(data_t *data, int pipe1, int pipe2)
 	igt_assert_crc_equal(&crc[1], &ref_crc[1]);
 }
 
+#define for_each_connected_output_local(display, output)		\
+	for (int j__ = 0;  assert(igt_can_fail()), j__ < (display)->n_outputs; j__++)	\
+		for_each_if ((((output) = &(display)->outputs[j__]), \
+			      igt_output_is_connected((output))))
+
+#define for_each_valid_output_on_pipe_local(display, pipe, output) \
+	for_each_connected_output_local((display), (output)) \
+		for_each_if (igt_pipe_connector_valid((pipe), (output)))
+
+static void run_extendedmode_test(data_t *data) {
+	enum pipe pipe1, pipe2;
+	igt_output_t *output1, *output2;
+	igt_display_t *display = &data->display;
+
+	igt_display_reset(display);
+
+	for_each_pipe(display, pipe1) {
+		for_each_valid_output_on_pipe(display, pipe1, output1) {
+			for_each_pipe(display, pipe2) {
+				if (pipe1 == pipe2)
+					continue;
+
+				for_each_valid_output_on_pipe_local(display, pipe2, output2) {
+					if (output1 == output2)
+						continue;
+
+					igt_display_reset(display);
+
+					igt_output_set_pipe(output1, pipe1);
+					igt_output_set_pipe(output2, pipe2);
+
+					if (!i915_pipe_output_combo_valid(display))
+						continue;
+
+					igt_dynamic_f("pipe-%s-%s-pipe-%s-%s",
+						      kmstest_pipe_name(pipe1),
+						      igt_output_name(output1),
+						      kmstest_pipe_name(pipe2),
+						      igt_output_name(output2))
+						run_extendedmode_basic(data,
+								pipe1, output1,
+								pipe2, output2);
+				}
+			}
+		}
+	}
+}
+
 igt_main
 {
 	data_t data;
-	int valid_output = 0, i, j = 0;
-	igt_output_t *output;
-	int pipe[IGT_MAX_PIPES];
 
 	igt_fixture {
 		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
 		kmstest_set_vt_graphics_mode();
 		igt_display_require(&data.display, data.drm_fd);
-
-		for_each_connected_output(&data.display, output) {
-			valid_output++;
-
-			if (valid_output > 1)
-				break;
-		}
-
-		data.n_pipes = 0;
-		for_each_pipe(&data.display, i) {
-			data.n_pipes++;
-			pipe[j] = i;
-			j++;
-		}
-
-		igt_require_f(valid_output > 1, "No valid second output found\n");
+		igt_display_require_output(&data.display);
 	}
 
 	igt_describe("Test for validating display extended mode with a pair of connected displays");
-	igt_subtest_with_dynamic("extended-mode-basic") {
-		for (i = 0; i < data.n_pipes - 1; i++) {
-			igt_dynamic_f("pipe-%s%s", kmstest_pipe_name(pipe[i]),
-					kmstest_pipe_name(pipe[i+1]));
-			run_extendedmode_basic(&data, pipe[i], pipe[i+1]);
-		}
-	}
+	igt_subtest_with_dynamic("extended-mode-basic")
+		run_extendedmode_test(&data);
 
 	igt_fixture {
 		igt_display_fini(&data.display);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 16/52] tests/kms_dp_tiled_display: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (14 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 15/52] tests/kms_display_modes: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 17/52] tests/kms_flip_event_leak: " Bhanuprakash Modem
                   ` (43 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
---
 tests/kms_dp_tiled_display.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/kms_dp_tiled_display.c b/tests/kms_dp_tiled_display.c
index bb638050..07b803a5 100644
--- a/tests/kms_dp_tiled_display.c
+++ b/tests/kms_dp_tiled_display.c
@@ -272,6 +272,7 @@ static void setup_mode(data_t *data)
 		igt_require(found);
 		igt_output_override_mode(output, mode);
 	}
+	igt_require(i915_pipe_output_combo_valid(data->display));
 	igt_display_commit_atomic(data->display, DRM_MODE_ATOMIC_ALLOW_MODESET,
 				  NULL);
 }
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 17/52] tests/kms_flip_event_leak: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (15 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 16/52] tests/kms_dp_tiled_display: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Bhanuprakash Modem
                   ` (42 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Jeevan B <jeevan.b@intel.com>
---
 tests/kms_flip_event_leak.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/tests/kms_flip_event_leak.c b/tests/kms_flip_event_leak.c
index 56ff2af2..75206ee6 100644
--- a/tests/kms_flip_event_leak.c
+++ b/tests/kms_flip_event_leak.c
@@ -48,10 +48,6 @@ static void test(data_t *data, enum pipe pipe, igt_output_t *output)
 	struct igt_fb fb[2];
 	int fd, ret;
 
-	igt_display_reset(&data->display);
-	/* select the pipe we want to use */
-	igt_output_set_pipe(output, pipe);
-
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 	mode = igt_output_get_mode(output);
 
@@ -104,9 +100,14 @@ igt_main
 		igt_display_require_output(&data.display);
 	}
 
-
 	igt_subtest_with_dynamic("basic") {
 		for_each_pipe_with_valid_output(&data.display, pipe, output) {
+			igt_display_reset(&data.display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(&data.display))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
 				test(&data, pipe, output);
 			}
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (16 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 17/52] tests/kms_flip_event_leak: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 19/52] tests/kms_lease: " Bhanuprakash Modem
                   ` (41 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_invalid_mode.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/kms_invalid_mode.c b/tests/kms_invalid_mode.c
index 40042d4e..86f529e8 100644
--- a/tests/kms_invalid_mode.c
+++ b/tests/kms_invalid_mode.c
@@ -301,6 +301,12 @@ igt_main
 	for (int i = 0; i < ARRAY_SIZE(subtests); i++) {
 		igt_subtest_with_dynamic(subtests[i].name) {
 			for_each_pipe_with_valid_output(&data.display, pipe, output) {
+				igt_display_reset(&data.display);
+
+				igt_output_set_pipe(output, pipe);
+				if (!i915_pipe_output_combo_valid(&data.display))
+					continue;
+
 				igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(pipe)) {
 					data.output = output;
 					data.pipe = pipe;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 19/52] tests/kms_lease: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (17 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 20/52] tests/kms_multipipe_modeset: Find the suitable mode instead of using default Bhanuprakash Modem
                   ` (40 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/kms_lease.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 67e8d3be..a52d8bfc 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -1213,10 +1213,14 @@ igt_main
 			igt_describe(f->desc);
 			igt_subtest_with_dynamic_f("%s", f->name) {
 				for_each_pipe_with_valid_output(display, data.pipe, output) {
+					igt_display_reset(display);
+
+					igt_output_set_pipe(output, data.pipe);
+					if (!i915_pipe_output_combo_valid(display))
+						continue;
+
 					igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(data.pipe),
 						      igt_output_name(output)) {
-						igt_display_reset(display);
-						igt_display_commit(display);
 						data.crtc_id = display->pipes[data.pipe].crtc_id;
 						data.connector_id = output->id;
 						data.plane_id =
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 20/52] tests/kms_multipipe_modeset: Find the suitable mode instead of using default
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (18 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 19/52] tests/kms_lease: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner Bhanuprakash Modem
                   ` (39 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

As we are trying to run this subtest on all pipes + all outputs, It is not
possible to use 8K mode. To use 8K mode on a pipe then the consecutive pipe
must be free which is not true here.

Instead, reduce the resolution from 8K and run the test otherwise we'll endup
with the test failures.

V2:
- Fix commit message

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
---
 tests/kms_multipipe_modeset.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/kms_multipipe_modeset.c b/tests/kms_multipipe_modeset.c
index 1fdfb9a9..5c26165a 100644
--- a/tests/kms_multipipe_modeset.c
+++ b/tests/kms_multipipe_modeset.c
@@ -46,6 +46,15 @@ static void run_test(data_t *data, int valid_outputs)
 	drmModeModeInfo *mode;
 	int i = 0;
 
+	/* Find suitable mode/resolution combo */
+	for_each_connected_output(display, output) {
+		pipe = &display->pipes[i];
+		igt_output_set_pipe(output, i);
+
+		i++;
+	}
+	igt_require(igt_override_all_active_output_modes_to_fit_bw(display));
+
 	for_each_connected_output(display, output) {
 		mode = igt_output_get_mode(output);
 		igt_assert(mode);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (19 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 20/52] tests/kms_multipipe_modeset: Find the suitable mode instead of using default Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-27  6:24   ` Thasleem, Mohammed
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 22/52] tests/kms_plane: " Bhanuprakash Modem
                   ` (38 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_pipe_crc_basic.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
index 91a1b8ab..ffc77eb3 100644
--- a/tests/kms_pipe_crc_basic.c
+++ b/tests/kms_pipe_crc_basic.c
@@ -274,6 +274,21 @@ static void test_disable_crc_after_crtc(data_t *data, enum pipe pipe,
 	igt_remove_fb(data->drm_fd, &data->fb);
 }
 
+static bool pipe_output_combo_valid(igt_display_t *display,
+				    enum pipe pipe, igt_output_t *output)
+{
+	bool ret = true;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 data_t data = {0, };
 
 igt_main
@@ -322,6 +337,9 @@ igt_main
 		igt_describe(tests[i].desc);
 		igt_subtest_with_dynamic(tests[i].name) {
 			for_each_pipe_with_single_output(&data.display, pipe, output) {
+				if(!pipe_output_combo_valid(&data.display, pipe, output))
+					continue;
+
 				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
 					if (tests[i].flags & TEST_SUSPEND) {
 						test_read_crc(&data, pipe, output, 0);
@@ -350,6 +368,9 @@ igt_main
 		     "does not cause issues.");
 	igt_subtest_with_dynamic("disable-crc-after-crtc") {
 		for_each_pipe_with_single_output(&data.display, pipe, output) {
+			if(!pipe_output_combo_valid(&data.display, pipe, output))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
 				test_disable_crc_after_crtc(&data, pipe, output);
 		}
@@ -358,6 +379,9 @@ igt_main
 	igt_describe("Basic sanity check for CRC mismatches");
 	igt_subtest_with_dynamic("compare-crc-sanitycheck") {
 		for_each_pipe_with_single_output(&data.display, pipe, output) {
+			if(!pipe_output_combo_valid(&data.display, pipe, output))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
 				test_compare_crc(&data, pipe, output);
 		}
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 22/52] tests/kms_plane: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (20 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-15 10:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 23/52] tests/kms_plane_alpha_blend: " Bhanuprakash Modem
                   ` (37 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_plane.c | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 8a54ba66..58951b80 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -56,6 +56,7 @@ typedef struct {
 typedef struct {
 	int drm_fd;
 	igt_display_t display;
+	igt_output_t *output;
 	igt_pipe_crc_t *pipe_crc;
 	const color_t *colors;
 	int num_colors;
@@ -274,11 +275,11 @@ static void
 test_plane_position(data_t *data, enum pipe pipe)
 {
 	int n_planes = data->display.pipes[pipe].n_planes;
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_crc_t reference_crc;
 
-	output = igt_get_single_output_for_pipe(&data->display, pipe);
-	igt_require(output);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
 
 	test_init(data, pipe);
 	test_grab_crc(data, output, pipe, &green, data->flags, &reference_crc);
@@ -381,11 +382,11 @@ test_plane_panning_with_output(data_t *data,
 static void
 test_plane_panning(data_t *data, enum pipe pipe)
 {
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_crc_t ref_crc;
 
-	output = igt_get_single_output_for_pipe(&data->display, pipe);
-	igt_require(output);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
 
 	test_init(data, pipe);
 
@@ -1051,7 +1052,7 @@ test_pixel_formats(data_t *data, enum pipe pipe)
 	igt_plane_t *primary;
 	drmModeModeInfo *mode;
 	bool result;
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_plane_t *plane;
 
 	if (data->extended) {
@@ -1062,10 +1063,10 @@ test_pixel_formats(data_t *data, enum pipe pipe)
 		data->num_colors = ARRAY_SIZE(colors_reduced);
 	}
 
-	test_init(data, pipe);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
 
-	output = igt_get_single_output_for_pipe(&data->display, pipe);
-	igt_require(output);
+	test_init(data, pipe);
 
 	mode = igt_output_get_mode(output);
 
@@ -1109,7 +1110,14 @@ static void run_test(data_t *data, void (*test)(data_t *, enum pipe))
 	enum pipe pipe;
 	int count = 0;
 
-	for_each_pipe(&data->display, pipe) {
+	for_each_pipe_with_single_output(&data->display, pipe, data->output) {
+		igt_display_reset(&data->display);
+
+		igt_output_set_pipe(data->output, pipe);
+		if (!i915_pipe_output_combo_valid(&data->display))
+			continue;
+
+		igt_output_set_pipe(data->output, PIPE_NONE);
 		igt_dynamic_f("pipe-%s-planes", kmstest_pipe_name(pipe))
 			test(data, pipe);
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 23/52] tests/kms_plane_alpha_blend: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (21 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 22/52] tests/kms_plane: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: " Bhanuprakash Modem
                   ` (36 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name
V3: - Rebase

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by:  Swati Sharma <swati2.sharma@intel.com>
---
 tests/kms_plane_alpha_blend.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/tests/kms_plane_alpha_blend.c b/tests/kms_plane_alpha_blend.c
index ccf1d657..1c5ab920 100644
--- a/tests/kms_plane_alpha_blend.c
+++ b/tests/kms_plane_alpha_blend.c
@@ -171,9 +171,6 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe)
 	int w, h;
 	igt_plane_t *primary = igt_pipe_get_plane_type(&display->pipes[pipe], DRM_PLANE_TYPE_PRIMARY);
 
-	igt_display_reset(display);
-	igt_output_set_pipe(output, pipe);
-
 	/* create the pipe_crc object for this pipe */
 	igt_pipe_crc_free(data->pipe_crc);
 	data->pipe_crc = igt_pipe_crc_new(data->gfx_fd, pipe,
@@ -617,6 +614,12 @@ static void run_subtests(data_t *data)
 
 		igt_subtest_with_dynamic(subtests[i].name) {
 			for_each_pipe_with_single_output(&data->display, pipe, output) {
+				igt_display_reset(&data->display);
+
+				igt_output_set_pipe(output, pipe);
+				if (!i915_pipe_output_combo_valid(&data->display))
+					continue;
+
 				prepare_crtc(data, output, pipe);
 				if (!pipe_check(data, pipe, subtests[i].blend, subtests[i].must_multiply))
 					continue;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (22 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 23/52] tests/kms_plane_alpha_blend: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-27  7:21   ` Sharma, Ananya
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 25/52] tests/kms_plane_lowres: " Bhanuprakash Modem
                   ` (35 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_plane_cursor.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/kms_plane_cursor.c b/tests/kms_plane_cursor.c
index 9b27586c..9e317cbf 100644
--- a/tests/kms_plane_cursor.c
+++ b/tests/kms_plane_cursor.c
@@ -85,6 +85,12 @@ static void test_init(data_t *data, enum pipe pipe_id, igt_output_t *output)
 	data->overlay = igt_pipe_get_plane_type(data->pipe, DRM_PLANE_TYPE_OVERLAY);
 	data->cursor = igt_pipe_get_plane_type(data->pipe, DRM_PLANE_TYPE_CURSOR);
 
+	igt_output_set_pipe(data->output, data->pipe_id);
+	igt_require(i915_pipe_output_combo_valid(display));
+
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(data->pipe_id), igt_output_name(data->output));
+
 	igt_require_pipe_crc(data->drm_fd);
 	data->pipe_crc = igt_pipe_crc_new(data->drm_fd, data->pipe_id,
 					  IGT_PIPE_CRC_SOURCE_AUTO);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 25/52] tests/kms_plane_lowres: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (23 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 26/52] tests/kms_plane_multiple: " Bhanuprakash Modem
                   ` (34 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
---
 tests/kms_plane_lowres.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
index 6dfc147c..958d3ec6 100644
--- a/tests/kms_plane_lowres.c
+++ b/tests/kms_plane_lowres.c
@@ -277,6 +277,9 @@ static void run_test(data_t *data, uint64_t modifier)
 			igt_display_reset(&data->display);
 			igt_output_set_pipe(data->output, data->pipe);
 
+			if (!i915_pipe_output_combo_valid(&data->display))
+				continue;
+
 			data->pipe_crc = igt_pipe_crc_new(data->drm_fd, data->pipe,
 							  IGT_PIPE_CRC_SOURCE_AUTO);
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 26/52] tests/kms_plane_multiple: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (24 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 25/52] tests/kms_plane_lowres: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 27/52] tests/kms_plane_scaling: " Bhanuprakash Modem
                   ` (33 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
---
 tests/kms_plane_multiple.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 75659015..7dd9d586 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -103,6 +103,7 @@ get_reference_crc(data_t *data, igt_output_t *output, enum pipe pipe,
 	igt_plane_t *primary;
 	int ret;
 
+	igt_display_reset(&data->display);
 	igt_output_set_pipe(output, pipe);
 
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
@@ -290,6 +291,9 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
 	bool loop_forever;
 	char info[256];
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	if (opt.iterations == LOOP_FOREVER) {
 		loop_forever = true;
 		sprintf(info, "forever");
@@ -373,12 +377,17 @@ static void run_test(data_t *data, uint64_t modifier)
 {
 	enum pipe pipe;
 	igt_output_t *output;
+	igt_display_t *display = &data->display;
 
-	if (!igt_display_has_format_mod(&data->display, DRM_FORMAT_XRGB8888, modifier))
+	if (!igt_display_has_format_mod(display, DRM_FORMAT_XRGB8888, modifier))
 		return;
 
-	for_each_pipe_with_valid_output(&data->display, pipe, output) {
-		igt_display_reset(&data->display);
+	for_each_pipe_with_valid_output(display, pipe, output) {
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
 
 		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
 			test_plane_position(data, pipe, output, modifier);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 27/52] tests/kms_plane_scaling: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (25 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 26/52] tests/kms_plane_multiple: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 28/52] tests/kms_prime: " Bhanuprakash Modem
                   ` (32 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

As many 2x tests are currently running on Pipe-A & B only, those
tests will always SKIP if there is any 8K supported panel in the
config. Instead of Skipping the test, add some intelligence to
the subtest to identify the valid pipe/output combo to execute
the subtest.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_plane_scaling.c | 218 +++++++++++++++++++++++++-------------
 1 file changed, 145 insertions(+), 73 deletions(-)

diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 4c621cce..49a194e1 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -546,30 +546,45 @@ static void test_scaler_with_pixel_format_pipe(data_t *d, int width, int height,
 	}
 }
 
-static void find_connected_pipe(igt_display_t *display, bool second, enum pipe *pipe, igt_output_t **output)
+static enum pipe
+find_connected_pipe(igt_display_t *display, bool second, igt_output_t **output)
 {
-	enum pipe first = PIPE_NONE;
-	igt_output_t *first_output = NULL;
+	enum pipe pipe;
+	bool first_output = false;
 	bool found = false;
 
-	for_each_pipe_with_valid_output(display, *pipe, *output) {
-		if (first == *pipe || *output == first_output)
-			continue;
+	igt_display_reset(display);
 
-		if (second) {
-			first = *pipe;
-			first_output = *output;
-			second = false;
-			continue;
-		}
+	for_each_pipe(display, pipe) {
+		for_each_valid_output_on_pipe(display, pipe, *output) {
+			if((*output)->pending_pipe != PIPE_NONE)
+				continue;
 
-		return;
+			igt_output_set_pipe(*output, pipe);
+			if (i915_pipe_output_combo_valid(display)) {
+				found = true;
+
+				if (second) {
+					first_output = true;
+					second = false;
+					found = false;
+				}
+				break;
+			}
+			igt_output_set_pipe(*output, PIPE_NONE);
+		}
+		if (found)
+			break;
 	}
 
+	igt_display_reset(display);
+
 	if (first_output)
 		igt_require_f(found, "No second valid output found\n");
 	else
 		igt_require_f(found, "No valid outputs found\n");
+
+	return pipe;
 }
 
 static void
@@ -749,13 +764,16 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
 	enum pipe pipe1, pipe2;
 	int ret1, ret2;
 
-	cleanup_crtc(d);
-
-	find_connected_pipe(display, false, &pipe1, &output1);
-	find_connected_pipe(display, true, &pipe2, &output2);
+	cleanup_fbs(d);
 
+	pipe1 = find_connected_pipe(display, false, &output1);
+	pipe2 = find_connected_pipe(display, true, &output2);
 	igt_skip_on(!output1 || !output2);
 
+	igt_info("Using (pipe %s + %s) and (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe1), igt_output_name(output1),
+		 kmstest_pipe_name(pipe2), igt_output_name(output2));
+
 	igt_output_set_pipe(output1, pipe1);
 	igt_output_set_pipe(output2, pipe2);
 
@@ -820,6 +838,22 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
 	igt_assert_eq(ret1 && ret2, 0);
 }
 
+static bool
+pipe_output_combo_valid(igt_display_t *display,
+			enum pipe pipe, igt_output_t *output)
+{
+	bool ret = true;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 static int opt_handler(int opt, int opt_index, void *_data)
 {
 	data_t *data = _data;
@@ -861,17 +895,22 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		for (int index = 0; index < ARRAY_SIZE(scaler_with_pixel_format_tests); index++) {
 			igt_describe(scaler_with_pixel_format_tests[index].describe);
 			igt_subtest_with_dynamic(scaler_with_pixel_format_tests[index].name) {
-			for_each_pipe_with_single_output(&data.display, pipe, output)
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
-					drmModeModeInfo *mode;
-
-					mode = igt_output_get_mode(output);
-
-					test_scaler_with_pixel_format_pipe(&data,
-							get_width(mode, scaler_with_pixel_format_tests[index].sf),
-							get_height(mode, scaler_with_pixel_format_tests[index].sf),
-							scaler_with_pixel_format_tests[index].is_upscale,
-							pipe, output);
+				for_each_pipe(&data.display, pipe) {
+					for_each_valid_output_on_pipe(&data.display, pipe, output) {
+						if (!pipe_output_combo_valid(&data.display, pipe, output))
+							continue;
+
+						igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+							drmModeModeInfo *mode = igt_output_get_mode(output);
+
+							test_scaler_with_pixel_format_pipe(&data,
+								get_width(mode, scaler_with_pixel_format_tests[index].sf),
+								get_height(mode, scaler_with_pixel_format_tests[index].sf),
+								scaler_with_pixel_format_tests[index].is_upscale,
+								pipe, output);
+						}
+						break;
+					}
 				}
 			}
 		}
@@ -879,17 +918,22 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		for (int index = 0; index < ARRAY_SIZE(scaler_with_rotation_tests); index++) {
 			igt_describe(scaler_with_rotation_tests[index].describe);
 			igt_subtest_with_dynamic(scaler_with_rotation_tests[index].name) {
-			for_each_pipe_with_single_output(&data.display, pipe, output)
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
-					drmModeModeInfo *mode;
-
-					mode = igt_output_get_mode(output);
-
-					test_scaler_with_rotation_pipe(&data,
-							get_width(mode, scaler_with_rotation_tests[index].sf),
-							get_height(mode, scaler_with_rotation_tests[index].sf),
-							scaler_with_rotation_tests[index].is_upscale,
-							pipe, output);
+				for_each_pipe(&data.display, pipe) {
+					for_each_valid_output_on_pipe(&data.display, pipe, output) {
+						if (!pipe_output_combo_valid(&data.display, pipe, output))
+							continue;
+
+						igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+							drmModeModeInfo *mode = igt_output_get_mode(output);
+
+							test_scaler_with_rotation_pipe(&data,
+								get_width(mode, scaler_with_rotation_tests[index].sf),
+								get_height(mode, scaler_with_rotation_tests[index].sf),
+								scaler_with_rotation_tests[index].is_upscale,
+								pipe, output);
+						}
+						break;
+					}
 				}
 			}
 		}
@@ -897,85 +941,113 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		for (int index = 0; index < ARRAY_SIZE(scaler_with_modifiers_tests); index++) {
 			igt_describe(scaler_with_modifiers_tests[index].describe);
 			igt_subtest_with_dynamic(scaler_with_modifiers_tests[index].name) {
-			for_each_pipe_with_single_output(&data.display, pipe, output)
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
-					drmModeModeInfo *mode;
-
-					mode = igt_output_get_mode(output);
-
-					test_scaler_with_modifier_pipe(&data,
-							get_width(mode, scaler_with_rotation_tests[index].sf),
-							get_height(mode, scaler_with_rotation_tests[index].sf),
-							scaler_with_rotation_tests[index].is_upscale,
-							pipe, output);
+				for_each_pipe(&data.display, pipe) {
+					for_each_valid_output_on_pipe(&data.display, pipe, output) {
+						if (!pipe_output_combo_valid(&data.display, pipe, output))
+							continue;
+
+						igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+							drmModeModeInfo *mode = igt_output_get_mode(output);
+
+							test_scaler_with_modifier_pipe(&data,
+								get_width(mode, scaler_with_rotation_tests[index].sf),
+								get_height(mode, scaler_with_rotation_tests[index].sf),
+								scaler_with_rotation_tests[index].is_upscale,
+								pipe, output);
+						}
+						break;
+					}
 				}
 			}
 		}
 
 		igt_describe("Tests scaling with clipping and clamping, pixel formats.");
 		igt_subtest_with_dynamic("plane-scaler-with-clipping-clamping-pixel-formats") {
-			for_each_pipe_with_single_output(&data.display, pipe, output) {
-				drmModeModeInfo *mode;
+			for_each_pipe(&data.display, pipe) {
+				for_each_valid_output_on_pipe(&data.display, pipe, output) {
+					if (!pipe_output_combo_valid(&data.display, pipe, output))
+						continue;
 
-				mode = igt_output_get_mode(output);
+					igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+						drmModeModeInfo *mode = igt_output_get_mode(output);
 
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output))
-					test_scaler_with_pixel_format_pipe(&data, mode->hdisplay + 100,
+						test_scaler_with_pixel_format_pipe(&data, mode->hdisplay + 100,
 							mode->vdisplay + 100, false, pipe, output);
+					}
+					break;
+				}
 			}
 		}
 
 		igt_describe("Tests scaling with clipping and clamping, rotation.");
 		igt_subtest_with_dynamic("plane-scaler-with-clipping-clamping-rotation") {
-			for_each_pipe_with_single_output(&data.display, pipe, output) {
-				drmModeModeInfo *mode;
+			for_each_pipe(&data.display, pipe) {
+				for_each_valid_output_on_pipe(&data.display, pipe, output) {
+					if (!pipe_output_combo_valid(&data.display, pipe, output))
+						continue;
 
-				mode = igt_output_get_mode(output);
+					igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+						drmModeModeInfo *mode = igt_output_get_mode(output);
 
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output))
-					test_scaler_with_rotation_pipe(&data, mode->hdisplay + 100,
+						test_scaler_with_rotation_pipe(&data, mode->hdisplay + 100,
 							mode->vdisplay + 100, false, pipe, output);
+					}
+					break;
+				}
 			}
 		}
 
 		igt_describe("Tests scaling with clipping and clamping, modifiers.");
 		igt_subtest_with_dynamic("plane-scaler-with-clipping-clamping-modifiers") {
-			for_each_pipe_with_single_output(&data.display, pipe, output) {
-				drmModeModeInfo *mode;
-
-				mode = igt_output_get_mode(output);
-
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output))
-					test_scaler_with_modifier_pipe(&data, mode->hdisplay + 100,
+			for_each_pipe(&data.display, pipe) {
+				for_each_valid_output_on_pipe(&data.display, pipe, output) {
+					if (!pipe_output_combo_valid(&data.display, pipe, output))
+						continue;
+
+					igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+						drmModeModeInfo *mode = igt_output_get_mode(output);
+						test_scaler_with_modifier_pipe(&data, mode->hdisplay + 100,
 							mode->vdisplay + 100, false, pipe, output);
+					}
+					break;
+				}
 			}
 		}
 
 		for (int index = 0; index < ARRAY_SIZE(scaler_with_2_planes_tests); index++) {
 			igt_describe(scaler_with_2_planes_tests[index].describe);
 			igt_subtest_with_dynamic(scaler_with_2_planes_tests[index].name) {
-			for_each_pipe_with_single_output(&data.display, pipe, output)
-				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
-					drmModeModeInfo *mode;
+			for_each_pipe(&data.display, pipe) {
+				for_each_valid_output_on_pipe(&data.display, pipe, output) {
+					if (!pipe_output_combo_valid(&data.display, pipe, output))
+						continue;
 
-					mode = igt_output_get_mode(output);
+					igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
+						drmModeModeInfo *mode = igt_output_get_mode(output);
 
-					test_planes_scaling_combo(&data,
+						test_planes_scaling_combo(&data,
 							get_width(mode, scaler_with_2_planes_tests[index].sf_plane1),
 							get_height(mode, scaler_with_2_planes_tests[index].sf_plane1),
 							get_width(mode, scaler_with_2_planes_tests[index].sf_plane2),
 							get_height(mode, scaler_with_2_planes_tests[index].sf_plane2),
 							pipe, output, scaler_with_2_planes_tests[index].test_type);
+					}
+					break;
 				}
 			}
+			}
 		}
 
 		igt_describe("Negative test for number of scalers per pipe.");
 		igt_subtest_with_dynamic("invalid-num-scalers") {
-			for_each_pipe_with_valid_output(&data.display, pipe, output)
+			for_each_pipe_with_valid_output(&data.display, pipe, output) {
+				if (!pipe_output_combo_valid(&data.display, pipe, output))
+					continue;
+
 				igt_dynamic_f("pipe-%s-%s-invalid-num-scalers",
 					       kmstest_pipe_name(pipe), igt_output_name(output))
 					test_invalid_num_scalers(&data, pipe, output);
+			}
 		}
 	}
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 28/52] tests/kms_prime: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (26 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 27/52] tests/kms_plane_scaling: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-28  5:58   ` Sharma, Ananya
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 29/52] tests/kms_properties: " Bhanuprakash Modem
                   ` (31 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_prime.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/tests/kms_prime.c b/tests/kms_prime.c
index 097c2f2a..d4a92651 100644
--- a/tests/kms_prime.c
+++ b/tests/kms_prime.c
@@ -89,14 +89,17 @@ static igt_output_t *setup_display(int importer_fd, igt_display_t *display,
 	bool found = false;
 
 	for_each_pipe_with_valid_output(display, *pipe, output) {
-		found = true;
-		break;
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, *pipe);
+		if (i915_pipe_output_combo_valid(display)) {
+			found = true;
+			break;
+		}
 	}
 
 	igt_require_f(found, "No valid connector/pipe found\n");
 
-	igt_display_reset(display);
-	igt_output_set_pipe(output, *pipe);
 	return output;
 }
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 29/52] tests/kms_properties: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (27 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 28/52] tests/kms_prime: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 30/52] tests/kms_rmfb: " Bhanuprakash Modem
                   ` (30 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/kms_properties.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/tests/kms_properties.c b/tests/kms_properties.c
index 2958efac..2fe8dfa6 100644
--- a/tests/kms_properties.c
+++ b/tests/kms_properties.c
@@ -241,6 +241,12 @@ static void plane_properties(igt_display_t *display, bool atomic)
 		found = false;
 
 		for_each_valid_output_on_pipe(display, pipe, output) {
+			igt_display_reset(display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(display))
+				continue;
+
 			found_any = found = true;
 
 			run_plane_property_tests(display, pipe, output, atomic);
@@ -264,6 +270,12 @@ static void crtc_properties(igt_display_t *display, bool atomic)
 		found = false;
 
 		for_each_valid_output_on_pipe(display, pipe, output) {
+			igt_display_reset(display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(display))
+				continue;
+
 			found_any_valid_pipe = found = true;
 
 			run_crtc_property_tests(display, pipe, output, atomic);
@@ -290,6 +302,12 @@ static void connector_properties(igt_display_t *display, bool atomic)
 			if (!igt_pipe_connector_valid(pipe, output))
 				continue;
 
+			igt_display_reset(display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(display))
+				continue;
+
 			found = true;
 			run_connector_property_tests(display, pipe, output, atomic);
 			break;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 30/52] tests/kms_rmfb: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (28 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 29/52] tests/kms_properties: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: " Bhanuprakash Modem
                   ` (29 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/kms_rmfb.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c
index 7e43e1bd..50df4295 100644
--- a/tests/kms_rmfb.c
+++ b/tests/kms_rmfb.c
@@ -155,8 +155,15 @@ run_rmfb_test(struct rmfb_data *data, bool reopen)
 {
 	igt_output_t *output;
 	enum pipe pipe;
+	igt_display_t *display = &data->display;
+
+	for_each_pipe_with_single_output(display, pipe, output) {
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
 
-	for_each_pipe_with_single_output(&data->display, pipe, output) {
 		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe),
 			      igt_output_name(output))
 			test_rmfb(data, output, pipe, reopen);
@@ -192,7 +199,6 @@ igt_main
 		igt_describe(tests[i].description);
 		igt_subtest_with_dynamic(tests[i].name) {
 			run_rmfb_test(&data, tests[i].reopen);
-
 		}
 	}
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (29 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 30/52] tests/kms_rmfb: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-23  8:23   ` B, Jeevan
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: " Bhanuprakash Modem
                   ` (28 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_rotation_crc.c | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 72c20d5a..295aed76 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -215,6 +215,8 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
 	cleanup_crtc(data);
 
 	igt_output_set_pipe(output, pipe);
+	igt_require(i915_pipe_output_combo_valid(display));
+
 	igt_plane_set_rotation(plane, IGT_ROTATION_0);
 
 	/* create the pipe_crc object for this pipe */
@@ -479,6 +481,7 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form
 	igt_output_t *output;
 	enum pipe pipe;
 	int pipe_count = 0, connected_outputs = 0;
+	bool found = false;
 
 	if (is_amdgpu_device(data->gfx_fd))
 		igt_require(plane_type != DRM_PLANE_TYPE_OVERLAY &&
@@ -496,6 +499,13 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form
 		igt_plane_t *plane;
 		int i, j, c;
 
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
+		found = true;
 		mode = igt_output_get_mode(output);
 
 		/*
@@ -586,6 +596,7 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form
 			igt_pipe_crc_stop(data->pipe_crc);
 		}
 	}
+	igt_require_f(found, "No valid pipe/output combo found.\n");
 }
 
 typedef struct {
@@ -804,12 +815,22 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
 		{IGT_ROTATION_270, .2f, .4f, I915_FORMAT_MOD_Y_TILED },
 		{IGT_ROTATION_270, .2f, .4f, I915_FORMAT_MOD_Yf_TILED },
 	};
+	bool found = false;
+
+	igt_display_require_output(display);
 
 	for_each_valid_output_on_pipe(display, pipe, output) {
 		int i, j, k, l, flipsw, fliphw;
+
+		igt_display_reset(display);
+
 		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
+		found = true;
+
 		mode = igt_output_get_mode(output);
-		igt_display_require_output(display);
 		igt_display_commit2(display, COMMIT_ATOMIC);
 
 		p[0].plane = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
@@ -952,6 +973,8 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
 			igt_remove_fb(data->gfx_fd, &planeconfigs[c].fbs[d][MULTIPLANE_ROTATED]);
 		}
 	}
+
+	igt_require_f(found, "No valid pipe/output combo found.\n");
 }
 
 static void test_plane_rotation_exhaust_fences(data_t *data,
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (30 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-30 17:48   ` Swati Sharma
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: " Bhanuprakash Modem
                   ` (27 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_scaling_modes.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/tests/kms_scaling_modes.c b/tests/kms_scaling_modes.c
index 039e4a8d..cf637712 100644
--- a/tests/kms_scaling_modes.c
+++ b/tests/kms_scaling_modes.c
@@ -93,13 +93,17 @@ static void test_scaling_mode(data_t *data, uint32_t flags)
 	enum pipe pipe;
 
 	for_each_pipe_with_valid_output(display, pipe, output) {
+		igt_display_reset(display);
+
 		if (!has_scaling_mode(output))
 			continue;
 
+		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		igt_dynamic_f("%s-pipe-%s", output->name, kmstest_pipe_name(pipe))
 			test_scaling_mode_on_output(display, pipe, output, flags);
-
-		igt_display_reset(display);
 	}
 }
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (31 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: " Bhanuprakash Modem
                   ` (26 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_sequence.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/kms_sequence.c b/tests/kms_sequence.c
index c72857a3..c8a3d6bb 100644
--- a/tests/kms_sequence.c
+++ b/tests/kms_sequence.c
@@ -285,6 +285,12 @@ igt_main
 				     "drmCrtcQueueSequence");
 			igt_subtest_with_dynamic_f("%s-%s", f->name, m->name) {
 				for_each_pipe_with_valid_output(&data.display, p, output) {
+					igt_display_reset(&data.display);
+
+					igt_output_set_pipe(output, p);
+					if (!i915_pipe_output_combo_valid(&data.display))
+						continue;
+
 					igt_dynamic_f("%s-pipe-%s", igt_output_name(output), kmstest_pipe_name(p)) {
 						data.pipe = p;
 						data.output = output;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (32 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-28 10:54   ` Sharma, Ananya
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: " Bhanuprakash Modem
                   ` (25 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_universal_plane.c | 94 +++++++++++++++++++++++++++++++++----
 1 file changed, 84 insertions(+), 10 deletions(-)

diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
index dd8fa193..2a9eb021 100644
--- a/tests/kms_universal_plane.c
+++ b/tests/kms_universal_plane.c
@@ -381,6 +381,9 @@ sanity_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 
 	igt_require_pipe(&data->display, pipe);
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 	mode = igt_output_get_mode(output);
 
@@ -494,6 +497,9 @@ pageflip_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 
 	igt_require_pipe(&data->display, pipe);
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 
 	pageflip_test_init(&test, output, pipe);
@@ -604,6 +610,9 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	igt_require(display->has_cursor_plane);
 	igt_require_intel(data->drm_fd);
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 	mode = igt_output_get_mode(output);
 
@@ -731,6 +740,9 @@ pageflip_win_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	igt_skip_on(is_i915_device(data->drm_fd) && data->display_ver < 9);
 	igt_require_pipe(&data->display, pipe);
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 
 	gen9_test_init(&test, output, pipe);
@@ -766,6 +778,22 @@ pageflip_win_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
 	gen9_test_fini(&test, output);
 }
 
+static bool
+pipe_output_combo_valid(igt_display_t *display,
+			enum pipe pipe, igt_output_t *output)
+{
+	bool ret = true;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 static void
 run_tests_for_pipe(data_t *data, enum pipe pipe)
 {
@@ -784,34 +812,79 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
 
 	igt_describe("Check the switching between different primary plane fbs with CRTC off");
 	igt_subtest_f("universal-plane-pipe-%s-functional",
-		      kmstest_pipe_name(pipe))
-		for_each_valid_output_on_pipe(&data->display, pipe, output)
+		      kmstest_pipe_name(pipe)) {
+		bool found = false;
+
+		for_each_valid_output_on_pipe(&data->display, pipe, output) {
+			if (!pipe_output_combo_valid(&data->display, pipe, output))
+				continue;
+
+			found = true;
 			functional_test_pipe(data, pipe, output);
+		}
+		igt_require_f(found, "No valid pipe/output combo found.\n");
+	}
 
 	igt_describe("Test for scale-up or scale-down using universal plane API without covering CRTC");
 	igt_subtest_f("universal-plane-pipe-%s-sanity",
-		      kmstest_pipe_name(pipe))
-		for_each_valid_output_on_pipe(&data->display, pipe, output)
+		      kmstest_pipe_name(pipe)) {
+		bool found = false;
+
+		for_each_valid_output_on_pipe(&data->display, pipe, output) {
+			if (!pipe_output_combo_valid(&data->display, pipe, output))
+				continue;
+
+			found = true;
 			sanity_test_pipe(data, pipe, output);
+		}
+		igt_require_f(found, "No valid pipe/output combo found.\n");
+	}
 
 	igt_describe("Check pageflips while primary plane is disabled before IOCTL or between IOCTL"
 			" and pageflip execution");
 	igt_subtest_f("disable-primary-vs-flip-pipe-%s",
-		      kmstest_pipe_name(pipe))
-		for_each_valid_output_on_pipe(&data->display, pipe, output)
+		      kmstest_pipe_name(pipe)) {
+		bool found = false;
+
+		for_each_valid_output_on_pipe(&data->display, pipe, output) {
+			if (!pipe_output_combo_valid(&data->display, pipe, output))
+				continue;
+
+			found = true;
 			pageflip_test_pipe(data, pipe, output);
+		}
+		igt_require_f(found, "No valid pipe/output combo found.\n");
+	}
 
 	igt_describe("Check for cursor leaks after performing cursor operations");
 	igt_subtest_f("cursor-fb-leak-pipe-%s",
-		      kmstest_pipe_name(pipe))
-		for_each_valid_output_on_pipe(&data->display, pipe, output)
+		      kmstest_pipe_name(pipe)) {
+		bool found = false;
+
+		for_each_valid_output_on_pipe(&data->display, pipe, output) {
+			if (!pipe_output_combo_valid(&data->display, pipe, output))
+				continue;
+
+			found = true;
 			cursor_leak_test_pipe(data, pipe, output);
+		}
+		igt_require_f(found, "No valid pipe/output combo found.\n");
+	}
 
 	igt_describe("Check if pageflip succeeds in windowed setting");
 	igt_subtest_f("universal-plane-pageflip-windowed-pipe-%s",
-		      kmstest_pipe_name(pipe))
-		for_each_valid_output_on_pipe(&data->display, pipe, output)
+		      kmstest_pipe_name(pipe)) {
+		bool found = false;
+
+		for_each_valid_output_on_pipe(&data->display, pipe, output) {
+			if (!pipe_output_combo_valid(&data->display, pipe, output))
+				continue;
+
+			found = true;
 			pageflip_win_test_pipe(data, pipe, output);
+		}
+		igt_require_f(found, "No valid pipe/output combo found.\n");
+	}
 }
 
 static data_t data;
@@ -829,6 +902,7 @@ igt_main
 
 		igt_require_pipe_crc(data.drm_fd);
 		igt_display_require(&data.display, data.drm_fd);
+		igt_display_require_output(&data.display);
 	}
 
 	for_each_pipe_static(pipe) {
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (33 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-30 18:41   ` Swati Sharma
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 36/52] tests/kms_vrr: " Bhanuprakash Modem
                   ` (24 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_vblank.c | 54 ++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 52 insertions(+), 2 deletions(-)

diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c
index 5bd3fefe..f6863af0 100644
--- a/tests/kms_vblank.c
+++ b/tests/kms_vblank.c
@@ -175,6 +175,22 @@ static void run_test(data_t *data, void (*testfunc)(data_t *, int, int))
 	cleanup_crtc(data, fd, output);
 }
 
+static bool
+pipe_output_combo_valid(igt_display_t *display,
+			enum pipe pipe, igt_output_t *output)
+{
+	bool ret = true;
+
+	igt_display_reset(display);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(display))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 static void crtc_id_subtest(data_t *data, int fd)
 {
 	igt_display_t *display = &data->display;
@@ -188,6 +204,15 @@ static void crtc_id_subtest(data_t *data, int fd)
 		uint64_t val;
 		union drm_wait_vblank vbl;
 
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, p);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
+		igt_info("Using (pipe %s + %s) to run the subtest.\n",
+			 kmstest_pipe_name(p), igt_output_name(output));
+
 		crtc_id = display->pipes[p].crtc_id;
 		if (drmGetCap(display->drm_fd, DRM_CAP_CRTC_IN_VBLANK_EVENT, &val) == 0)
 			expected_crtc_id = crtc_id;
@@ -449,10 +474,18 @@ static void run_subtests_for_pipe(data_t *data)
 			igt_subtest_f("pipe-%s-%s-%s",
 				      kmstest_pipe_name(data->pipe),
 				      f->name, m->name) {
+				int found = 0;
+
 				for_each_valid_output_on_pipe(&data->display, data->pipe, data->output) {
+					if (!pipe_output_combo_valid(&data->display, data->pipe, data->output))
+						continue;
+
 					data->flags = m->flags | NOHANG;
 					run_test(data, f->func);
+
+					found++;
 				}
+				igt_require_f(found, "No valid pipe/output combo found.\n");
 			}
 
 			/* Skip the -hang version if NOHANG flag is set */
@@ -464,13 +497,20 @@ static void run_subtests_for_pipe(data_t *data)
 				      kmstest_pipe_name(data->pipe),
 				      f->name, m->name) {
 				igt_hang_t hang;
+				int found = 0;
 
 				hang = igt_allow_hang(data->display.drm_fd, 0, 0);
 				for_each_valid_output_on_pipe(&data->display, data->pipe, data->output) {
+					if (!pipe_output_combo_valid(&data->display, data->pipe, data->output))
+						continue;
+
 					data->flags = m->flags;
 					run_test(data, f->func);
+
+					found++;
 				}
 				igt_disallow_hang(data->display.drm_fd, hang);
+				igt_require_f(found, "No valid pipe/output combo found.\n");
 			}
 		}
 	}
@@ -482,12 +522,22 @@ static void invalid_subtest(data_t *data, int fd)
 	unsigned long valid_flags;
 	igt_display_t* display = &data->display;
 	enum pipe pipe = 0;
-	igt_output_t* output = igt_get_single_output_for_pipe(display, pipe);
+	igt_output_t *output;
+
+	igt_display_reset(display);
+
+	output = igt_get_single_output_for_pipe(display, pipe);
+	igt_require(output);
 
 	data->pipe = pipe;
 	data->output = output;
+
 	igt_output_set_pipe(output, pipe);
-	igt_display_require_output_on_pipe(display, pipe);
+	igt_require(i915_pipe_output_combo_valid(display));
+
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	prepare_crtc(data, fd, output);
 
 	/* First check all is well with a simple query */
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 36/52] tests/kms_vrr: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (34 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: " Bhanuprakash Modem
                   ` (23 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/kms_vrr.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/kms_vrr.c b/tests/kms_vrr.c
index 8976d4a6..619b3789 100644
--- a/tests/kms_vrr.c
+++ b/tests/kms_vrr.c
@@ -444,6 +444,12 @@ run_vrr_test(data_t *data, test_t test, uint32_t flags)
 
 		for_each_pipe(&data->display, pipe) {
 			if (igt_pipe_connector_valid(pipe, output)) {
+				igt_display_reset(&data->display);
+
+				igt_output_set_pipe(output, pipe);
+				if (!i915_pipe_output_combo_valid(&data->display))
+					continue;
+
 				igt_dynamic_f("pipe-%s-%s",
 					      kmstest_pipe_name(pipe), output->name)
 					test(data, pipe, output, flags);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (35 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 36/52] tests/kms_vrr: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-23  8:06   ` B, Jeevan
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 38/52] tests/i915/kms_big_joiner: Negative tests " Bhanuprakash Modem
                   ` (22 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_big_fb.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
index 0beba0e1..a29a05a2 100644
--- a/tests/i915/kms_big_fb.c
+++ b/tests/i915/kms_big_fb.c
@@ -406,6 +406,9 @@ static bool test_pipe(data_t *data)
 	igt_plane_t *primary;
 	bool ret = false;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(data->pipe), igt_output_name(data->output));
+
 	if (data->format == DRM_FORMAT_C8 &&
 	    !igt_pipe_obj_has_prop(&data->display.pipes[data->pipe],
 				   IGT_CRTC_GAMMA_LUT))
@@ -481,6 +484,10 @@ max_hw_stride_async_flip_test(data_t *data)
 	igt_crc_t compare_crc, async_crc;
 
 	igt_require(data->display.is_atomic);
+
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(data->pipe), igt_output_name(data->output));
+
 	igt_output_set_pipe(data->output, data->pipe);
 
 	primary = igt_output_get_plane_type(data->output, DRM_PLANE_TYPE_PRIMARY);
@@ -592,6 +599,12 @@ static void test_scanout(data_t *data)
 		    data->format, data->modifier);
 
 	for_each_pipe_with_valid_output(&data->display, data->pipe, data->output) {
+		igt_display_reset(&data->display);
+
+		igt_output_set_pipe(data->output, data->pipe);
+		if (!i915_pipe_output_combo_valid(&data->display))
+			continue;
+
 		if (data->async_flip_test) {
 			if (max_hw_stride_async_flip_test(data))
 				return;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 38/52] tests/i915/kms_big_joiner: Negative tests for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (36 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: Add support " Bhanuprakash Modem
                   ` (21 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

Add negative tests to validate Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

Kernel should reject the commit/modeset if above conditions won't met.

V2:
- Fix redundant negative tests
V3:
- Drop duplicate logic

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
---
 tests/i915/kms_big_joiner.c | 187 +++++++++++++++---------------------
 1 file changed, 79 insertions(+), 108 deletions(-)

diff --git a/tests/i915/kms_big_joiner.c b/tests/i915/kms_big_joiner.c
index 71b2526d..e7a139b3 100644
--- a/tests/i915/kms_big_joiner.c
+++ b/tests/i915/kms_big_joiner.c
@@ -45,111 +45,42 @@ typedef struct {
 
 static void test_invalid_modeset(data_t *data)
 {
-	drmModeModeInfo *mode;
+	igt_output_t *output;
 	igt_display_t *display = &data->display;
-	igt_output_t *output, *big_joiner_output = NULL, *second_output = NULL;
 	int ret;
-	igt_pipe_t *pipe;
-	igt_plane_t *plane;
-
-	igt_display_reset(display);
 
-	for_each_connected_output(display, output) {
-		mode = &output->config.connector->modes[0];
+	igt_info("Bigjoiner test on ");
+	for_each_connected_output(display, output){
+		enum pipe p = output->pending_pipe;
+		drmModeModeInfo *mode;
+		igt_pipe_t *pipe;
+		igt_plane_t *plane;
 
-		if (data->big_joiner_output[0].id == output->id) {
-			big_joiner_output = output;
-		} else if (second_output == NULL) {
-			second_output = output;
-		}
-	}
+		if (p == PIPE_NONE)
+			continue;
 
-	igt_output_set_pipe(big_joiner_output, data->pipe1);
+		mode = igt_output_get_mode(output);
+		igt_info("pipe:%s, output:%s, mode:", kmstest_pipe_name(p), igt_output_name(output));
+		kmstest_dump_mode(mode);
 
-	mode = &big_joiner_output->config.connector->modes[data->big_joiner_output[0].mode_number];
-	igt_output_override_mode(big_joiner_output, mode);
-
-	pipe = &display->pipes[data->pipe1];
-	plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
-	igt_plane_set_fb(plane, &data->fb);
-	igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
-	igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
-
-	igt_display_commit2(display, COMMIT_ATOMIC);
+		pipe = &display->pipes[p];
+		plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
 
-	igt_output_set_pipe(second_output, data->pipe2);
-
-	mode = igt_output_get_mode(second_output);
+		igt_plane_set_fb(plane, &data->fb);
+		igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
+		igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
+	}
 
-	pipe = &display->pipes[data->pipe2];
-	plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
-	igt_plane_set_fb(plane, &data->fb);
-	igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
-	igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
+	igt_assert(!igt_check_bigjoiner_support(display));
 
 	/* This commit is expectd to fail as this pipe is being used for big joiner */
 	ret = igt_display_try_commit_atomic(display, DRM_MODE_ATOMIC_TEST_ONLY |
 					    DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
-	igt_assert_lt(ret, 0);
-
-	igt_output_set_pipe(big_joiner_output, PIPE_NONE);
-	igt_output_set_pipe(second_output, PIPE_NONE);
-
-	pipe = &display->pipes[data->pipe1];
-	plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
-	/*
-	 * Do not explicitly set the plane of the second output to NULL,
-	 * as it is the adjacent pipe to the big joiner output and
-	 * setting the big joiner plane to NULL will take care of this.
-	 */
-	igt_plane_set_fb(plane, NULL);
-	igt_display_commit2(display, COMMIT_ATOMIC);
-	igt_output_override_mode(big_joiner_output, NULL);
-
-	igt_output_set_pipe(second_output, data->pipe2);
-
-	mode = igt_output_get_mode(second_output);
-
-	pipe = &display->pipes[data->pipe2];
-	plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
-	igt_plane_set_fb(plane, &data->fb);
-	igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
-	igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
 
+	igt_display_reset(&data->display);
 	igt_display_commit2(display, COMMIT_ATOMIC);
 
-	igt_output_set_pipe(big_joiner_output, data->pipe1);
-
-	mode = &big_joiner_output->config.connector->modes[data->big_joiner_output[0].mode_number];
-	igt_output_override_mode(big_joiner_output, mode);
-
-	pipe = &display->pipes[data->pipe1];
-	plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-
-	igt_plane_set_fb(plane, &data->fb);
-	igt_fb_set_size(&data->fb, plane, mode->hdisplay, mode->vdisplay);
-	igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
-
-	/* This commit is expected to fail as the adjacent pipe is already in use*/
-	ret = igt_display_try_commit_atomic(display, DRM_MODE_ATOMIC_TEST_ONLY |
-					    DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
 	igt_assert_lt(ret, 0);
-
-	igt_output_set_pipe(big_joiner_output, PIPE_NONE);
-	igt_output_set_pipe(second_output, PIPE_NONE);
-	igt_plane_set_fb(plane, NULL);
-
-	pipe = &display->pipes[data->pipe2];
-	plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
-	igt_plane_set_fb(plane, NULL);
-
-	igt_display_commit2(display, COMMIT_ATOMIC);
-
-	igt_output_override_mode(big_joiner_output, NULL);
 }
 
 static void test_basic_modeset(data_t *data)
@@ -261,19 +192,17 @@ igt_main
 		igt_require(data.display.is_atomic);
 
 		for_each_connected_output(&data.display, output) {
-			if (count < 2) {
-				for (i = 0; i < output->config.connector->count_modes; i++) {
-					mode = &output->config.connector->modes[i];
-					if (mode->hdisplay > MAX_HDISPLAY_PER_PIPE) {
-						data.big_joiner_output[count].mode_number = i;
-						data.big_joiner_output[count].id = output->id;
-						count++;
-
-						width = max(width, mode->hdisplay);
-						height = max(height, mode->vdisplay);
-						break;
-					}
-				}
+			igt_sort_connector_modes(output->config.connector,
+						 sort_drm_modes_by_res_dsc);
+
+			mode = &output->config.connector->modes[0];
+			if (mode->hdisplay > MAX_HDISPLAY_PER_PIPE) {
+				data.big_joiner_output[count].mode_number = i;
+				data.big_joiner_output[count].id = output->id;
+				count++;
+
+				width = max(width, mode->hdisplay);
+				height = max(height, mode->vdisplay);
 			}
 			valid_output++;
 		}
@@ -303,14 +232,56 @@ igt_main
 	igt_describe("Verify if the modeset on the adjoining pipe is rejected "
 		     "when the pipe is active with a big joiner modeset");
 	igt_subtest_with_dynamic("invalid-modeset") {
-		igt_require_f(valid_output > 1, "No valid Second output found\n");
-		for (i = 0; i < data.n_pipes - 1; i++) {
-			data.pipe1 = pipe_seq[i];
-			data.pipe2 = pipe_seq[i + 1];
-			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe_seq[i]),
-						    kmstest_pipe_name(pipe_seq[i + 1]))
+		data.pipe1 = pipe_seq[j - 1];
+
+		igt_display_reset(&data.display);
+		for_each_connected_output(&data.display, output) {
+			if (data.big_joiner_output[0].id != output->id)
+				continue;
+
+			igt_sort_connector_modes(output->config.connector,
+						 sort_drm_modes_by_res_dsc);
+
+			igt_output_set_pipe(output, data.pipe1);
+			igt_output_override_mode(output, &output->config.connector->modes[0]);
+
+			igt_dynamic_f("pipe-%s-%s",
+				      kmstest_pipe_name(data.pipe1),
+				      igt_output_name(output))
 				test_invalid_modeset(&data);
 		}
+
+		if(valid_output > 1) {
+			for (i = 0; i < data.n_pipes - 1; i++) {
+				igt_output_t *first_output = NULL, *second_output = NULL;
+
+				data.pipe1 = pipe_seq[i];
+				data.pipe2 = pipe_seq[i + 1];
+
+				igt_display_reset(&data.display);
+				for_each_connected_output(&data.display, output) {
+					igt_sort_connector_modes(output->config.connector,
+								 sort_drm_modes_by_res_dsc);
+
+					if (data.big_joiner_output[0].id == output->id) {
+						first_output = output;
+						igt_output_set_pipe(output, data.pipe1);
+						igt_output_override_mode(output, &output->config.connector->modes[0]);
+					} else if (second_output == NULL) {
+						second_output = output;
+						igt_output_set_pipe(output, data.pipe2);
+						igt_output_override_mode(output, &output->config.connector->modes[0]);
+					}
+				}
+
+				igt_dynamic_f("pipe-%s-%s-pipe-%s-%s",
+					      kmstest_pipe_name(data.pipe1),
+					      igt_output_name(first_output),
+					      kmstest_pipe_name(data.pipe2),
+					      igt_output_name(second_output))
+					test_invalid_modeset(&data);
+			}
+		}
 	}
 
 	igt_describe("Verify simultaneous modeset on 2 big joiner outputs");
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (37 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 38/52] tests/i915/kms_big_joiner: Negative tests " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: " Bhanuprakash Modem
                   ` (20 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_busy.c | 106 ++++++++++++++++++++++++++++--------------
 1 file changed, 71 insertions(+), 35 deletions(-)

diff --git a/tests/i915/kms_busy.c b/tests/i915/kms_busy.c
index b0642612..20d3058f 100644
--- a/tests/i915/kms_busy.c
+++ b/tests/i915/kms_busy.c
@@ -32,15 +32,12 @@ IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers.");
 
 static bool all_pipes = false;
 
-static igt_output_t *
-set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb)
+static void
+set_fb_on_crtc(igt_display_t *dpy, int pipe,
+	       igt_output_t *output, struct igt_fb *fb)
 {
 	drmModeModeInfoPtr mode;
 	igt_plane_t *primary;
-	igt_output_t *output;
-
-	output = igt_get_single_output_for_pipe(dpy, pipe);
-	igt_require(output);
 
 	igt_output_set_pipe(output, pipe);
 	mode = igt_output_get_mode(output);
@@ -51,8 +48,6 @@ set_fb_on_crtc(igt_display_t *dpy, int pipe, struct igt_fb *fb)
 
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 	igt_plane_set_fb(primary, fb);
-
-	return output;
 }
 
 static void do_cleanup_display(igt_display_t *dpy)
@@ -136,18 +131,23 @@ static void flip_to_fb(igt_display_t *dpy, int pipe,
 	put_ahnd(ahnd);
 }
 
-static void test_flip(igt_display_t *dpy, int pipe, bool modeset)
+static void test_flip(igt_display_t *dpy, int pipe,
+		      igt_output_t *output, bool modeset)
 {
 	struct igt_fb fb[2];
 	int warmup[] = { 0, 1, 0, -1 };
 	struct timespec tv = {};
-	igt_output_t *output;
 	int timeout;
 
 	if (modeset)
 		igt_require(dpy->is_atomic);
 
-	output = set_fb_on_crtc(dpy, pipe, &fb[0]);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	igt_display_reset(dpy);
+
+	set_fb_on_crtc(dpy, pipe, output, &fb[0]);
 	igt_display_commit2(dpy, COMMIT_LEGACY);
 
 	igt_create_pattern_fb(dpy->drm_fd,
@@ -224,13 +224,18 @@ static void test_atomic_commit_hang(igt_display_t *dpy, igt_plane_t *primary,
 }
 
 static void test_hang(igt_display_t *dpy,
-		      enum pipe pipe, bool modeset, bool hang_newfb)
+		      enum pipe pipe, igt_output_t *output,
+		      bool modeset, bool hang_newfb)
 {
 	struct igt_fb fb[2];
-	igt_output_t *output;
 	igt_plane_t *primary;
 
-	output = set_fb_on_crtc(dpy, pipe, &fb[0]);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	igt_display_reset(dpy);
+
+	set_fb_on_crtc(dpy, pipe, output, &fb[0]);
 	igt_display_commit2(dpy, COMMIT_ATOMIC);
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
@@ -265,16 +270,22 @@ static void test_hang(igt_display_t *dpy,
 	igt_remove_fb(dpy->drm_fd, &fb[0]);
 }
 
-static void test_pageflip_modeset_hang(igt_display_t *dpy, enum pipe pipe)
+static void
+test_pageflip_modeset_hang(igt_display_t *dpy,
+			   igt_output_t *output, enum pipe pipe)
 {
 	struct igt_fb fb;
 	struct drm_event_vblank ev;
-	igt_output_t *output;
 	igt_plane_t *primary;
 	igt_spin_t *t;
 	uint64_t ahnd = get_reloc_ahnd(dpy->drm_fd, 0);
 
-	output = set_fb_on_crtc(dpy, pipe, &fb);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	igt_display_reset(dpy);
+
+	set_fb_on_crtc(dpy, pipe, output, &fb);
 	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
 	igt_display_commit2(dpy, dpy->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
@@ -299,6 +310,22 @@ static void test_pageflip_modeset_hang(igt_display_t *dpy, enum pipe pipe)
 	igt_remove_fb(dpy->drm_fd, &fb);
 }
 
+static bool
+pipe_output_combo_valid(igt_display_t *dpy,
+			igt_output_t *output, enum pipe pipe)
+{
+	bool ret = true;
+
+	igt_display_reset(dpy);
+
+	igt_output_set_pipe(output, pipe);
+	if (!i915_pipe_output_combo_valid(dpy))
+		ret = false;
+	igt_output_set_pipe(output, PIPE_NONE);
+
+	return ret;
+}
+
 static int opt_handler(int opt, int opt_index, void *data)
 {
 	switch (opt) {
@@ -346,7 +373,8 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
 {
 	igt_display_t display = { .drm_fd = -1, .n_pipes = IGT_MAX_PIPES };
 
-	enum pipe active_pipes[IGT_MAX_PIPES];
+	enum pipe pipe, active_pipes[IGT_MAX_PIPES];
+	igt_output_t *output;
 	uint32_t last_pipe = 0;
 	int i;
 	struct {
@@ -367,8 +395,6 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
 	int fd;
 
 	igt_fixture {
-		enum pipe pipe;
-
 		fd = drm_open_driver_master(DRIVER_INTEL);
 
 		igt_require_gem(fd);
@@ -391,63 +417,72 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
 
 	igt_describe("Test for basic check of KMS ABI with busy framebuffers.");
 	igt_subtest_with_dynamic("basic") { /* just run on the first pipe */
-		enum pipe pipe;
+		for_each_pipe_with_single_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, output, pipe))
+				continue;
 
-		for_each_pipe(&display, pipe) {
 			igt_dynamic("flip")
-				test_flip(&display, pipe, false);
+				test_flip(&display, pipe, output, false);
 			igt_dynamic("modeset")
-				test_flip(&display, pipe, true);
+				test_flip(&display, pipe, output, true);
 			break;
 		}
 	}
 
 	igt_subtest_with_dynamic("basic-hang") {
-		enum pipe pipe;
 		igt_hang_t hang = igt_allow_hang(display.drm_fd, 0, 0);
 		errno = 0;
 
-		for_each_pipe(&display, pipe) {
+		for_each_pipe_with_single_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, output, pipe))
+				continue;
+
 			if (!all_pipes && pipe != active_pipes[0] &&
 					  pipe != active_pipes[last_pipe])
 				continue;
 
 			igt_dynamic_f("flip-pipe-%s", kmstest_pipe_name(pipe))
-				test_flip(&display, pipe, false);
+				test_flip(&display, pipe, output, false);
 			igt_dynamic_f("modeset-pipe-%s", kmstest_pipe_name(pipe))
-				test_flip(&display, pipe, true);
+				test_flip(&display, pipe, output, true);
 		}
 
 		igt_disallow_hang(display.drm_fd, hang);
 	}
 
 	igt_subtest_with_dynamic("extended-pageflip-modeset-hang-oldfb") {
-		enum pipe pipe;
 		igt_hang_t hang = igt_allow_hang(display.drm_fd, 0, 0);
 		errno = 0;
 
-		for_each_pipe(&display, pipe) {
+		for_each_pipe_with_single_output(&display, pipe, output) {
+			if (!pipe_output_combo_valid(&display, output, pipe))
+				continue;
+
 			if (!all_pipes && pipe != active_pipes[0] &&
 					  pipe != active_pipes[last_pipe])
 				continue;
 
 			igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
-				test_pageflip_modeset_hang(&display, pipe);
+				test_pageflip_modeset_hang(&display, output, pipe);
 		}
 
 		igt_disallow_hang(display.drm_fd, hang);
 	}
 
 	for (i = 0; i < sizeof(tests) / sizeof (tests[0]); i++) {
+		igt_fixture
+			igt_require(display.is_atomic);
+
 		igt_subtest_with_dynamic(tests[i].name) {
-			enum pipe pipe;
 			igt_hang_t hang;
 			errno = 0;
 
-			igt_require(display.is_atomic);
 			hang = igt_allow_hang(display.drm_fd, 0, 0);
 
-			for_each_pipe(&display, pipe) {
+			for_each_pipe_with_single_output(&display, pipe, output) {
+				if (!pipe_output_combo_valid(&display, output, pipe))
+					continue;
+
 				if (!all_pipes && pipe != active_pipes[0] &&
 						  pipe != active_pipes[last_pipe])
 					continue;
@@ -456,7 +491,8 @@ igt_main_args("e", NULL, help_str, opt_handler, NULL)
 					if (tests[i].reset)
 						igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 1);
 
-					test_hang(&display, pipe, tests[i].modeset, tests[i].hang_newfb);
+					test_hang(&display, pipe, output,
+						  tests[i].modeset, tests[i].hang_newfb);
 
 					if (tests[i].reset)
 						igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 0);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (38 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: Add support " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-23  8:27   ` Karthik B S
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: " Bhanuprakash Modem
                   ` (19 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_ccs.c | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/tests/i915/kms_ccs.c b/tests/i915/kms_ccs.c
index 9be3fa25..40f05278 100644
--- a/tests/i915/kms_ccs.c
+++ b/tests/i915/kms_ccs.c
@@ -590,12 +590,21 @@ static int test_ccs(data_t *data)
 static void test_output(data_t *data, const int testnum)
 {
 	igt_fixture {
+		bool found = false;
+
 		data->flags = tests[testnum].flags;
 
-		data->output = igt_get_single_output_for_pipe(&data->display,
-							      data->pipe);
-		igt_require(data->output);
-		igt_output_set_pipe(data->output, data->pipe);
+		for_each_valid_output_on_pipe(&data->display, data->pipe, data->output) {
+			igt_display_reset(&data->display);
+
+			igt_output_set_pipe(data->output, data->pipe);
+			if (i915_pipe_output_combo_valid(&data->display)) {
+				found = true;
+				break;
+			}
+
+		}
+		igt_require_f(found, "No valid pipe/output combo found.\n");
 	}
 
 	for (int i = 0; i < ARRAY_SIZE(ccs_modifiers); i++) {
@@ -611,7 +620,6 @@ static void test_output(data_t *data, const int testnum)
 		igt_subtest_f("pipe-%s-%s-%s", kmstest_pipe_name(data->pipe),
 			      tests[testnum].testname, ccs_modifiers[i].str) {
 			int valid_tests = 0;
-			igt_require(data->output);
 
 			if (data->flags == TEST_RANDOM)
 				igt_info("Testing with seed %d\n", data->seed);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (39 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-29  9:28   ` Swati Sharma
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Bhanuprakash Modem
                   ` (18 subsequent siblings)
  59 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

As many 2x tests are currently running on Pipe-A & B only, those
tests will always SKIP if there is any 8K supported panel in the
config. Instead of Skipping the test, add some intelligence to
the subtest to identify the valid pipe/output combo to execute
the subtest.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_cdclk.c | 93 +++++++++++++++++++++++-------------------
 1 file changed, 51 insertions(+), 42 deletions(-)

diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
index 991a7c50..ce945623 100644
--- a/tests/i915/kms_cdclk.c
+++ b/tests/i915/kms_cdclk.c
@@ -243,20 +243,17 @@ static void test_mode_transition_on_all_outputs(data_t *data)
 	int debugfs_fd = data->debugfs_fd;
 	drmModeModeInfo *mode, *mode_hi, *mode_lo;
 	igt_output_t *output;
-	int valid_outputs = 0;
 	int cdclk_ref, cdclk_new;
 	uint16_t width = 0, height = 0;
 	struct igt_fb fb;
 	igt_pipe_t *pipe;
 	igt_plane_t *plane;
-	int i = 0, j = 0;
+	enum pipe p, active_pipes[IGT_MAX_PIPES];
+	int i = 0, active_pipe_count = 0;
 
 	do_cleanup_display(display);
 	igt_display_reset(display);
 
-	for_each_connected_output(&data->display, output)
-		valid_outputs++;
-
 	for_each_connected_output(display, output) {
 		mode = igt_output_get_mode(output);
 		igt_assert(mode);
@@ -269,52 +266,59 @@ static void test_mode_transition_on_all_outputs(data_t *data)
 
 	igt_create_pattern_fb(data->drm_fd, width, height, DRM_FORMAT_XRGB8888,
 			      DRM_FORMAT_MOD_LINEAR, &fb);
-	i = 0;
+
 	for_each_connected_output(display, output) {
-		pipe = &display->pipes[i];
-		plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
+		for_each_pipe(display, p) {
+			mode = NULL;
 
-		mode = NULL;
+			igt_output_set_pipe(output, p);
+			mode = igt_output_get_mode(output);
+			igt_assert(mode);
 
-		igt_output_set_pipe(output, i);
-		mode = igt_output_get_mode(output);
-		igt_assert(mode);
+			mode_hi = get_highres_mode(output);
+			igt_require(mode_hi != NULL);
+
+			igt_output_override_mode(output, mode_hi);
+			if (!i915_pipe_output_combo_valid(display)) {
+				igt_output_set_pipe(output, PIPE_NONE);
+				continue;
+			}
 
-		mode_lo = get_lowres_mode(output);
+			active_pipes[active_pipe_count++] = p;
+			pipe = &display->pipes[p];
+			plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
+			igt_plane_set_fb(plane, &fb);
+			igt_fb_set_size(&fb, plane, mode_hi->hdisplay, mode_hi->vdisplay);
+			igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
 
-		igt_output_override_mode(output, mode_lo);
-		igt_plane_set_fb(plane, &fb);
-		igt_fb_set_size(&fb, plane, mode_lo->hdisplay, mode_lo->vdisplay);
-		igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
-		i++;
+			break;
+		}
 	}
 
 	igt_display_commit2(display, COMMIT_ATOMIC);
-	cdclk_ref = get_current_cdclk_freq(debugfs_fd);
+	cdclk_new = get_current_cdclk_freq(debugfs_fd);
 
-	j = 0;
 	for_each_connected_output(display, output) {
-		pipe = &display->pipes[j];
-		plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
+		for (i = 0; i < active_pipe_count; i++) {
+			pipe = &display->pipes[active_pipes[i]];
+			plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
 
-		mode = NULL;
+			mode = NULL;
+			igt_output_set_pipe(output, i);
+			mode = igt_output_get_mode(output);
+			igt_assert(mode);
 
-		igt_output_set_pipe(output, j);
-		mode = igt_output_get_mode(output);
-		igt_assert(mode);
-
-		mode_hi = get_highres_mode(output);
-		igt_require(mode_hi != NULL);
+			mode_lo = get_lowres_mode(output);
 
-		igt_output_override_mode(output, mode_hi);
-		igt_plane_set_fb(plane, &fb);
-		igt_fb_set_size(&fb, plane, mode_hi->hdisplay, mode_hi->vdisplay);
-		igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
-		j++;
+			igt_output_override_mode(output, mode_lo);
+			igt_plane_set_fb(plane, &fb);
+			igt_fb_set_size(&fb, plane, mode_lo->hdisplay, mode_lo->vdisplay);
+			igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
+		}
 	}
 
 	igt_display_commit2(display, COMMIT_ATOMIC);
-	cdclk_new = get_current_cdclk_freq(debugfs_fd);
+	cdclk_ref = get_current_cdclk_freq(debugfs_fd);
 	igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
 
 	/* cdclk should bump */
@@ -332,13 +336,18 @@ static void run_cdclk_test(data_t *data, uint32_t flags)
 	enum pipe pipe;
 
 	for_each_pipe_with_valid_output(display, pipe, output) {
-		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
-			if (igt_pipe_connector_valid(pipe, output)) {
-				if (flags & TEST_PLANESCALING)
-					test_plane_scaling(data, pipe, output);
-				if (flags & TEST_MODETRANSITION)
-					test_mode_transition(data, pipe, output);
-			}
+		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display)) {
+			igt_output_set_pipe(output, PIPE_NONE);
+			continue;
+		}
+
+		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
+			if (flags & TEST_PLANESCALING)
+				test_plane_scaling(data, pipe, output);
+			if (flags & TEST_MODETRANSITION)
+				test_mode_transition(data, pipe, output);
+		}
 	}
 }
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (40 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: " Bhanuprakash Modem
                   ` (17 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_draw_crc.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/tests/i915/kms_draw_crc.c b/tests/i915/kms_draw_crc.c
index c2ac4721..01c3808c 100644
--- a/tests/i915/kms_draw_crc.c
+++ b/tests/i915/kms_draw_crc.c
@@ -59,16 +59,14 @@ static void find_modeset_params(void)
 {
 	enum pipe pipe;
 
-	igt_display_reset(&display);
-	igt_display_commit(&display);
-
 	for_each_pipe_with_valid_output(&display, pipe, output) {
-		igt_output_set_pipe(output, pipe);
+		igt_display_reset(&display);
 
-		mode = igt_output_get_mode(output);
-		if (!mode)
+		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(&display))
 			continue;
 
+		mode = igt_output_get_mode(output);
 		pipe_crc = igt_pipe_crc_new(drm_fd, pipe, IGT_PIPE_CRC_SOURCE_AUTO);
 		/*Only one pipe/output is enough*/
 		break;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (41 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-26 10:58   ` Sharma, Ananya
  2022-12-27  8:58   ` Sharma, Ananya
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
                   ` (16 subsequent siblings)
  59 siblings, 2 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_fence_pin_leak.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/i915/kms_fence_pin_leak.c b/tests/i915/kms_fence_pin_leak.c
index 1972a699..63657a74 100644
--- a/tests/i915/kms_fence_pin_leak.c
+++ b/tests/i915/kms_fence_pin_leak.c
@@ -124,6 +124,9 @@ static void run_single_test(data_t *data, enum pipe pipe, igt_output_t *output)
 	struct igt_fb fb[2];
 	int i;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 
 	mode = igt_output_get_mode(output);
@@ -196,6 +199,12 @@ static void run_test(data_t *data)
 	enum pipe p;
 
 	for_each_pipe_with_valid_output(display, p, output) {
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, p);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		run_single_test(data, p, output);
 
 		return; /* one time ought to be enough */
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (42 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-28 18:43   ` Swati Sharma
  2022-12-29  5:17   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
                   ` (15 subsequent siblings)
  59 siblings, 2 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_flip_scaled_crc.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_flip_scaled_crc.c b/tests/i915/kms_flip_scaled_crc.c
index 10465ca7..1b497dcc 100644
--- a/tests/i915/kms_flip_scaled_crc.c
+++ b/tests/i915/kms_flip_scaled_crc.c
@@ -648,8 +648,13 @@ igt_main
 			for_each_pipe(&data.display, pipe) {
 				bool found = false;
 				for_each_valid_output_on_pipe(&data.display, pipe, output) {
+					igt_display_reset(&data.display);
+
 					modetoset = find_mode(&data, output);
-					if (modetoset) {
+					igt_output_set_pipe(output, pipe);
+					igt_output_override_mode(output, modetoset);
+
+					if (modetoset && i915_pipe_output_combo_valid(&data.display)) {
 						found = true;
 						igt_dynamic_f("pipe-%s-valid-mode", kmstest_pipe_name(pipe))
 							run_tests(&data, index, pipe, output, modetoset);
@@ -658,6 +663,12 @@ igt_main
 				}
 				if (!found) {
 					for_each_valid_output_on_pipe(&data.display, pipe, output) {
+						igt_display_reset(&data.display);
+
+						igt_output_set_pipe(output, pipe);
+						if (!i915_pipe_output_combo_valid(&data.display))
+							continue;
+
 						igt_dynamic_f("pipe-%s-default-mode", kmstest_pipe_name(pipe))
 							run_tests(&data, index, pipe, output, modetoset);
 					}
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (43 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-12-23  8:11   ` B, Jeevan
  2022-12-23  8:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Bhanuprakash Modem
                   ` (14 subsequent siblings)
  59 siblings, 2 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_flip_tiling.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/i915/kms_flip_tiling.c b/tests/i915/kms_flip_tiling.c
index 1183feb6..2e2b9511 100644
--- a/tests/i915/kms_flip_tiling.c
+++ b/tests/i915/kms_flip_tiling.c
@@ -79,6 +79,9 @@ test_flip_tiling(data_t *data, enum pipe pipe, igt_output_t *output, uint64_t mo
 	igt_crc_t reference_crc, crc;
 	int fb_id, ret;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	memcpy(&data->old_fb, &data->fb, sizeof(data->fb));
 
 	mode = igt_output_get_mode(output);
@@ -195,8 +198,12 @@ igt_main
 		for_each_pipe_with_valid_output(&data.display, pipe, output) {
 			igt_plane_t *plane;
 
+			igt_display_reset(&data.display);
 			pipe_crc_free(&data);
+
 			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(&data.display))
+				continue;
 
 			plane = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (44 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 47/52] tests/i915/kms_mmap_write_crc: " Bhanuprakash Modem
                   ` (13 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

As many 2x tests are currently running on Pipe-A & B only, those
tests will always SKIP if there is any 8K supported panel in the
config. Instead of Skipping the test, add some intelligence to
the subtest to identify the valid pipe/output combo to execute
the subtest.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 5b47999e..650e14a7 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -403,15 +403,23 @@ static bool find_connector(bool edp_only, bool pipe_a,
 		if (pipe_a && pipe != PIPE_A)
 			continue;
 
-		if (output == forbidden_output || pipe == forbidden_pipe)
+		if (output == forbidden_output || pipe == forbidden_pipe) {
+			igt_output_set_pipe(output, pipe);
+			igt_output_override_mode(output, connector_get_mode(output));
+
 			continue;
+		}
 
 		if (c->connector_type == DRM_MODE_CONNECTOR_eDP && opt.no_edp)
 			continue;
 
-		*ret_output = output;
-		*ret_pipe = pipe;
-		return true;
+		igt_output_set_pipe(output, pipe);
+		igt_output_override_mode(output, connector_get_mode(output));
+		if (i915_pipe_output_combo_valid(&drm.display)) {
+			*ret_output = output;
+			*ret_pipe = pipe;
+			return true;
+		}
 	}
 
 	return false;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 47/52] tests/i915/kms_mmap_write_crc: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (45 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 48/52] tests/i915/kms_psr2_sf: " Bhanuprakash Modem
                   ` (12 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/i915/kms_mmap_write_crc.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/i915/kms_mmap_write_crc.c b/tests/i915/kms_mmap_write_crc.c
index 96ddac11..4f7a86bf 100644
--- a/tests/i915/kms_mmap_write_crc.c
+++ b/tests/i915/kms_mmap_write_crc.c
@@ -277,6 +277,12 @@ igt_main_args("n", NULL, NULL, opt_handler, NULL)
 
 	igt_subtest_with_dynamic("main") {
 		for_each_pipe_with_valid_output(&data.display, pipe, output) {
+			igt_display_reset(&data.display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(&data.display))
+				continue;
+
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe),
 				      igt_output_name(output)) {
 				data.output = output;
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 48/52] tests/i915/kms_psr2_sf: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (46 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 47/52] tests/i915/kms_mmap_write_crc: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 49/52] tests/i915/kms_psr2_su: " Bhanuprakash Modem
                   ` (11 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Jeevan B <jeevan.b@intel.com>
---
 tests/i915/kms_psr2_sf.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/i915/kms_psr2_sf.c b/tests/i915/kms_psr2_sf.c
index cfde6cfc..2b2f6166 100644
--- a/tests/i915/kms_psr2_sf.c
+++ b/tests/i915/kms_psr2_sf.c
@@ -115,7 +115,11 @@ static void setup_output(data_t *data)
 		if (c->connector_type != DRM_MODE_CONNECTOR_eDP)
 			continue;
 
+		igt_display_reset(display);
 		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		data->output = output;
 		data->mode = igt_output_get_mode(output);
 
@@ -127,6 +131,9 @@ static void display_init(data_t *data)
 {
 	igt_display_require(&data->display, data->drm_fd);
 	setup_output(data);
+
+	igt_require_f(data->output, "No available output found\n");
+	igt_require_f(data->mode, "No available mode found on %s\n", data->output->name);
 }
 
 static void display_fini(data_t *data)
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 49/52] tests/i915/kms_psr2_su: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (47 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 48/52] tests/i915/kms_psr2_sf: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 50/52] tests/i915/kms_psr: " Bhanuprakash Modem
                   ` (10 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Jeevan B <jeevan.b@intel.com>
---
 tests/i915/kms_psr2_su.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/i915/kms_psr2_su.c b/tests/i915/kms_psr2_su.c
index 84dc30c3..3e0a78f2 100644
--- a/tests/i915/kms_psr2_su.c
+++ b/tests/i915/kms_psr2_su.c
@@ -104,7 +104,11 @@ static void setup_output(data_t *data)
 		if (c->connector_type != DRM_MODE_CONNECTOR_eDP)
 			continue;
 
+		igt_display_reset(display);
 		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		data->output = output;
 		data->mode = igt_output_get_mode(output);
 
@@ -116,6 +120,9 @@ static void display_init(data_t *data)
 {
 	igt_display_require(&data->display, data->drm_fd);
 	setup_output(data);
+
+	igt_require_f(data->output, "No available output found\n");
+	igt_require_f(data->mode, "No available mode found on %s\n", data->output->name);
 }
 
 static void display_fini(data_t *data)
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 50/52] tests/i915/kms_psr: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (48 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 49/52] tests/i915/kms_psr2_su: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 51/52] tests/i915/kms_psr_stress_test: " Bhanuprakash Modem
                   ` (9 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Jeevan B <jeevan.b@intel.com>
---
 tests/i915/kms_psr.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tests/i915/kms_psr.c b/tests/i915/kms_psr.c
index 59f38e20..c9290234 100644
--- a/tests/i915/kms_psr.c
+++ b/tests/i915/kms_psr.c
@@ -102,7 +102,11 @@ static void setup_output(data_t *data)
 		if (c->connector_type != DRM_MODE_CONNECTOR_eDP)
 			continue;
 
+		igt_display_reset(display);
 		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		data->crtc_id = output->config.crtc->crtc_id;
 		data->output = output;
 		data->mode = igt_output_get_mode(output);
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 51/52] tests/i915/kms_psr_stress_test: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (49 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 50/52] tests/i915/kms_psr: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 52/52] tests/i915/kms_pwrite_crc: " Bhanuprakash Modem
                   ` (8 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Jeevan B <jeevan.b@intel.com>
---
 tests/i915/kms_psr_stress_test.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_psr_stress_test.c b/tests/i915/kms_psr_stress_test.c
index daac41d4..26e222a2 100644
--- a/tests/i915/kms_psr_stress_test.c
+++ b/tests/i915/kms_psr_stress_test.c
@@ -72,7 +72,13 @@ static void setup_output(data_t *data)
 		if (c->connector_type != DRM_MODE_CONNECTOR_eDP)
 			continue;
 
+		igt_display_reset(display);
 		igt_output_set_pipe(output, pipe);
+		if (!i915_pipe_output_combo_valid(display)) {
+			igt_output_set_pipe(output, PIPE_NONE);
+			continue;
+		}
+
 		data->output = output;
 		data->mode = igt_output_get_mode(output);
 
@@ -374,4 +380,4 @@ igt_main
 		close(data.debugfs_fd);
 		close(data.drm_fd);
 	}
-}
\ No newline at end of file
+}
-- 
2.38.0

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

* [igt-dev] [i-g-t v5 52/52] tests/i915/kms_pwrite_crc: Add support for Bigjoiner
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (50 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 51/52] tests/i915/kms_psr_stress_test: " Bhanuprakash Modem
@ 2022-11-15 17:08 ` Bhanuprakash Modem
  2022-11-15 20:21 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev9) Patchwork
                   ` (7 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-11-15 17:08 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name
V3: - Fix the usage of pipe & output

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/i915/kms_pwrite_crc.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/tests/i915/kms_pwrite_crc.c b/tests/i915/kms_pwrite_crc.c
index c84a184d..3278d876 100644
--- a/tests/i915/kms_pwrite_crc.c
+++ b/tests/i915/kms_pwrite_crc.c
@@ -110,6 +110,7 @@ static void prepare_crtc(data_t *data)
 	igt_output_t *output = data->output;
 	drmModeModeInfo *mode;
 
+	igt_display_reset(display);
 	/* select the pipe we want to use */
 	igt_output_set_pipe(output, data->pipe);
 
@@ -156,12 +157,13 @@ static void cleanup_crtc(data_t *data)
 static void run_test(data_t *data)
 {
 	igt_display_t *display = &data->display;
-	igt_output_t *output;
-	enum pipe pipe;
 
-	for_each_pipe_with_valid_output(display, pipe, output) {
-		data->output = output;
-		data->pipe = pipe;
+	for_each_pipe_with_valid_output(display, data->pipe, data->output) {
+		igt_display_reset(display);
+
+		igt_output_set_pipe(data->output, data->pipe);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
 
 		prepare_crtc(data);
 		test(data);
-- 
2.38.0

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

* [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev9)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (51 preceding siblings ...)
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 52/52] tests/i915/kms_pwrite_crc: " Bhanuprakash Modem
@ 2022-11-15 20:21 ` Patchwork
  2022-11-16  3:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
                   ` (6 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-11-15 20:21 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev9)
URL   : https://patchwork.freedesktop.org/series/108183/
State : success

== Summary ==

CI Bug Log - changes from IGT_7059 -> IGTPW_8108
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (37 -> 39)
------------------------------

  Additional (4): bat-kbl-2 fi-tgl-dsi bat-dg1-6 fi-pnv-d510 
  Missing    (2): bat-atsm-1 bat-adlp-6 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_mmap@basic:
    - bat-dg1-6:          NOTRUN -> [SKIP][1] ([i915#4083])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@gem_mmap@basic.html

  * igt@gem_render_tiled_blits@basic:
    - bat-dg1-6:          NOTRUN -> [SKIP][2] ([i915#4079]) +1 similar issue
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@gem_render_tiled_blits@basic.html

  * igt@gem_tiled_fence_blits@basic:
    - bat-dg1-6:          NOTRUN -> [SKIP][3] ([i915#4077]) +2 similar issues
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@gem_tiled_fence_blits@basic.html

  * igt@i915_pm_backlight@basic-brightness:
    - bat-dg1-6:          NOTRUN -> [SKIP][4] ([i915#1155])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@i915_pm_backlight@basic-brightness.html

  * igt@i915_pm_rps@basic-api:
    - bat-dg1-6:          NOTRUN -> [SKIP][5] ([i915#6621])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@i915_pm_rps@basic-api.html

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-apl-guc:         [PASS][6] -> [DMESG-FAIL][7] ([i915#5334])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html

  * igt@kms_addfb_basic@basic-y-tiled-legacy:
    - bat-dg1-6:          NOTRUN -> [SKIP][8] ([i915#4215])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_addfb_basic@basic-y-tiled-legacy.html

  * igt@kms_addfb_basic@tile-pitch-mismatch:
    - bat-dg1-6:          NOTRUN -> [SKIP][9] ([i915#4212]) +7 similar issues
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_addfb_basic@tile-pitch-mismatch.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - bat-dg1-6:          NOTRUN -> [SKIP][10] ([fdo#111827]) +8 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor:
    - bat-dg1-6:          NOTRUN -> [SKIP][11] ([i915#4103] / [i915#4213])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html

  * igt@kms_force_connector_basic@force-load-detect:
    - bat-dg1-6:          NOTRUN -> [SKIP][12] ([fdo#109285])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-edp-1:
    - fi-skl-6600u:       [PASS][13] -> [FAIL][14] ([fdo#103375])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/fi-skl-6600u/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-edp-1.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/fi-skl-6600u/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-edp-1.html

  * igt@kms_psr@primary_page_flip:
    - fi-pnv-d510:        NOTRUN -> [SKIP][15] ([fdo#109271]) +43 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/fi-pnv-d510/igt@kms_psr@primary_page_flip.html

  * igt@kms_psr@sprite_plane_onoff:
    - bat-dg1-6:          NOTRUN -> [SKIP][16] ([i915#1072] / [i915#4078]) +3 similar issues
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_psr@sprite_plane_onoff.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - bat-dg1-6:          NOTRUN -> [SKIP][17] ([i915#3555])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-gtt:
    - bat-dg1-6:          NOTRUN -> [SKIP][18] ([i915#3708] / [i915#4077]) +1 similar issue
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@prime_vgem@basic-gtt.html

  * igt@prime_vgem@basic-read:
    - bat-dg1-6:          NOTRUN -> [SKIP][19] ([i915#3708]) +3 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@prime_vgem@basic-read.html

  * igt@prime_vgem@basic-userptr:
    - bat-dg1-6:          NOTRUN -> [SKIP][20] ([i915#3708] / [i915#4873])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-dg1-6/igt@prime_vgem@basic-userptr.html

  
#### Possible fixes ####

  * igt@fbdev@read:
    - {bat-rpls-2}:       [SKIP][21] ([i915#2582]) -> [PASS][22] +4 similar issues
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/bat-rpls-2/igt@fbdev@read.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-rpls-2/igt@fbdev@read.html

  * igt@gem_exec_suspend@basic-s0@smem:
    - {bat-rplp-1}:       [DMESG-WARN][23] ([i915#2867]) -> [PASS][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/bat-rplp-1/igt@gem_exec_suspend@basic-s0@smem.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-rplp-1/igt@gem_exec_suspend@basic-s0@smem.html

  * igt@i915_pm_rpm@module-reload:
    - {bat-rpls-2}:       [WARN][25] ([i915#7346]) -> [PASS][26]
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/bat-rpls-2/igt@i915_pm_rpm@module-reload.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-rpls-2/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live@slpc:
    - {bat-adln-1}:       [DMESG-FAIL][27] ([i915#6997]) -> [PASS][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/bat-adln-1/igt@i915_selftest@live@slpc.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/bat-adln-1/igt@i915_selftest@live@slpc.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1759]: https://gitlab.freedesktop.org/drm/intel/issues/1759
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6997]: https://gitlab.freedesktop.org/drm/intel/issues/6997
  [i915#7346]: https://gitlab.freedesktop.org/drm/intel/issues/7346
  [i915#7456]: https://gitlab.freedesktop.org/drm/intel/issues/7456


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7059 -> IGTPW_8108

  CI-20190529: 20190529
  CI_DRM_12382: cb74864693414b221b3601572e75449558126e8b @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8108: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/index.html
  IGT_7059: 89c5c56dfde602d54eefa301e9887eff8bcda0e8 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev9)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (52 preceding siblings ...)
  2022-11-15 20:21 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev9) Patchwork
@ 2022-11-16  3:08 ` Patchwork
  2022-12-15 12:18 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev10) Patchwork
                   ` (5 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-11-16  3:08 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev9)
URL   : https://patchwork.freedesktop.org/series/108183/
State : failure

== Summary ==

CI Bug Log - changes from IGT_7059_full -> IGTPW_8108_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_8108_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_8108_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

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

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@gem_mmap_gtt@cpuset-medium-copy-xy:
    - shard-tglb:         [PASS][1] -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb3/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb6/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html

  * igt@i915_suspend@forcewake:
    - shard-snb:          [PASS][3] -> [TIMEOUT][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-snb7/igt@i915_suspend@forcewake.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-snb6/igt@i915_suspend@forcewake.html

  * igt@kms_ccs@pipe-a-bad-pixel-format-4_tiled_dg2_rc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][5] +6 similar issues
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_ccs@pipe-a-bad-pixel-format-4_tiled_dg2_rc_ccs.html

  
#### Warnings ####

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs:
    - shard-iclb:         [SKIP][6] ([fdo#109278]) -> [SKIP][7] +71 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb7/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html

  * igt@kms_display_modes@extended-mode-basic:
    - shard-tglb:         [SKIP][8] ([fdo#109274]) -> [SKIP][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb8/igt@kms_display_modes@extended-mode-basic.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb7/igt@kms_display_modes@extended-mode-basic.html
    - shard-iclb:         [SKIP][10] ([fdo#109274]) -> [SKIP][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb6/igt@kms_display_modes@extended-mode-basic.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_display_modes@extended-mode-basic.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][12] ([i915#1845] / [i915#4098]) -> [SKIP][13] +6 similar issues
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs:
    - {shard-rkl}:        [SKIP][14] ([i915#4098]) -> [SKIP][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][16] ([i915#4070] / [i915#533] / [i915#6768]) -> [SKIP][17]
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-6/igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_plane@plane-position-hole-dpms:
    - {shard-rkl}:        NOTRUN -> [SKIP][18] +5 similar issues
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-5/igt@kms_plane@plane-position-hole-dpms.html

  
New tests
---------

  New tests have been introduced between IGT_7059_full and IGTPW_8108_full:

### New IGT tests (12) ###

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@feature_discovery@display-2x:
    - shard-iclb:         NOTRUN -> [SKIP][19] ([i915#1839])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@feature_discovery@display-2x.html

  * igt@gem_create@create-ext-cpu-access-sanity-check:
    - shard-tglb:         NOTRUN -> [SKIP][20] ([i915#6335])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb5/igt@gem_create@create-ext-cpu-access-sanity-check.html
    - shard-iclb:         NOTRUN -> [SKIP][21] ([i915#6335])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@gem_create@create-ext-cpu-access-sanity-check.html

  * igt@gem_ctx_persistence@legacy-engines-mixed-process:
    - shard-snb:          NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#1099]) +1 similar issue
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-snb5/igt@gem_ctx_persistence@legacy-engines-mixed-process.html

  * igt@gem_eio@unwedge-stress:
    - shard-snb:          NOTRUN -> [FAIL][23] ([i915#3354])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-snb4/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@parallel-bb-first:
    - shard-iclb:         [PASS][24] -> [SKIP][25] ([i915#4525])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb1/igt@gem_exec_balancer@parallel-bb-first.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb6/igt@gem_exec_balancer@parallel-bb-first.html

  * igt@gem_exec_fair@basic-flow@rcs0:
    - shard-tglb:         [PASS][26] -> [FAIL][27] ([i915#2842])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb6/igt@gem_exec_fair@basic-flow@rcs0.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb7/igt@gem_exec_fair@basic-flow@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs1:
    - shard-iclb:         NOTRUN -> [FAIL][28] ([i915#2842])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@gem_exec_fair@basic-none@vcs1.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [PASS][29] -> [FAIL][30] ([i915#2842])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-glk9/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk1/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_huc_copy@huc-copy:
    - shard-apl:          NOTRUN -> [SKIP][31] ([fdo#109271] / [i915#2190])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@basic:
    - shard-iclb:         NOTRUN -> [SKIP][32] ([i915#4613]) +2 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@gem_lmem_swapping@basic.html

  * igt@gem_lmem_swapping@heavy-multi:
    - shard-apl:          NOTRUN -> [SKIP][33] ([fdo#109271] / [i915#4613]) +2 similar issues
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl2/igt@gem_lmem_swapping@heavy-multi.html

  * igt@gem_lmem_swapping@heavy-verify-multi-ccs:
    - shard-tglb:         NOTRUN -> [SKIP][34] ([i915#4613]) +2 similar issues
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb6/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html
    - shard-glk:          NOTRUN -> [SKIP][35] ([fdo#109271] / [i915#4613]) +1 similar issue
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk3/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html

  * igt@gem_pxp@reject-modify-context-protection-off-1:
    - shard-iclb:         NOTRUN -> [SKIP][36] ([i915#4270])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@gem_pxp@reject-modify-context-protection-off-1.html

  * igt@gem_render_copy@linear-to-vebox-yf-tiled:
    - shard-iclb:         NOTRUN -> [SKIP][37] ([i915#768])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@gem_render_copy@linear-to-vebox-yf-tiled.html

  * igt@gem_softpin@evict-snoop-interruptible:
    - shard-tglb:         NOTRUN -> [SKIP][38] ([fdo#109312])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb5/igt@gem_softpin@evict-snoop-interruptible.html
    - shard-iclb:         NOTRUN -> [SKIP][39] ([fdo#109312])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@gem_softpin@evict-snoop-interruptible.html

  * igt@gem_userptr_blits@coherency-sync:
    - shard-iclb:         NOTRUN -> [SKIP][40] ([fdo#109290])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@gem_userptr_blits@coherency-sync.html
    - shard-tglb:         NOTRUN -> [SKIP][41] ([fdo#110542])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb8/igt@gem_userptr_blits@coherency-sync.html

  * igt@gem_userptr_blits@unsync-overlap:
    - shard-iclb:         NOTRUN -> [SKIP][42] ([i915#3297]) +1 similar issue
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@gem_userptr_blits@unsync-overlap.html
    - shard-tglb:         NOTRUN -> [SKIP][43] ([i915#3297])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb8/igt@gem_userptr_blits@unsync-overlap.html

  * igt@gen7_exec_parse@basic-allowed:
    - shard-tglb:         NOTRUN -> [SKIP][44] ([fdo#109289])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb3/igt@gen7_exec_parse@basic-allowed.html
    - shard-iclb:         NOTRUN -> [SKIP][45] ([fdo#109289]) +2 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb6/igt@gen7_exec_parse@basic-allowed.html

  * igt@i915_module_load@resize-bar:
    - shard-iclb:         NOTRUN -> [SKIP][46] ([i915#6412])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@i915_module_load@resize-bar.html

  * igt@i915_pm_freq_mult@media-freq@gt0:
    - shard-iclb:         NOTRUN -> [SKIP][47] ([i915#6590])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@i915_pm_freq_mult@media-freq@gt0.html
    - shard-tglb:         NOTRUN -> [SKIP][48] ([i915#6590])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb1/igt@i915_pm_freq_mult@media-freq@gt0.html

  * igt@i915_suspend@sysfs-reader:
    - shard-apl:          [PASS][49] -> [DMESG-WARN][50] ([i915#180])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl2/igt@i915_suspend@sysfs-reader.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@i915_suspend@sysfs-reader.html

  * igt@kms_atomic@atomic_plane_damage:
    - shard-iclb:         NOTRUN -> [SKIP][51] ([i915#4765])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_atomic@atomic_plane_damage.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-270:
    - shard-tglb:         NOTRUN -> [SKIP][52] ([i915#5286])
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb8/igt@kms_big_fb@4-tiled-64bpp-rotate-270.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-iclb:         NOTRUN -> [SKIP][53] ([i915#5286])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@linear-32bpp-rotate-270:
    - shard-tglb:         NOTRUN -> [SKIP][54] ([fdo#111614]) +2 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb3/igt@kms_big_fb@linear-32bpp-rotate-270.html

  * igt@kms_big_fb@x-tiled-64bpp-rotate-90:
    - shard-glk:          NOTRUN -> [SKIP][55] ([fdo#109271]) +88 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk9/igt@kms_big_fb@x-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-8bpp-rotate-90:
    - shard-iclb:         NOTRUN -> [SKIP][56] ([fdo#110725] / [fdo#111614]) +3 similar issues
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-0:
    - shard-iclb:         NOTRUN -> [SKIP][57] ([fdo#110723])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb3/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html

  * igt@kms_big_joiner@2x-modeset:
    - shard-iclb:         NOTRUN -> [SKIP][58] ([i915#2705])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_big_joiner@2x-modeset.html

  * igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][59] ([i915#3689] / [i915#3886]) +1 similar issue
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb2/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][60] ([fdo#109271] / [i915#3886]) +8 similar issues
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs:
    - shard-glk:          NOTRUN -> [SKIP][61] ([fdo#109271] / [i915#3886]) +4 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk2/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][62] ([i915#3886]) +3 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs_cc:
    - shard-tglb:         NOTRUN -> [SKIP][63] ([i915#6095]) +3 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb1/igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-bad-rotation-90-4_tiled_dg2_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][64] ([i915#3689])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb6/igt@kms_ccs@pipe-d-bad-rotation-90-4_tiled_dg2_mc_ccs.html

  * igt@kms_ccs@pipe-d-crc-primary-basic-4_tiled_dg2_rc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][65] ([fdo#109278]) +6 similar issues
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_ccs@pipe-d-crc-primary-basic-4_tiled_dg2_rc_ccs.html

  * igt@kms_chamelium@dp-crc-single:
    - shard-snb:          NOTRUN -> [SKIP][66] ([fdo#109271] / [fdo#111827]) +5 similar issues
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-snb7/igt@kms_chamelium@dp-crc-single.html

  * igt@kms_chamelium@hdmi-hpd-for-each-pipe:
    - shard-glk:          NOTRUN -> [SKIP][67] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk2/igt@kms_chamelium@hdmi-hpd-for-each-pipe.html

  * igt@kms_chamelium@vga-hpd-fast:
    - shard-tglb:         NOTRUN -> [SKIP][68] ([fdo#109284] / [fdo#111827]) +3 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb5/igt@kms_chamelium@vga-hpd-fast.html

  * igt@kms_color_chamelium@ctm-0-50:
    - shard-apl:          NOTRUN -> [SKIP][69] ([fdo#109271] / [fdo#111827]) +6 similar issues
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl2/igt@kms_color_chamelium@ctm-0-50.html

  * igt@kms_color_chamelium@ctm-0-75:
    - shard-iclb:         NOTRUN -> [SKIP][70] ([fdo#109284] / [fdo#111827]) +4 similar issues
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_color_chamelium@ctm-0-75.html

  * igt@kms_content_protection@atomic-dpms:
    - shard-iclb:         NOTRUN -> [SKIP][71] ([i915#7118])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb8/igt@kms_content_protection@atomic-dpms.html

  * igt@kms_content_protection@atomic@pipe-a-dp-1:
    - shard-apl:          NOTRUN -> [TIMEOUT][72] ([i915#7173])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl3/igt@kms_content_protection@atomic@pipe-a-dp-1.html

  * igt@kms_cursor_crc@cursor-offscreen-512x170:
    - shard-iclb:         NOTRUN -> [SKIP][73] ([fdo#109279] / [i915#3359])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb8/igt@kms_cursor_crc@cursor-offscreen-512x170.html
    - shard-tglb:         NOTRUN -> [SKIP][74] ([fdo#109279] / [i915#3359])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb6/igt@kms_cursor_crc@cursor-offscreen-512x170.html

  * igt@kms_cursor_crc@cursor-sliding-32x32:
    - shard-apl:          NOTRUN -> [SKIP][75] ([fdo#109271]) +103 similar issues
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl6/igt@kms_cursor_crc@cursor-sliding-32x32.html

  * igt@kms_cursor_crc@cursor-sliding-512x512:
    - shard-tglb:         NOTRUN -> [SKIP][76] ([i915#3359])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb2/igt@kms_cursor_crc@cursor-sliding-512x512.html
    - shard-iclb:         NOTRUN -> [SKIP][77] ([i915#3359])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb8/igt@kms_cursor_crc@cursor-sliding-512x512.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa@atomic-transitions-varying-size:
    - shard-tglb:         NOTRUN -> [SKIP][78] ([fdo#109274] / [fdo#111825]) +6 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb3/igt@kms_cursor_legacy@cursorb-vs-flipa@atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa@legacy:
    - shard-iclb:         NOTRUN -> [SKIP][79] ([fdo#109274]) +17 similar issues
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb6/igt@kms_cursor_legacy@cursorb-vs-flipa@legacy.html

  * igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([i915#3528])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb8/igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium.html
    - shard-iclb:         NOTRUN -> [SKIP][81] ([i915#3528])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@kms_dsc@dsc-with-bpc-formats:
    - shard-iclb:         NOTRUN -> [SKIP][82] ([i915#3840])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb6/igt@kms_dsc@dsc-with-bpc-formats.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-tglb:         NOTRUN -> [FAIL][83] ([i915#2411] / [i915#4767])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb1/igt@kms_fbcon_fbt@fbc-suspend.html
    - shard-glk:          NOTRUN -> [FAIL][84] ([i915#4767])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk6/igt@kms_fbcon_fbt@fbc-suspend.html
    - shard-iclb:         NOTRUN -> [FAIL][85] ([i915#4767])
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb3/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@2x-nonexisting-fb-interruptible:
    - shard-tglb:         NOTRUN -> [SKIP][86] ([fdo#109274] / [fdo#111825] / [i915#3637]) +1 similar issue
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb8/igt@kms_flip@2x-nonexisting-fb-interruptible.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode:
    - shard-iclb:         NOTRUN -> [SKIP][87] ([i915#2587] / [i915#2672]) +2 similar issues
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb8/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][88] ([i915#2672]) +8 similar issues
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb3/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-default-mode.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render:
    - shard-iclb:         [PASS][89] -> [DMESG-WARN][90] ([i915#4391])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-render:
    - shard-tglb:         NOTRUN -> [SKIP][91] ([fdo#109280] / [fdo#111825]) +9 similar issues
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-gtt:
    - shard-tglb:         NOTRUN -> [SKIP][92] ([i915#6497]) +4 similar issues
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-onoff:
    - shard-iclb:         NOTRUN -> [SKIP][93] ([fdo#109280]) +15 similar issues
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-onoff.html

  * igt@kms_hdmi_inject@inject-audio:
    - shard-tglb:         [PASS][94] -> [SKIP][95] ([i915#433])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb1/igt@kms_hdmi_inject@inject-audio.html
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb2/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-a-dp-1:
    - shard-apl:          NOTRUN -> [FAIL][96] ([i915#4573]) +2 similar issues
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl7/igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-a-dp-1.html

  * igt@kms_plane_multiple@tiling-4:
    - shard-iclb:         NOTRUN -> [SKIP][97] ([i915#3555]) +1 similar issue
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_plane_multiple@tiling-4.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1:
    - shard-iclb:         [PASS][98] -> [SKIP][99] ([i915#5176]) +1 similar issue
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb6/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1.html
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb3/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1.html

  * igt@kms_prime@d3hot:
    - shard-iclb:         NOTRUN -> [SKIP][100] ([i915#6524])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@kms_prime@d3hot.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
    - shard-tglb:         NOTRUN -> [SKIP][101] ([i915#2920])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
    - shard-glk:          NOTRUN -> [SKIP][102] ([fdo#109271] / [i915#658])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk5/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
    - shard-iclb:         NOTRUN -> [SKIP][103] ([i915#2920])
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_su@page_flip-p010:
    - shard-apl:          NOTRUN -> [SKIP][104] ([fdo#109271] / [i915#658]) +1 similar issue
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl2/igt@kms_psr2_su@page_flip-p010.html

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-tglb:         NOTRUN -> [FAIL][105] ([i915#132] / [i915#3467])
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb6/igt@kms_psr@psr2_cursor_plane_onoff.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         NOTRUN -> [SKIP][106] ([fdo#109441]) +1 similar issue
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_psr@psr2_sprite_mmap_gtt:
    - shard-iclb:         [PASS][107] -> [SKIP][108] ([fdo#109441]) +2 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb3/igt@kms_psr@psr2_sprite_mmap_gtt.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - shard-tglb:         [PASS][109] -> [SKIP][110] ([i915#5519])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb8/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-iclb:         [PASS][111] -> [SKIP][112] ([i915#5519])
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb1/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_rotation_crc@primary-4-tiled-reflect-x-0:
    - shard-iclb:         NOTRUN -> [SKIP][113] ([i915#5289])
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb1/igt@kms_rotation_crc@primary-4-tiled-reflect-x-0.html

  * igt@kms_tv_load_detect@load-detect:
    - shard-snb:          NOTRUN -> [SKIP][114] ([fdo#109271]) +142 similar issues
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-snb4/igt@kms_tv_load_detect@load-detect.html

  * igt@kms_writeback@writeback-check-output:
    - shard-iclb:         NOTRUN -> [SKIP][115] ([i915#2437])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@kms_writeback@writeback-check-output.html

  * igt@sysfs_clients@recycle-many:
    - shard-apl:          NOTRUN -> [SKIP][116] ([fdo#109271] / [i915#2994]) +1 similar issue
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl6/igt@sysfs_clients@recycle-many.html

  * igt@sysfs_clients@sema-10:
    - shard-glk:          NOTRUN -> [SKIP][117] ([fdo#109271] / [i915#2994]) +2 similar issues
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk1/igt@sysfs_clients@sema-10.html
    - shard-iclb:         NOTRUN -> [SKIP][118] ([i915#2994])
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb6/igt@sysfs_clients@sema-10.html
    - shard-tglb:         NOTRUN -> [SKIP][119] ([i915#2994])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb3/igt@sysfs_clients@sema-10.html

  
#### Possible fixes ####

  * igt@gem_bad_reloc@negative-reloc-lut:
    - {shard-rkl}:        [SKIP][120] ([i915#3281]) -> [PASS][121] +4 similar issues
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@gem_bad_reloc@negative-reloc-lut.html
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-5/igt@gem_bad_reloc@negative-reloc-lut.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - {shard-rkl}:        [FAIL][122] ([i915#6268]) -> [PASS][123]
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-4/igt@gem_ctx_exec@basic-nohangcheck.html
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-1/igt@gem_ctx_exec@basic-nohangcheck.html
    - shard-tglb:         [FAIL][124] ([i915#6268]) -> [PASS][125]
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb2/igt@gem_ctx_exec@basic-nohangcheck.html
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb8/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_persistence@many-contexts:
    - {shard-rkl}:        [FAIL][126] ([i915#2410]) -> [PASS][127]
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-6/igt@gem_ctx_persistence@many-contexts.html
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-5/igt@gem_ctx_persistence@many-contexts.html

  * igt@gem_eio@in-flight-suspend:
    - {shard-rkl}:        [FAIL][128] ([fdo#103375]) -> [PASS][129]
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@gem_eio@in-flight-suspend.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@gem_eio@in-flight-suspend.html

  * igt@gem_exec_balancer@full-late-pulse:
    - {shard-dg1}:        [FAIL][130] ([i915#6032]) -> [PASS][131]
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-dg1-15/igt@gem_exec_balancer@full-late-pulse.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-dg1-19/igt@gem_exec_balancer@full-late-pulse.html

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-iclb:         [SKIP][132] ([i915#4525]) -> [PASS][133]
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb3/igt@gem_exec_balancer@parallel-keep-submit-fence.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_fair@basic-pace@vcs0:
    - shard-glk:          [FAIL][134] ([i915#2842]) -> [PASS][135] +3 similar issues
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-glk6/igt@gem_exec_fair@basic-pace@vcs0.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-glk6/igt@gem_exec_fair@basic-pace@vcs0.html

  * igt@gem_mmap_wc@set-cache-level:
    - {shard-rkl}:        [SKIP][136] ([i915#1850]) -> [PASS][137]
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-4/igt@gem_mmap_wc@set-cache-level.html
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-4/igt@gem_mmap_wc@set-cache-level.html

  * igt@gem_partial_pwrite_pread@writes-after-reads:
    - {shard-rkl}:        [SKIP][138] ([i915#3282]) -> [PASS][139] +4 similar issues
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-1/igt@gem_partial_pwrite_pread@writes-after-reads.html
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-5/igt@gem_partial_pwrite_pread@writes-after-reads.html

  * igt@gem_softpin@evict-single-offset:
    - shard-tglb:         [FAIL][140] ([i915#4171]) -> [PASS][141]
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb8/igt@gem_softpin@evict-single-offset.html
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb3/igt@gem_softpin@evict-single-offset.html

  * igt@gem_workarounds@suspend-resume-context:
    - shard-apl:          [DMESG-WARN][142] ([i915#180] / [i915#1982]) -> [PASS][143]
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl6/igt@gem_workarounds@suspend-resume-context.html
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@gem_workarounds@suspend-resume-context.html

  * igt@gen9_exec_parse@batch-without-end:
    - {shard-rkl}:        [SKIP][144] ([i915#2527]) -> [PASS][145] +1 similar issue
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@gen9_exec_parse@batch-without-end.html
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-5/igt@gen9_exec_parse@batch-without-end.html

  * igt@i915_pm_dc@dc6-psr:
    - shard-iclb:         [FAIL][146] ([i915#3989] / [i915#454]) -> [PASS][147]
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb3/igt@i915_pm_dc@dc6-psr.html
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb6/igt@i915_pm_dc@dc6-psr.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [SKIP][148] ([fdo#109271]) -> [PASS][149]
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rc6_residency@rc6-idle@vecs0:
    - {shard-dg1}:        [FAIL][150] ([i915#3591]) -> [PASS][151]
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-dg1-15/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-dg1-18/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html

  * igt@i915_pm_rpm@fences-dpms:
    - {shard-rkl}:        [SKIP][152] ([i915#1849]) -> [PASS][153]
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-4/igt@i915_pm_rpm@fences-dpms.html
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@i915_pm_rpm@fences-dpms.html

  * igt@i915_pm_rpm@modeset-lpsp:
    - {shard-rkl}:        [SKIP][154] ([i915#1397]) -> [PASS][155]
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@i915_pm_rpm@modeset-lpsp.html
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@i915_pm_rpm@modeset-lpsp.html

  * igt@i915_selftest@live@gt_heartbeat:
    - shard-apl:          [DMESG-FAIL][156] ([i915#5334]) -> [PASS][157]
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl1/igt@i915_selftest@live@gt_heartbeat.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl1/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@perf@engine_cs:
    - shard-snb:          [SKIP][158] ([fdo#109271]) -> [PASS][159]
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-snb7/igt@i915_selftest@perf@engine_cs.html
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-snb7/igt@i915_selftest@perf@engine_cs.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1:
    - shard-apl:          [FAIL][160] ([i915#79]) -> [PASS][161]
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl8/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1.html
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp1.html

  * igt@kms_flip@flip-vs-suspend-interruptible@b-edp1:
    - shard-tglb:         [DMESG-WARN][162] ([i915#2411] / [i915#2867]) -> [PASS][163]
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb7/igt@kms_flip@flip-vs-suspend-interruptible@b-edp1.html
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb7/igt@kms_flip@flip-vs-suspend-interruptible@b-edp1.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt:
    - {shard-rkl}:        [SKIP][164] ([i915#1849] / [i915#4098]) -> [PASS][165] +5 similar issues
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html

  * igt@kms_plane@plane-panning-top-left@pipe-a-planes:
    - {shard-rkl}:        [SKIP][166] ([i915#3558]) -> [PASS][167] +1 similar issue
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-3/igt@kms_plane@plane-panning-top-left@pipe-a-planes.html
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_plane@plane-panning-top-left@pipe-a-planes.html

  * igt@kms_psr@psr2_basic:
    - shard-iclb:         [SKIP][168] ([fdo#109441]) -> [PASS][169]
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb1/igt@kms_psr@psr2_basic.html
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_psr@psr2_basic.html

  * igt@kms_psr@suspend:
    - {shard-rkl}:        [SKIP][170] ([i915#1072]) -> [PASS][171]
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-5/igt@kms_psr@suspend.html
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_psr@suspend.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - shard-iclb:         [SKIP][172] ([i915#5519]) -> [PASS][173]
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb6/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  * igt@kms_vblank@pipe-a-ts-continuation-idle:
    - {shard-rkl}:        [SKIP][174] ([i915#1845] / [i915#4098]) -> [PASS][175] +14 similar issues
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-rkl-5/igt@kms_vblank@pipe-a-ts-continuation-idle.html
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-rkl-6/igt@kms_vblank@pipe-a-ts-continuation-idle.html

  * igt@kms_vblank@pipe-a-ts-continuation-suspend:
    - shard-apl:          [DMESG-WARN][176] ([i915#180]) -> [PASS][177]
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl6/igt@kms_vblank@pipe-a-ts-continuation-suspend.html

  
#### Warnings ####

  * igt@gem_pread@exhaustion:
    - shard-apl:          [INCOMPLETE][178] ([i915#7248]) -> [WARN][179] ([i915#2658])
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl3/igt@gem_pread@exhaustion.html
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl1/igt@gem_pread@exhaustion.html

  * igt@gem_pwrite@basic-exhaustion:
    - shard-tglb:         [WARN][180] ([i915#2658]) -> [INCOMPLETE][181] ([i915#7248])
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-tglb1/igt@gem_pwrite@basic-exhaustion.html
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-tglb7/igt@gem_pwrite@basic-exhaustion.html

  * igt@i915_pm_rc6_residency@rc6-idle@vecs0:
    - shard-iclb:         [FAIL][182] ([i915#2684]) -> [WARN][183] ([i915#2684])
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb8/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb8/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html

  * igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
    - shard-iclb:         [SKIP][184] ([fdo#109278] / [i915#3886]) -> [SKIP][185] ([i915#3886]) +48 similar issues
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb6/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1:
    - shard-apl:          [FAIL][186] ([i915#4573]) -> [DMESG-FAIL][187] ([IGT#6]) +1 similar issue
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl7/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl2/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-sf:
    - shard-iclb:         [SKIP][188] ([i915#658]) -> [SKIP][189] ([i915#2920])
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb6/igt@kms_psr2_sf@cursor-plane-move-continuous-sf.html
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@overlay-plane-update-continuous-sf:
    - shard-iclb:         [SKIP][190] ([i915#2920]) -> [SKIP][191] ([fdo#111068] / [i915#658])
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-iclb2/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-iclb5/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html

  * igt@runner@aborted:
    - shard-apl:          ([FAIL][192], [FAIL][193], [FAIL][194], [FAIL][195]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312]) -> ([FAIL][196], [FAIL][197], [FAIL][198]) ([i915#180] / [i915#3002] / [i915#4312])
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl6/igt@runner@aborted.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl7/igt@runner@aborted.html
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl2/igt@runner@aborted.html
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7059/shard-apl1/igt@runner@aborted.html
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@runner@aborted.html
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl8/igt@runner@aborted.html
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/shard-apl6/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109290]: https://bugs.freedesktop.org/show_bug.cgi?id=109290
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#110542]: https://bugs.freedesktop.org/show_bug.cgi?id=110542
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1850]: https://gitlab.freedesktop.org/drm/intel/issues/1850
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2232]: https://gitlab.freedesktop.org/drm/intel/issues/2232
  [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
  [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
  [i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2684]: https://gitlab.freedesktop.org/drm/intel/issues/2684
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#315]: https://gitlab.freedesktop.org/drm/intel/issues/315
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3354]: https://gitlab.freedesktop.org/drm/intel/issues/3354
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938
  [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
  [i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
  [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
  [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
  [i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4765]: https://gitlab.freedesktop.org/drm/intel/issues/4765
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4818]: https://gitlab.freedesktop.org/drm/intel/issues/4818
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
  [i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6032]: https://gitlab.freedesktop.org/drm/intel/issues/6032
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6259]: https://gitlab.freedesktop.org/drm/intel/issues/6259
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6355]: https://gitlab.freedesktop.org/drm/intel/issues/6355
  [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
  [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6590]: https://gitlab.freedesktop.org/drm/intel/issues/6590
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
  [i915#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037
  [i915#7052]: https://gitlab.freedesktop.org/drm/intel/issues/7052
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#7173]: https://gitlab.freedesktop.org/drm/intel/issues/7173
  [i915#7248]: https://gitlab.freedesktop.org/drm/intel/issues/7248
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7059 -> IGTPW_8108

  CI-20190529: 20190529
  CI_DRM_12382: cb74864693414b221b3601572e75449558126e8b @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8108: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8108/index.html
  IGT_7059: 89c5c56dfde602d54eefa301e9887eff8bcda0e8 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] [i-g-t v6 22/52] tests/kms_plane: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 22/52] tests/kms_plane: " Bhanuprakash Modem
@ 2022-12-15 10:40   ` Bhanuprakash Modem
  2022-12-27  6:20     ` Karthik B S
  0 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-12-15 10:40 UTC (permalink / raw)
  To: igt-dev

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name
V3: - Rebase

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_plane.c | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 164dacf4..a79802f6 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -56,6 +56,7 @@ typedef struct {
 typedef struct {
 	int drm_fd;
 	igt_display_t display;
+	igt_output_t *output;
 	igt_pipe_crc_t *pipe_crc;
 	const color_t *colors;
 	int num_colors;
@@ -274,11 +275,11 @@ static void
 test_plane_position(data_t *data, enum pipe pipe)
 {
 	int n_planes = data->display.pipes[pipe].n_planes;
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_crc_t reference_crc;

-	output = igt_get_single_output_for_pipe(&data->display, pipe);
-	igt_require(output);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));

 	test_init(data, pipe);
 	test_grab_crc(data, output, pipe, &green, data->flags, &reference_crc);
@@ -383,11 +384,11 @@ test_plane_panning(data_t *data, enum pipe pipe)
 {
 	bool mode_found = false;
 	uint64_t mem_size = 0;
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_crc_t ref_crc;

-	output = igt_get_single_output_for_pipe(&data->display, pipe);
-	igt_require(output);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));

 	test_init(data, pipe);

@@ -1076,7 +1077,7 @@ test_pixel_formats(data_t *data, enum pipe pipe)
 	igt_plane_t *primary;
 	drmModeModeInfo *mode;
 	bool result;
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_plane_t *plane;

 	if (data->extended) {
@@ -1087,10 +1088,10 @@ test_pixel_formats(data_t *data, enum pipe pipe)
 		data->num_colors = ARRAY_SIZE(colors_reduced);
 	}

-	test_init(data, pipe);
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));

-	output = igt_get_single_output_for_pipe(&data->display, pipe);
-	igt_require(output);
+	test_init(data, pipe);

 	mode = igt_output_get_mode(output);

@@ -1134,7 +1135,14 @@ static void run_test(data_t *data, void (*test)(data_t *, enum pipe))
 	enum pipe pipe;
 	int count = 0;

-	for_each_pipe(&data->display, pipe) {
+	for_each_pipe_with_single_output(&data->display, pipe, data->output) {
+		igt_display_reset(&data->display);
+
+		igt_output_set_pipe(data->output, pipe);
+		if (!i915_pipe_output_combo_valid(&data->display))
+			continue;
+
+		igt_output_set_pipe(data->output, PIPE_NONE);
 		igt_dynamic_f("pipe-%s-planes", kmstest_pipe_name(pipe))
 			test(data, pipe);

--
2.38.1

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

* [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev10)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (53 preceding siblings ...)
  2022-11-16  3:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
@ 2022-12-15 12:18 ` Patchwork
  2022-12-16 13:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
                   ` (4 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-12-15 12:18 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev10)
URL   : https://patchwork.freedesktop.org/series/108183/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12509 -> IGTPW_8238
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (41 -> 33)
------------------------------

  Missing    (8): fi-kbl-soraka fi-bsw-n3050 fi-bwr-2160 fi-pnv-d510 bat-rpls-1 bat-rpls-2 fi-bsw-nick fi-skl-6600u 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_pm_rpm@basic-rte:
    - bat-adlp-4:         [PASS][1] -> [DMESG-WARN][2] ([i915#7077])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/bat-adlp-4/igt@i915_pm_rpm@basic-rte.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/bat-adlp-4/igt@i915_pm_rpm@basic-rte.html

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-skl-guc:         [PASS][3] -> [DMESG-FAIL][4] ([i915#5334])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/fi-skl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/fi-skl-guc/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@hangcheck:
    - fi-adl-ddr5:        [PASS][5] -> [DMESG-WARN][6] ([i915#5591])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/fi-adl-ddr5/igt@i915_selftest@live@hangcheck.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/fi-adl-ddr5/igt@i915_selftest@live@hangcheck.html

  * igt@runner@aborted:
    - bat-adlp-4:         NOTRUN -> [FAIL][7] ([i915#4312])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/bat-adlp-4/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@gem_exec_suspend@basic-s3@smem:
    - {bat-adlp-6}:       [DMESG-WARN][8] ([i915#2867]) -> [PASS][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/bat-adlp-6/igt@gem_exec_suspend@basic-s3@smem.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/bat-adlp-6/igt@gem_exec_suspend@basic-s3@smem.html

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-glk-j4005:       [DMESG-FAIL][10] ([i915#5334]) -> [PASS][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/fi-glk-j4005/igt@i915_selftest@live@gt_heartbeat.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/fi-glk-j4005/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@migrate:
    - {bat-adlp-6}:       [DMESG-FAIL][12] ([i915#7699]) -> [PASS][13]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/bat-adlp-6/igt@i915_selftest@live@migrate.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/bat-adlp-6/igt@i915_selftest@live@migrate.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#5591]: https://gitlab.freedesktop.org/drm/intel/issues/5591
  [i915#7077]: https://gitlab.freedesktop.org/drm/intel/issues/7077
  [i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7094 -> IGTPW_8238

  CI-20190529: 20190529
  CI_DRM_12509: cc06f383ddbda197909a44d98ff003298aa2f2aa @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8238: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/index.html
  IGT_7094: 1763071e9d50c5e992257c9197cb26f166de6fae @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev10)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (54 preceding siblings ...)
  2022-12-15 12:18 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev10) Patchwork
@ 2022-12-16 13:08 ` Patchwork
  2022-12-23  7:12 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev11) Patchwork
                   ` (3 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-12-16 13:08 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev10)
URL   : https://patchwork.freedesktop.org/series/108183/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_12509_full -> IGTPW_8238_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_8238_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_8238_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

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

Participating hosts (14 -> 11)
------------------------------

  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][1] +4 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb5/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs.html

  
#### Warnings ####

  * igt@drm_buddy@all-tests:
    - shard-tglb:         [SKIP][2] ([i915#6433]) -> [SKIP][3] +1 similar issue
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-tglb1/igt@drm_buddy@all-tests.html
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@drm_buddy@all-tests.html
    - shard-iclb:         [SKIP][4] ([i915#6433]) -> [SKIP][5] +2 similar issues
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb8/igt@drm_buddy@all-tests.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@drm_buddy@all-tests.html

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs:
    - shard-iclb:         [SKIP][6] ([fdo#109278]) -> [SKIP][7] +74 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb5/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html

  * igt@kms_display_modes@extended-mode-basic:
    - shard-tglb:         [SKIP][8] ([fdo#109274]) -> [SKIP][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-tglb2/igt@kms_display_modes@extended-mode-basic.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@kms_display_modes@extended-mode-basic.html
    - shard-iclb:         [SKIP][10] ([fdo#109274]) -> [SKIP][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb3/igt@kms_display_modes@extended-mode-basic.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@kms_display_modes@extended-mode-basic.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@drm_mm@all-tests:
    - {shard-rkl}:        [SKIP][12] ([i915#6433]) -> [SKIP][13] +2 similar issues
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-3/igt@drm_mm@all-tests.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@drm_mm@all-tests.html
    - {shard-tglu-10}:    NOTRUN -> [SKIP][14]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglu-10/igt@drm_mm@all-tests.html

  * igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][15] ([i915#4098]) -> [SKIP][16] +4 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-4/igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs_cc.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs:
    - {shard-rkl}:        [SKIP][17] ([i915#1845] / [i915#4098]) -> [SKIP][18] +8 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-3/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html

  * igt@kms_cursor_crc@cursor-dpms@pipe-b-hdmi-a-4:
    - {shard-dg1}:        [PASS][19] -> [FAIL][20] +1 similar issue
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-13/igt@kms_cursor_crc@cursor-dpms@pipe-b-hdmi-a-4.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-17/igt@kms_cursor_crc@cursor-dpms@pipe-b-hdmi-a-4.html

  * igt@kms_display_modes@extended-mode-basic:
    - {shard-dg1}:        [SKIP][21] ([fdo#109274]) -> [SKIP][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-13/igt@kms_display_modes@extended-mode-basic.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-17/igt@kms_display_modes@extended-mode-basic.html

  * igt@kms_plane@plane-position-hole-dpms:
    - {shard-rkl}:        NOTRUN -> [SKIP][23] +6 similar issues
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-4/igt@kms_plane@plane-position-hole-dpms.html

  * igt@kms_selftest@all-tests:
    - {shard-dg1}:        [SKIP][24] ([i915#6433]) -> [SKIP][25] +2 similar issues
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-14/igt@kms_selftest@all-tests.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-17/igt@kms_selftest@all-tests.html
    - {shard-tglu}:       NOTRUN -> [SKIP][26]
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglu-2/igt@kms_selftest@all-tests.html

  * igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-d:
    - {shard-tglu-9}:     [SKIP][27] ([fdo#109274]) -> [SKIP][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-tglu-9/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-d.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglu-9/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-d.html

  * igt@syncobj_wait@invalid-multi-wait-all-unsubmitted-submitted-signaled:
    - {shard-dg1}:        [PASS][29] -> [DMESG-WARN][30]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-16/igt@syncobj_wait@invalid-multi-wait-all-unsubmitted-submitted-signaled.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-18/igt@syncobj_wait@invalid-multi-wait-all-unsubmitted-submitted-signaled.html

  
New tests
---------

  New tests have been introduced between CI_DRM_12509_full and IGTPW_8238_full:

### New IGT tests (12) ###

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_param@set-priority-not-supported:
    - shard-tglb:         NOTRUN -> [SKIP][31] ([fdo#109314])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@gem_ctx_param@set-priority-not-supported.html
    - shard-iclb:         NOTRUN -> [SKIP][32] ([fdo#109314])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@gem_ctx_param@set-priority-not-supported.html

  * igt@gem_ctx_persistence@process:
    - shard-snb:          NOTRUN -> [SKIP][33] ([fdo#109271] / [i915#1099]) +1 similar issue
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-snb5/igt@gem_ctx_persistence@process.html

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-iclb:         [PASS][34] -> [SKIP][35] ([i915#4525])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb1/igt@gem_exec_balancer@parallel-keep-submit-fence.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb5/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-tglb:         NOTRUN -> [FAIL][36] ([i915#6117])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb5/igt@gem_exec_balancer@parallel-ordering.html

  * igt@gem_exec_capture@capture-invisible@smem0:
    - shard-glk:          NOTRUN -> [SKIP][37] ([fdo#109271]) +83 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk4/igt@gem_exec_capture@capture-invisible@smem0.html

  * igt@gem_exec_fair@basic-pace@vcs0:
    - shard-glk:          NOTRUN -> [FAIL][38] ([i915#2842]) +2 similar issues
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk2/igt@gem_exec_fair@basic-pace@vcs0.html

  * igt@gem_exec_fair@basic-pace@vcs1:
    - shard-iclb:         NOTRUN -> [FAIL][39] ([i915#2842])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@gem_exec_fair@basic-pace@vcs1.html

  * igt@gem_lmem_swapping@massive:
    - shard-iclb:         NOTRUN -> [SKIP][40] ([i915#4613])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@gem_lmem_swapping@massive.html
    - shard-apl:          NOTRUN -> [SKIP][41] ([fdo#109271] / [i915#4613]) +2 similar issues
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@gem_lmem_swapping@massive.html
    - shard-tglb:         NOTRUN -> [SKIP][42] ([i915#4613]) +1 similar issue
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb5/igt@gem_lmem_swapping@massive.html

  * igt@gem_lmem_swapping@verify:
    - shard-glk:          NOTRUN -> [SKIP][43] ([fdo#109271] / [i915#4613])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk3/igt@gem_lmem_swapping@verify.html

  * igt@gem_media_vme:
    - shard-tglb:         NOTRUN -> [SKIP][44] ([i915#284])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@gem_media_vme.html

  * igt@gem_pwrite@basic-exhaustion:
    - shard-apl:          NOTRUN -> [WARN][45] ([i915#2658])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@gem_pwrite@basic-exhaustion.html

  * igt@gem_render_copy@yf-tiled-to-vebox-x-tiled:
    - shard-iclb:         NOTRUN -> [SKIP][46] ([i915#768])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@gem_render_copy@yf-tiled-to-vebox-x-tiled.html

  * igt@gem_softpin@evict-single-offset:
    - shard-apl:          NOTRUN -> [FAIL][47] ([i915#4171])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@gem_softpin@evict-single-offset.html
    - shard-tglb:         NOTRUN -> [FAIL][48] ([i915#4171])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@gem_softpin@evict-single-offset.html

  * igt@gem_userptr_blits@create-destroy-unsync:
    - shard-tglb:         NOTRUN -> [SKIP][49] ([i915#3297])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@gem_userptr_blits@create-destroy-unsync.html
    - shard-iclb:         NOTRUN -> [SKIP][50] ([i915#3297])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@gem_userptr_blits@create-destroy-unsync.html

  * igt@gen3_render_linear_blits:
    - shard-iclb:         NOTRUN -> [SKIP][51] ([fdo#109289]) +1 similar issue
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@gen3_render_linear_blits.html

  * igt@gen7_exec_parse@basic-allowed:
    - shard-tglb:         NOTRUN -> [SKIP][52] ([fdo#109289]) +1 similar issue
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb5/igt@gen7_exec_parse@basic-allowed.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-glk:          [PASS][53] -> [DMESG-WARN][54] ([i915#5566] / [i915#716])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-glk5/igt@gen9_exec_parse@allowed-single.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk4/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@basic-rejected:
    - shard-tglb:         NOTRUN -> [SKIP][55] ([i915#2527] / [i915#2856]) +1 similar issue
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@gen9_exec_parse@basic-rejected.html

  * igt@gen9_exec_parse@batch-invalid-length:
    - shard-iclb:         NOTRUN -> [SKIP][56] ([i915#2856])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@gen9_exec_parse@batch-invalid-length.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-tglb:         NOTRUN -> [SKIP][57] ([i915#4281])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rpm@pc8-residency:
    - shard-iclb:         NOTRUN -> [SKIP][58] ([fdo#109293] / [fdo#109506])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@i915_pm_rpm@pc8-residency.html
    - shard-tglb:         NOTRUN -> [SKIP][59] ([fdo#109506] / [i915#2411])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@i915_pm_rpm@pc8-residency.html

  * igt@i915_query@test-query-geometry-subslices:
    - shard-iclb:         NOTRUN -> [SKIP][60] ([i915#5723])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb6/igt@i915_query@test-query-geometry-subslices.html
    - shard-tglb:         NOTRUN -> [SKIP][61] ([i915#5723])
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb7/igt@i915_query@test-query-geometry-subslices.html

  * igt@i915_selftest@live@hangcheck:
    - shard-tglb:         [PASS][62] -> [DMESG-WARN][63] ([i915#5591])
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-tglb7/igt@i915_selftest@live@hangcheck.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@i915_selftest@live@hangcheck.html

  * igt@kms_atomic@plane-primary-overlay-mutable-zpos:
    - shard-iclb:         NOTRUN -> [SKIP][64] ([i915#404])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb2/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
    - shard-tglb:         NOTRUN -> [SKIP][65] ([i915#404])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
    - shard-iclb:         NOTRUN -> [SKIP][66] ([i915#5286])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html
    - shard-tglb:         NOTRUN -> [SKIP][67] ([i915#5286])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90:
    - shard-tglb:         NOTRUN -> [SKIP][68] ([fdo#111614]) +1 similar issue
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html
    - shard-iclb:         NOTRUN -> [SKIP][69] ([fdo#110725] / [fdo#111614]) +1 similar issue
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb5/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180:
    - shard-tglb:         NOTRUN -> [SKIP][70] ([fdo#111615]) +1 similar issue
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180.html

  * igt@kms_big_joiner@invalid-modeset:
    - shard-tglb:         NOTRUN -> [SKIP][71] ([i915#2705])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb7/igt@kms_big_joiner@invalid-modeset.html
    - shard-iclb:         NOTRUN -> [SKIP][72] ([i915#2705])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@kms_big_joiner@invalid-modeset.html

  * igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_mc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][73] ([i915#3886]) +2 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][74] ([i915#3689] / [i915#3886]) +1 similar issue
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-crc-primary-rotation-180-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][75] ([fdo#111615] / [i915#3689]) +3 similar issues
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb5/igt@kms_ccs@pipe-a-crc-primary-rotation-180-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-a-random-ccs-data-4_tiled_dg2_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][76] ([i915#6095]) +2 similar issues
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb7/igt@kms_ccs@pipe-a-random-ccs-data-4_tiled_dg2_mc_ccs.html

  * igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
    - shard-glk:          NOTRUN -> [SKIP][77] ([fdo#109271] / [i915#3886]) +3 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk8/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][78] ([fdo#109271] / [i915#3886]) +4 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_rc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][79] ([i915#3689] / [i915#6095]) +2 similar issues
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-d-ccs-on-another-bo-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([i915#3689]) +2 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@kms_ccs@pipe-d-ccs-on-another-bo-y_tiled_ccs.html

  * igt@kms_cdclk@mode-transition:
    - shard-iclb:         NOTRUN -> [SKIP][81] ([i915#3742])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb6/igt@kms_cdclk@mode-transition.html
    - shard-tglb:         NOTRUN -> [SKIP][82] ([i915#3742])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_cdclk@mode-transition.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - shard-glk:          NOTRUN -> [SKIP][83] ([fdo#109271] / [fdo#111827]) +3 similar issues
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk1/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_chamelium@hdmi-edid-stress-resolution-4k:
    - shard-tglb:         NOTRUN -> [SKIP][84] ([fdo#109284] / [fdo#111827]) +3 similar issues
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb5/igt@kms_chamelium@hdmi-edid-stress-resolution-4k.html

  * igt@kms_chamelium@hdmi-hpd:
    - shard-iclb:         NOTRUN -> [SKIP][85] ([fdo#109284] / [fdo#111827]) +2 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@kms_chamelium@hdmi-hpd.html

  * igt@kms_chamelium@vga-hpd-with-enabled-mode:
    - shard-snb:          NOTRUN -> [SKIP][86] ([fdo#109271] / [fdo#111827]) +2 similar issues
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-snb7/igt@kms_chamelium@vga-hpd-with-enabled-mode.html

  * igt@kms_color@deep-color:
    - shard-iclb:         NOTRUN -> [SKIP][87] ([i915#3555]) +2 similar issues
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@kms_color@deep-color.html

  * igt@kms_color_chamelium@ctm-0-25:
    - shard-apl:          NOTRUN -> [SKIP][88] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@kms_color_chamelium@ctm-0-25.html

  * igt@kms_content_protection@dp-mst-lic-type-0:
    - shard-tglb:         NOTRUN -> [SKIP][89] ([i915#3116] / [i915#3299])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb7/igt@kms_content_protection@dp-mst-lic-type-0.html
    - shard-iclb:         NOTRUN -> [SKIP][90] ([i915#3116])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb5/igt@kms_content_protection@dp-mst-lic-type-0.html

  * igt@kms_content_protection@legacy@pipe-a-dp-1:
    - shard-apl:          NOTRUN -> [TIMEOUT][91] ([i915#7173])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl6/igt@kms_content_protection@legacy@pipe-a-dp-1.html

  * igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
    - shard-tglb:         NOTRUN -> [SKIP][92] ([fdo#109274] / [fdo#111825])
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html

  * igt@kms_dsc@dsc-with-bpc-formats:
    - shard-iclb:         NOTRUN -> [SKIP][93] ([i915#3840])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb6/igt@kms_dsc@dsc-with-bpc-formats.html
    - shard-apl:          NOTRUN -> [SKIP][94] ([fdo#109271] / [i915#7205])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl1/igt@kms_dsc@dsc-with-bpc-formats.html

  * igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible:
    - shard-iclb:         NOTRUN -> [SKIP][95] ([fdo#109274]) +2 similar issues
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
    - shard-tglb:         NOTRUN -> [SKIP][96] ([fdo#109274] / [fdo#111825] / [i915#3637]) +3 similar issues
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-edp1:
    - shard-iclb:         [PASS][97] -> [DMESG-WARN][98] ([i915#2867]) +1 similar issue
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb8/igt@kms_flip@flip-vs-suspend-interruptible@c-edp1.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb5/igt@kms_flip@flip-vs-suspend-interruptible@c-edp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling@pipe-a-valid-mode:
    - shard-tglb:         NOTRUN -> [SKIP][99] ([i915#2587] / [i915#2672])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][100] ([i915#2672]) +3 similar issues
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][101] ([i915#2672] / [i915#3555])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode:
    - shard-iclb:         NOTRUN -> [SKIP][102] ([i915#2587] / [i915#2672]) +3 similar issues
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb5/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-blt:
    - shard-tglb:         NOTRUN -> [SKIP][103] ([i915#6497]) +5 similar issues
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb7/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-msflip-blt:
    - shard-iclb:         NOTRUN -> [SKIP][104] ([fdo#109280]) +13 similar issues
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-wc:
    - shard-tglb:         NOTRUN -> [SKIP][105] ([fdo#109280] / [fdo#111825]) +15 similar issues
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-wc.html

  * igt@kms_hdr@bpc-switch-dpms:
    - shard-tglb:         NOTRUN -> [SKIP][106] ([i915#3555]) +3 similar issues
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_hdr@bpc-switch-dpms.html

  * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-b-edp-1:
    - shard-iclb:         NOTRUN -> [SKIP][107] ([i915#5235]) +2 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-b-edp-1.html

  * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-d-edp-1:
    - shard-tglb:         NOTRUN -> [SKIP][108] ([i915#5235]) +3 similar issues
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-d-edp-1.html

  * igt@kms_psr2_sf@overlay-plane-move-continuous-sf:
    - shard-apl:          NOTRUN -> [SKIP][109] ([fdo#109271] / [i915#658]) +2 similar issues
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl1/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@plane-move-sf-dmg-area:
    - shard-glk:          NOTRUN -> [SKIP][110] ([fdo#109271] / [i915#658])
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk8/igt@kms_psr2_sf@plane-move-sf-dmg-area.html

  * igt@kms_psr2_su@frontbuffer-xrgb8888:
    - shard-tglb:         NOTRUN -> [SKIP][111] ([i915#7037])
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb1/igt@kms_psr2_su@frontbuffer-xrgb8888.html

  * igt@kms_psr@psr2_no_drrs:
    - shard-iclb:         [PASS][112] -> [SKIP][113] ([fdo#109441])
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb6/igt@kms_psr@psr2_no_drrs.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         NOTRUN -> [SKIP][114] ([fdo#109441]) +1 similar issue
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_psr@psr2_sprite_plane_onoff:
    - shard-apl:          NOTRUN -> [SKIP][115] ([fdo#109271]) +147 similar issues
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@kms_psr@psr2_sprite_plane_onoff.html
    - shard-tglb:         NOTRUN -> [FAIL][116] ([i915#132] / [i915#3467]) +2 similar issues
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@kms_psr@psr2_sprite_plane_onoff.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - shard-iclb:         [PASS][117] -> [SKIP][118] ([i915#5519]) +1 similar issue
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb2/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-tglb:         [PASS][119] -> [SKIP][120] ([i915#5519])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-tglb1/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_vblank@pipe-c-query-busy-hang:
    - shard-snb:          NOTRUN -> [SKIP][121] ([fdo#109271]) +89 similar issues
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-snb7/igt@kms_vblank@pipe-c-query-busy-hang.html

  * igt@kms_vblank@pipe-d-wait-idle:
    - shard-iclb:         NOTRUN -> [SKIP][122] ([fdo#109278]) +2 similar issues
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb2/igt@kms_vblank@pipe-d-wait-idle.html
    - shard-apl:          NOTRUN -> [SKIP][123] ([fdo#109271] / [i915#533])
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl2/igt@kms_vblank@pipe-d-wait-idle.html

  * igt@perf_pmu@event-wait@rcs0:
    - shard-iclb:         NOTRUN -> [SKIP][124] ([fdo#112283])
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb6/igt@perf_pmu@event-wait@rcs0.html
    - shard-tglb:         NOTRUN -> [SKIP][125] ([fdo#112283])
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb7/igt@perf_pmu@event-wait@rcs0.html

  * igt@prime_vgem@basic-userptr:
    - shard-tglb:         NOTRUN -> [SKIP][126] ([fdo#109295] / [i915#3301])
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb6/igt@prime_vgem@basic-userptr.html
    - shard-iclb:         NOTRUN -> [SKIP][127] ([fdo#109295] / [i915#3301])
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@prime_vgem@basic-userptr.html

  * igt@sysfs_clients@pidname:
    - shard-glk:          NOTRUN -> [SKIP][128] ([fdo#109271] / [i915#2994]) +1 similar issue
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk8/igt@sysfs_clients@pidname.html

  * igt@sysfs_clients@sema-25:
    - shard-apl:          NOTRUN -> [SKIP][129] ([fdo#109271] / [i915#2994])
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl3/igt@sysfs_clients@sema-25.html

  * igt@v3d/v3d_create_bo@create-bo-4096:
    - shard-iclb:         NOTRUN -> [SKIP][130] ([fdo#109315]) +1 similar issue
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb7/igt@v3d/v3d_create_bo@create-bo-4096.html
    - shard-tglb:         NOTRUN -> [SKIP][131] ([fdo#109315] / [i915#2575]) +1 similar issue
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@v3d/v3d_create_bo@create-bo-4096.html

  
#### Possible fixes ####

  * igt@gem_ctx_persistence@legacy-engines-hang@blt:
    - {shard-rkl}:        [SKIP][132] ([i915#6252]) -> [PASS][133]
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-5/igt@gem_ctx_persistence@legacy-engines-hang@blt.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-2/igt@gem_ctx_persistence@legacy-engines-hang@blt.html

  * igt@gem_ctx_shared@q-promotion@vcs0:
    - {shard-rkl}:        [FAIL][134] ([i915#7672]) -> [PASS][135] +3 similar issues
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-3/igt@gem_ctx_shared@q-promotion@vcs0.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-5/igt@gem_ctx_shared@q-promotion@vcs0.html

  * igt@gem_exec_balancer@parallel-keep-in-fence:
    - shard-iclb:         [SKIP][136] ([i915#4525]) -> [PASS][137] +1 similar issue
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb6/igt@gem_exec_balancer@parallel-keep-in-fence.html
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb2/igt@gem_exec_balancer@parallel-keep-in-fence.html

  * igt@gem_exec_fair@basic-deadline:
    - {shard-rkl}:        [FAIL][138] ([i915#2846]) -> [PASS][139]
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-6/igt@gem_exec_fair@basic-deadline.html
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-3/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - {shard-rkl}:        [FAIL][140] ([i915#2842]) -> [PASS][141]
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@gem_exec_fair@basic-none-share@rcs0.html
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-5/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [FAIL][142] ([i915#2842]) -> [PASS][143] +2 similar issues
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-glk9/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk9/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_reloc@basic-write-read-noreloc:
    - {shard-rkl}:        [SKIP][144] ([i915#3281]) -> [PASS][145] +5 similar issues
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@gem_exec_reloc@basic-write-read-noreloc.html
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-5/igt@gem_exec_reloc@basic-write-read-noreloc.html

  * igt@gem_huc_copy@huc-copy:
    - shard-tglb:         [SKIP][146] ([i915#2190]) -> [PASS][147]
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-tglb6/igt@gem_huc_copy@huc-copy.html
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-tglb2/igt@gem_huc_copy@huc-copy.html

  * igt@gem_mmap_gtt@coherency:
    - {shard-rkl}:        [SKIP][148] ([fdo#111656]) -> [PASS][149]
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@gem_mmap_gtt@coherency.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-5/igt@gem_mmap_gtt@coherency.html

  * igt@gem_partial_pwrite_pread@writes-after-reads:
    - {shard-rkl}:        [SKIP][150] ([i915#3282]) -> [PASS][151] +6 similar issues
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@gem_partial_pwrite_pread@writes-after-reads.html
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-5/igt@gem_partial_pwrite_pread@writes-after-reads.html

  * igt@gen9_exec_parse@basic-rejected-ctx-param:
    - {shard-rkl}:        [SKIP][152] ([i915#2527]) -> [PASS][153]
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@gen9_exec_parse@basic-rejected-ctx-param.html
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-5/igt@gen9_exec_parse@basic-rejected-ctx-param.html

  * igt@i915_pm_rpm@dpms-lpsp:
    - {shard-dg1}:        [SKIP][154] ([i915#1397]) -> [PASS][155] +2 similar issues
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-15/igt@i915_pm_rpm@dpms-lpsp.html
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-14/igt@i915_pm_rpm@dpms-lpsp.html

  * igt@i915_suspend@basic-s2idle-without-i915:
    - {shard-rkl}:        [FAIL][156] ([fdo#103375]) -> [PASS][157] +1 similar issue
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-4/igt@i915_suspend@basic-s2idle-without-i915.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-2/igt@i915_suspend@basic-s2idle-without-i915.html

  * igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][158] ([i915#1845] / [i915#4098]) -> [PASS][159] +21 similar issues
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-dp1:
    - shard-apl:          [DMESG-WARN][160] ([i915#180]) -> [PASS][161]
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl2/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-default-mode:
    - shard-iclb:         [SKIP][162] ([i915#3555]) -> [PASS][163]
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-default-mode.html
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-default-mode.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
    - {shard-rkl}:        [SKIP][164] ([i915#1849] / [i915#4098]) -> [PASS][165] +13 similar issues
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html

  * igt@kms_plane@pixel-format@pipe-b-planes:
    - {shard-rkl}:        [SKIP][166] ([i915#3558]) -> [PASS][167] +1 similar issue
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-1/igt@kms_plane@pixel-format@pipe-b-planes.html
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_plane@pixel-format@pipe-b-planes.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1:
    - shard-iclb:         [SKIP][168] ([i915#5235]) -> [PASS][169] +2 similar issues
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb2/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1.html
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1.html

  * igt@kms_psr@cursor_plane_move:
    - {shard-rkl}:        [SKIP][170] ([i915#1072]) -> [PASS][171]
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-4/igt@kms_psr@cursor_plane_move.html
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_psr@cursor_plane_move.html

  * igt@kms_psr@psr2_primary_render:
    - shard-iclb:         [SKIP][172] ([fdo#109441]) -> [PASS][173]
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb7/igt@kms_psr@psr2_primary_render.html
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb2/igt@kms_psr@psr2_primary_render.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - {shard-rkl}:        [SKIP][174] ([i915#5461]) -> [PASS][175]
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-3/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-a:
    - {shard-rkl}:        [SKIP][176] ([i915#4098]) -> [PASS][177]
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-3/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-a.html
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-a.html

  * igt@perf@gen12-mi-rpc:
    - {shard-rkl}:        [SKIP][178] ([fdo#109289]) -> [PASS][179]
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-5/igt@perf@gen12-mi-rpc.html
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@perf@gen12-mi-rpc.html

  * igt@perf@stress-open-close:
    - shard-glk:          [INCOMPLETE][180] ([i915#5213]) -> [PASS][181]
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-glk9/igt@perf@stress-open-close.html
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-glk7/igt@perf@stress-open-close.html

  * igt@prime_vgem@basic-fence-flip:
    - {shard-rkl}:        [SKIP][182] ([fdo#109295] / [i915#3708] / [i915#4098]) -> [PASS][183]
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-rkl-4/igt@prime_vgem@basic-fence-flip.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-rkl-6/igt@prime_vgem@basic-fence-flip.html

  * igt@syncobj_wait@reset-during-wait-for-submit:
    - {shard-dg1}:        [DMESG-WARN][184] ([i915#1982]) -> [PASS][185]
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-15/igt@syncobj_wait@reset-during-wait-for-submit.html
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-15/igt@syncobj_wait@reset-during-wait-for-submit.html

  * igt@sysfs_heartbeat_interval@precise@vcs0:
    - {shard-dg1}:        [FAIL][186] ([i915#1755]) -> [PASS][187] +1 similar issue
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-dg1-15/igt@sysfs_heartbeat_interval@precise@vcs0.html
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-dg1-17/igt@sysfs_heartbeat_interval@precise@vcs0.html

  
#### Warnings ####

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-iclb:         [SKIP][188] ([i915#4525]) -> [FAIL][189] ([i915#6117])
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb5/igt@gem_exec_balancer@parallel-ordering.html
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb1/igt@gem_exec_balancer@parallel-ordering.html

  * igt@i915_pm_dc@dc3co-vpb-simulation:
    - shard-iclb:         [SKIP][190] ([i915#658]) -> [SKIP][191] ([i915#588])
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb3/igt@i915_pm_dc@dc3co-vpb-simulation.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html

  * igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
    - shard-iclb:         [SKIP][192] ([fdo#109278] / [i915#3886]) -> [SKIP][193] ([i915#3886]) +49 similar issues
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb8/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb6/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1:
    - shard-apl:          [FAIL][194] ([i915#4573]) -> [DMESG-FAIL][195] ([IGT#6]) +1 similar issue
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-apl1/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl2/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html

  * igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf:
    - shard-iclb:         [SKIP][196] ([i915#2920]) -> [SKIP][197] ([i915#658])
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb2/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf.html
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@overlay-plane-update-continuous-sf:
    - shard-iclb:         [SKIP][198] ([i915#2920]) -> [SKIP][199] ([fdo#111068] / [i915#658]) +1 similar issue
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-iclb2/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-iclb8/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html

  * igt@runner@aborted:
    - shard-apl:          ([FAIL][200], [FAIL][201], [FAIL][202], [FAIL][203]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312]) -> ([FAIL][204], [FAIL][205], [FAIL][206]) ([fdo#109271] / [i915#3002] / [i915#4312])
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-apl3/igt@runner@aborted.html
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-apl8/igt@runner@aborted.html
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-apl1/igt@runner@aborted.html
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12509/shard-apl2/igt@runner@aborted.html
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl8/igt@runner@aborted.html
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl8/igt@runner@aborted.html
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/shard-apl6/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109293]: https://bugs.freedesktop.org/show_bug.cgi?id=109293
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2232]: https://gitlab.freedesktop.org/drm/intel/issues/2232
  [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#315]: https://gitlab.freedesktop.org/drm/intel/issues/315
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
  [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966
  [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5213]: https://gitlab.freedesktop.org/drm/intel/issues/5213
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5591]: https://gitlab.freedesktop.org/drm/intel/issues/5591
  [i915#5639]: https://gitlab.freedesktop.org/drm/intel/issues/5639
  [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
  [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
  [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
  [i915#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#7173]: https://gitlab.freedesktop.org/drm/intel/issues/7173
  [i915#7205]: https://gitlab.freedesktop.org/drm/intel/issues/7205
  [i915#7276]: https://gitlab.freedesktop.org/drm/intel/issues/7276
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7582]: https://gitlab.freedesktop.org/drm/intel/issues/7582
  [i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
  [i915#7672]: https://gitlab.freedesktop.org/drm/intel/issues/7672
  [i915#7673]: https://gitlab.freedesktop.org/drm/intel/issues/7673
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7094 -> IGTPW_8238
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_12509: cc06f383ddbda197909a44d98ff003298aa2f2aa @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8238: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8238/index.html
  IGT_7094: 1763071e9d50c5e992257c9197cb26f166de6fae @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

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

* [igt-dev] [i-g-t v6 03/52] tests/kms_async_flips: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner Bhanuprakash Modem
@ 2022-12-23  6:29   ` Bhanuprakash Modem
  2022-12-23  8:05     ` Karthik B S
  0 siblings, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-12-23  6:29 UTC (permalink / raw)
  To: igt-dev, karthik.b.s

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name
V3: - Drop unrelated changes

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_async_flips.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c
index 7cb71f6b..e32ae914 100644
--- a/tests/kms_async_flips.c
+++ b/tests/kms_async_flips.c
@@ -542,9 +542,16 @@ static void run_test(data_t *data, void (*test)(data_t *))
 {
 	igt_output_t *output;
 	enum pipe pipe;
+	igt_display_t *display = &data->display;
+
+	for_each_pipe(display, pipe) {
+		for_each_valid_output_on_pipe(display, pipe, output) {
+			igt_display_reset(display);
+
+			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(display))
+				continue;
 
-	for_each_pipe(&data->display, pipe) {
-		for_each_valid_output_on_pipe(&data->display, pipe, output) {
 			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
 				data->output = output;
 				data->pipe = pipe;
-- 
2.39.0

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

* [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev11)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (55 preceding siblings ...)
  2022-12-16 13:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
@ 2022-12-23  7:12 ` Patchwork
  2022-12-23  9:29 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev12) Patchwork
                   ` (2 subsequent siblings)
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-12-23  7:12 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev11)
URL   : https://patchwork.freedesktop.org/series/108183/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12524 -> IGTPW_8267
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (45 -> 46)
------------------------------

  Additional (1): bat-atsm-1 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@mman:
    - fi-rkl-guc:         [PASS][1] -> [TIMEOUT][2] ([i915#6794])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-rkl-guc/igt@i915_selftest@live@mman.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/fi-rkl-guc/igt@i915_selftest@live@mman.html

  
#### Possible fixes ####

  * igt@gem_exec_gttfill@basic:
    - fi-pnv-d510:        [FAIL][3] ([i915#7229]) -> [PASS][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-pnv-d510/igt@gem_exec_gttfill@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/fi-pnv-d510/igt@gem_exec_gttfill@basic.html

  * igt@i915_selftest@live@migrate:
    - bat-adlp-4:         [DMESG-FAIL][5] ([i915#7699]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-adlp-4/igt@i915_selftest@live@migrate.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/bat-adlp-4/igt@i915_selftest@live@migrate.html

  * igt@i915_selftest@live@mman:
    - {bat-rpls-1}:       [TIMEOUT][7] ([i915#6794]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-rpls-1/igt@i915_selftest@live@mman.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/bat-rpls-1/igt@i915_selftest@live@mman.html

  * igt@i915_selftest@live@workarounds:
    - {bat-rpls-1}:       [DMESG-WARN][9] -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-rpls-1/igt@i915_selftest@live@workarounds.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/bat-rpls-1/igt@i915_selftest@live@workarounds.html

  * igt@kms_busy@basic@flip:
    - fi-bsw-n3050:       [SKIP][11] ([fdo#109271]) -> [PASS][12] +1 similar issue
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-bsw-n3050/igt@kms_busy@basic@flip.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/fi-bsw-n3050/igt@kms_busy@basic@flip.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#6077]: https://gitlab.freedesktop.org/drm/intel/issues/6077
  [i915#6078]: https://gitlab.freedesktop.org/drm/intel/issues/6078
  [i915#6093]: https://gitlab.freedesktop.org/drm/intel/issues/6093
  [i915#6094]: https://gitlab.freedesktop.org/drm/intel/issues/6094
  [i915#6166]: https://gitlab.freedesktop.org/drm/intel/issues/6166
  [i915#6311]: https://gitlab.freedesktop.org/drm/intel/issues/6311
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#6794]: https://gitlab.freedesktop.org/drm/intel/issues/6794
  [i915#7229]: https://gitlab.freedesktop.org/drm/intel/issues/7229
  [i915#7357]: https://gitlab.freedesktop.org/drm/intel/issues/7357
  [i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7102 -> IGTPW_8267

  CI-20190529: 20190529
  CI_DRM_12524: a29956c69a562e85ef8657e39382bc207a339941 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8267: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/index.html
  IGT_7102: bacfdc84a9c02556c5441deb21e3a3f18a07347d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* Re: [igt-dev] [i-g-t v6 03/52] tests/kms_async_flips: Add support for Bigjoiner
  2022-12-23  6:29   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
@ 2022-12-23  8:05     ` Karthik B S
  0 siblings, 0 replies; 94+ messages in thread
From: Karthik B S @ 2022-12-23  8:05 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev


On 12/23/2022 11:59 AM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
>
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>
> V2: - Use updated helper name
> V3: - Drop unrelated changes
>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
> ---
>   tests/kms_async_flips.c | 11 +++++++++--
>   1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c
> index 7cb71f6b..e32ae914 100644
> --- a/tests/kms_async_flips.c
> +++ b/tests/kms_async_flips.c
> @@ -542,9 +542,16 @@ static void run_test(data_t *data, void (*test)(data_t *))
>   {
>   	igt_output_t *output;
>   	enum pipe pipe;
> +	igt_display_t *display = &data->display;
> +
> +	for_each_pipe(display, pipe) {
> +		for_each_valid_output_on_pipe(display, pipe, output) {
> +			igt_display_reset(display);
> +
> +			igt_output_set_pipe(output, pipe);
> +			if (!i915_pipe_output_combo_valid(display))
> +				continue;
>   
> -	for_each_pipe(&data->display, pipe) {
> -		for_each_valid_output_on_pipe(&data->display, pipe, output) {
>   			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
>   				data->output = output;
>   				data->pipe = pipe;

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

* Re: [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: " Bhanuprakash Modem
@ 2022-12-23  8:06   ` B, Jeevan
  0 siblings, 0 replies; 94+ messages in thread
From: B, Jeevan @ 2022-12-23  8:06 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev

LGTM 

Reviewed-by: Jeevan B <jeevan.b@intel.com>

> -----Original Message-----
> From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of
> Bhanuprakash Modem
> Sent: Tuesday, November 15, 2022 10:39 PM
> To: igt-dev@lists.freedesktop.org
> Subject: [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: Add support for
> Bigjoiner
> 
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>  tests/i915/kms_big_fb.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
> 0beba0e1..a29a05a2 100644
> --- a/tests/i915/kms_big_fb.c
> +++ b/tests/i915/kms_big_fb.c
> @@ -406,6 +406,9 @@ static bool test_pipe(data_t *data)
>  	igt_plane_t *primary;
>  	bool ret = false;
> 
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(data->pipe), igt_output_name(data-
> >output));
> +
>  	if (data->format == DRM_FORMAT_C8 &&
>  	    !igt_pipe_obj_has_prop(&data->display.pipes[data->pipe],
>  				   IGT_CRTC_GAMMA_LUT))
> @@ -481,6 +484,10 @@ max_hw_stride_async_flip_test(data_t *data)
>  	igt_crc_t compare_crc, async_crc;
> 
>  	igt_require(data->display.is_atomic);
> +
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(data->pipe), igt_output_name(data-
> >output));
> +
>  	igt_output_set_pipe(data->output, data->pipe);
> 
>  	primary = igt_output_get_plane_type(data->output,
> DRM_PLANE_TYPE_PRIMARY); @@ -592,6 +599,12 @@ static void
> test_scanout(data_t *data)
>  		    data->format, data->modifier);
> 
>  	for_each_pipe_with_valid_output(&data->display, data->pipe, data-
> >output) {
> +		igt_display_reset(&data->display);
> +
> +		igt_output_set_pipe(data->output, data->pipe);
> +		if (!i915_pipe_output_combo_valid(&data->display))
> +			continue;
> +
>  		if (data->async_flip_test) {
>  			if (max_hw_stride_async_flip_test(data))
>  				return;
> --
> 2.38.0

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

* Re: [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
@ 2022-12-23  8:11   ` B, Jeevan
  2022-12-23  8:36     ` Modem, Bhanuprakash
  2022-12-23  8:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
  1 sibling, 1 reply; 94+ messages in thread
From: B, Jeevan @ 2022-12-23  8:11 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev



> -----Original Message-----
> From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of
> Bhanuprakash Modem
> Sent: Tuesday, November 15, 2022 10:39 PM
> To: igt-dev@lists.freedesktop.org
> Subject: [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: Add support for
> Bigjoiner
> 
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>  tests/i915/kms_flip_tiling.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/tests/i915/kms_flip_tiling.c b/tests/i915/kms_flip_tiling.c index
> 1183feb6..2e2b9511 100644
> --- a/tests/i915/kms_flip_tiling.c
> +++ b/tests/i915/kms_flip_tiling.c
> @@ -79,6 +79,9 @@ test_flip_tiling(data_t *data, enum pipe pipe,
> igt_output_t *output, uint64_t mo
>  	igt_crc_t reference_crc, crc;
>  	int fb_id, ret;
> 
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +

Is igt_info required here ?? 
igt_dynamic_f has the info already. 
 
>  	memcpy(&data->old_fb, &data->fb, sizeof(data->fb));
> 
>  	mode = igt_output_get_mode(output);
> @@ -195,8 +198,12 @@ igt_main
>  		for_each_pipe_with_valid_output(&data.display, pipe,
> output) {
>  			igt_plane_t *plane;
> 
> +			igt_display_reset(&data.display);
>  			pipe_crc_free(&data);
> +
>  			igt_output_set_pipe(output, pipe);
> +			if (!i915_pipe_output_combo_valid(&data.display))
> +				continue;
> 
>  			plane = igt_output_get_plane_type(output,
> DRM_PLANE_TYPE_PRIMARY);
> 
> --
> 2.38.0

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

* Re: [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: " Bhanuprakash Modem
@ 2022-12-23  8:23   ` B, Jeevan
  0 siblings, 0 replies; 94+ messages in thread
From: B, Jeevan @ 2022-12-23  8:23 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev

LGTM

Reviewed-by: Jeevan B <jeevan.b@intel.com>

> -----Original Message-----
> From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of
> Bhanuprakash Modem
> Sent: Tuesday, November 15, 2022 10:39 PM
> To: igt-dev@lists.freedesktop.org
> Subject: [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: Add support for
> Bigjoiner
> 
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>  tests/kms_rotation_crc.c | 25 ++++++++++++++++++++++++-
>  1 file changed, 24 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c index
> 72c20d5a..295aed76 100644
> --- a/tests/kms_rotation_crc.c
> +++ b/tests/kms_rotation_crc.c
> @@ -215,6 +215,8 @@ static void prepare_crtc(data_t *data, igt_output_t
> *output, enum pipe pipe,
>  	cleanup_crtc(data);
> 
>  	igt_output_set_pipe(output, pipe);
> +	igt_require(i915_pipe_output_combo_valid(display));
> +
>  	igt_plane_set_rotation(plane, IGT_ROTATION_0);
> 
>  	/* create the pipe_crc object for this pipe */ @@ -479,6 +481,7 @@
> static void test_plane_rotation(data_t *data, int plane_type, bool
> test_bad_form
>  	igt_output_t *output;
>  	enum pipe pipe;
>  	int pipe_count = 0, connected_outputs = 0;
> +	bool found = false;
> 
>  	if (is_amdgpu_device(data->gfx_fd))
>  		igt_require(plane_type != DRM_PLANE_TYPE_OVERLAY &&
> @@ -496,6 +499,13 @@ static void test_plane_rotation(data_t *data, int
> plane_type, bool test_bad_form
>  		igt_plane_t *plane;
>  		int i, j, c;
> 
> +		igt_display_reset(display);
> +
> +		igt_output_set_pipe(output, pipe);
> +		if (!i915_pipe_output_combo_valid(display))
> +			continue;
> +
> +		found = true;
>  		mode = igt_output_get_mode(output);
> 
>  		/*
> @@ -586,6 +596,7 @@ static void test_plane_rotation(data_t *data, int
> plane_type, bool test_bad_form
>  			igt_pipe_crc_stop(data->pipe_crc);
>  		}
>  	}
> +	igt_require_f(found, "No valid pipe/output combo found.\n");
>  }
> 
>  typedef struct {
> @@ -804,12 +815,22 @@ static void test_multi_plane_rotation(data_t
> *data, enum pipe pipe)
>  		{IGT_ROTATION_270, .2f, .4f, I915_FORMAT_MOD_Y_TILED },
>  		{IGT_ROTATION_270, .2f, .4f, I915_FORMAT_MOD_Yf_TILED },
>  	};
> +	bool found = false;
> +
> +	igt_display_require_output(display);
> 
>  	for_each_valid_output_on_pipe(display, pipe, output) {
>  		int i, j, k, l, flipsw, fliphw;
> +
> +		igt_display_reset(display);
> +
>  		igt_output_set_pipe(output, pipe);
> +		if (!i915_pipe_output_combo_valid(display))
> +			continue;
> +
> +		found = true;
> +
>  		mode = igt_output_get_mode(output);
> -		igt_display_require_output(display);
>  		igt_display_commit2(display, COMMIT_ATOMIC);
> 
>  		p[0].plane = igt_output_get_plane_type(output,
> DRM_PLANE_TYPE_PRIMARY); @@ -952,6 +973,8 @@ static void
> test_multi_plane_rotation(data_t *data, enum pipe pipe)
>  			igt_remove_fb(data->gfx_fd,
> &planeconfigs[c].fbs[d][MULTIPLANE_ROTATED]);
>  		}
>  	}
> +
> +	igt_require_f(found, "No valid pipe/output combo found.\n");
>  }
> 
>  static void test_plane_rotation_exhaust_fences(data_t *data,
> --
> 2.38.0

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

* Re: [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: " Bhanuprakash Modem
@ 2022-12-23  8:27   ` Karthik B S
  0 siblings, 0 replies; 94+ messages in thread
From: Karthik B S @ 2022-12-23  8:27 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev


On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
>
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>
> V2: - Use updated helper name
>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
> ---
>   tests/i915/kms_ccs.c | 18 +++++++++++++-----
>   1 file changed, 13 insertions(+), 5 deletions(-)
>
> diff --git a/tests/i915/kms_ccs.c b/tests/i915/kms_ccs.c
> index 9be3fa25..40f05278 100644
> --- a/tests/i915/kms_ccs.c
> +++ b/tests/i915/kms_ccs.c
> @@ -590,12 +590,21 @@ static int test_ccs(data_t *data)
>   static void test_output(data_t *data, const int testnum)
>   {
>   	igt_fixture {
> +		bool found = false;
> +
>   		data->flags = tests[testnum].flags;
>   
> -		data->output = igt_get_single_output_for_pipe(&data->display,
> -							      data->pipe);
> -		igt_require(data->output);
> -		igt_output_set_pipe(data->output, data->pipe);
> +		for_each_valid_output_on_pipe(&data->display, data->pipe, data->output) {
> +			igt_display_reset(&data->display);
> +
> +			igt_output_set_pipe(data->output, data->pipe);
> +			if (i915_pipe_output_combo_valid(&data->display)) {
> +				found = true;
> +				break;
> +			}
> +
> +		}
> +		igt_require_f(found, "No valid pipe/output combo found.\n");
>   	}
>   
>   	for (int i = 0; i < ARRAY_SIZE(ccs_modifiers); i++) {
> @@ -611,7 +620,6 @@ static void test_output(data_t *data, const int testnum)
>   		igt_subtest_f("pipe-%s-%s-%s", kmstest_pipe_name(data->pipe),
>   			      tests[testnum].testname, ccs_modifiers[i].str) {
>   			int valid_tests = 0;
> -			igt_require(data->output);
>   
>   			if (data->flags == TEST_RANDOM)
>   				igt_info("Testing with seed %d\n", data->seed);

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

* Re: [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: Add support for Bigjoiner
  2022-12-23  8:11   ` B, Jeevan
@ 2022-12-23  8:36     ` Modem, Bhanuprakash
  0 siblings, 0 replies; 94+ messages in thread
From: Modem, Bhanuprakash @ 2022-12-23  8:36 UTC (permalink / raw)
  To: B, Jeevan, igt-dev

On Fri-23-12-2022 01:41 pm, B, Jeevan wrote:
> 
> 
>> -----Original Message-----
>> From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of
>> Bhanuprakash Modem
>> Sent: Tuesday, November 15, 2022 10:39 PM
>> To: igt-dev@lists.freedesktop.org
>> Subject: [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: Add support for
>> Bigjoiner
>>
>> This patch will add a check to Skip the subtest if a selected pipe/output
>> combo won't support Bigjoiner or 8K mode.
>>
>> Example:
>> * Pipe-D wont support a mode > 5K
>> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>>
>> V2: - Use updated helper name
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>> ---
>>   tests/i915/kms_flip_tiling.c | 7 +++++++
>>   1 file changed, 7 insertions(+)
>>
>> diff --git a/tests/i915/kms_flip_tiling.c b/tests/i915/kms_flip_tiling.c index
>> 1183feb6..2e2b9511 100644
>> --- a/tests/i915/kms_flip_tiling.c
>> +++ b/tests/i915/kms_flip_tiling.c
>> @@ -79,6 +79,9 @@ test_flip_tiling(data_t *data, enum pipe pipe,
>> igt_output_t *output, uint64_t mo
>>   	igt_crc_t reference_crc, crc;
>>   	int fb_id, ret;
>>
>> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
>> +		 kmstest_pipe_name(pipe), igt_output_name(output));
>> +
> 
> Is igt_info required here ??
> igt_dynamic_f has the info already.

Will float a new rev by removing this print.

- Bhanu

>   
>>   	memcpy(&data->old_fb, &data->fb, sizeof(data->fb));
>>
>>   	mode = igt_output_get_mode(output);
>> @@ -195,8 +198,12 @@ igt_main
>>   		for_each_pipe_with_valid_output(&data.display, pipe,
>> output) {
>>   			igt_plane_t *plane;
>>
>> +			igt_display_reset(&data.display);
>>   			pipe_crc_free(&data);
>> +
>>   			igt_output_set_pipe(output, pipe);
>> +			if (!i915_pipe_output_combo_valid(&data.display))
>> +				continue;
>>
>>   			plane = igt_output_get_plane_type(output,
>> DRM_PLANE_TYPE_PRIMARY);
>>
>> --
>> 2.38.0
> 

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

* [igt-dev] [i-g-t v6 45/52] tests/i915/kms_flip_tiling: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
  2022-12-23  8:11   ` B, Jeevan
@ 2022-12-23  8:40   ` Bhanuprakash Modem
  2022-12-26  6:09     ` B, Jeevan
  1 sibling, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-12-23  8:40 UTC (permalink / raw)
  To: igt-dev, jeevan.b

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name
V3: - Remove unwanted prints

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_flip_tiling.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tests/i915/kms_flip_tiling.c b/tests/i915/kms_flip_tiling.c
index 1183feb6..4cc063f6 100644
--- a/tests/i915/kms_flip_tiling.c
+++ b/tests/i915/kms_flip_tiling.c
@@ -195,8 +195,12 @@ igt_main
 		for_each_pipe_with_valid_output(&data.display, pipe, output) {
 			igt_plane_t *plane;
 
+			igt_display_reset(&data.display);
 			pipe_crc_free(&data);
+
 			igt_output_set_pipe(output, pipe);
+			if (!i915_pipe_output_combo_valid(&data.display))
+				continue;
 
 			plane = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
 
-- 
2.39.0

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

* [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev12)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (56 preceding siblings ...)
  2022-12-23  7:12 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev11) Patchwork
@ 2022-12-23  9:29 ` Patchwork
  2022-12-23 10:37 ` [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev11) Patchwork
  2022-12-23 11:01 ` [igt-dev] ✓ Fi.CI.IGT: success for Add IGT support for Bigjoiner (rev12) Patchwork
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-12-23  9:29 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev12)
URL   : https://patchwork.freedesktop.org/series/108183/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12524 -> IGTPW_8268
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (45 -> 46)
------------------------------

  Additional (1): bat-atsm-1 

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

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

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@gem_exec_suspend@basic-s3@smem:
    - {bat-dg2-oem1}:     [DMESG-WARN][1] ([i915#5763]) -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-dg2-oem1/igt@gem_exec_suspend@basic-s3@smem.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/bat-dg2-oem1/igt@gem_exec_suspend@basic-s3@smem.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-kbl-soraka:      [PASS][3] -> [DMESG-FAIL][4] ([i915#5334])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@late_gt_pm:
    - fi-kbl-soraka:      [PASS][5] -> [INCOMPLETE][6] ([i915#7640])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-kbl-soraka/igt@i915_selftest@live@late_gt_pm.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/fi-kbl-soraka/igt@i915_selftest@live@late_gt_pm.html

  
#### Possible fixes ####

  * igt@gem_exec_gttfill@basic:
    - fi-pnv-d510:        [FAIL][7] ([i915#7229]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-pnv-d510/igt@gem_exec_gttfill@basic.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/fi-pnv-d510/igt@gem_exec_gttfill@basic.html

  * igt@i915_selftest@live@migrate:
    - bat-adlp-4:         [DMESG-FAIL][9] ([i915#7699]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-adlp-4/igt@i915_selftest@live@migrate.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/bat-adlp-4/igt@i915_selftest@live@migrate.html

  * igt@i915_selftest@live@mman:
    - {bat-rpls-1}:       [TIMEOUT][11] ([i915#6794]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-rpls-1/igt@i915_selftest@live@mman.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/bat-rpls-1/igt@i915_selftest@live@mman.html

  * igt@i915_selftest@live@workarounds:
    - {bat-rpls-1}:       [DMESG-WARN][13] -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/bat-rpls-1/igt@i915_selftest@live@workarounds.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/bat-rpls-1/igt@i915_selftest@live@workarounds.html

  * igt@kms_busy@basic@flip:
    - fi-bsw-n3050:       [SKIP][15] ([fdo#109271]) -> [PASS][16] +1 similar issue
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/fi-bsw-n3050/igt@kms_busy@basic@flip.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/fi-bsw-n3050/igt@kms_busy@basic@flip.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
  [i915#6077]: https://gitlab.freedesktop.org/drm/intel/issues/6077
  [i915#6078]: https://gitlab.freedesktop.org/drm/intel/issues/6078
  [i915#6093]: https://gitlab.freedesktop.org/drm/intel/issues/6093
  [i915#6094]: https://gitlab.freedesktop.org/drm/intel/issues/6094
  [i915#6166]: https://gitlab.freedesktop.org/drm/intel/issues/6166
  [i915#6311]: https://gitlab.freedesktop.org/drm/intel/issues/6311
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#6794]: https://gitlab.freedesktop.org/drm/intel/issues/6794
  [i915#6997]: https://gitlab.freedesktop.org/drm/intel/issues/6997
  [i915#7229]: https://gitlab.freedesktop.org/drm/intel/issues/7229
  [i915#7357]: https://gitlab.freedesktop.org/drm/intel/issues/7357
  [i915#7640]: https://gitlab.freedesktop.org/drm/intel/issues/7640
  [i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7102 -> IGTPW_8268

  CI-20190529: 20190529
  CI_DRM_12524: a29956c69a562e85ef8657e39382bc207a339941 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8268: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/index.html
  IGT_7102: bacfdc84a9c02556c5441deb21e3a3f18a07347d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev11)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (57 preceding siblings ...)
  2022-12-23  9:29 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev12) Patchwork
@ 2022-12-23 10:37 ` Patchwork
  2022-12-23 11:01 ` [igt-dev] ✓ Fi.CI.IGT: success for Add IGT support for Bigjoiner (rev12) Patchwork
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-12-23 10:37 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev11)
URL   : https://patchwork.freedesktop.org/series/108183/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_12524_full -> IGTPW_8267_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_8267_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_8267_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

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

Participating hosts (13 -> 10)
------------------------------

  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_plane_scaling@plane-upscale-with-modifiers-20x20@pipe-a-dp-1:
    - shard-apl:          [PASS][1] -> [DMESG-WARN][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl7/igt@kms_plane_scaling@plane-upscale-with-modifiers-20x20@pipe-a-dp-1.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl3/igt@kms_plane_scaling@plane-upscale-with-modifiers-20x20@pipe-a-dp-1.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_ccs@pipe-c-missing-ccs-buffer-y_tiled_gen12_mc_ccs:
    - {shard-rkl}:        [SKIP][3] ([i915#4070] / [i915#6768]) -> [SKIP][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-6/igt@kms_ccs@pipe-c-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_ccs@pipe-c-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][5] ([i915#4070] / [i915#533] / [i915#6768]) -> [SKIP][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-6/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        NOTRUN -> [SKIP][7] +7 similar issues
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_ccs@pipe-d-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs:
    - {shard-rkl}:        [SKIP][8] ([i915#4098]) -> [SKIP][9] +5 similar issues
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs.html

  * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs:
    - {shard-rkl}:        [SKIP][10] ([i915#1845] / [i915#4098]) -> [SKIP][11] +6 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs.html

  * igt@kms_display_modes@extended-mode-basic:
    - {shard-dg1}:        NOTRUN -> [SKIP][12]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-dg1-17/igt@kms_display_modes@extended-mode-basic.html

  * igt@kms_plane@pixel-format:
    - {shard-tglu}:       NOTRUN -> [SKIP][13]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-tglu-6/igt@kms_plane@pixel-format.html

  * igt@kms_plane@plane-position-covered@pipe-a-planes:
    - {shard-dg1}:        [PASS][14] -> [FAIL][15] +1 similar issue
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-dg1-14/igt@kms_plane@plane-position-covered@pipe-a-planes.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-dg1-18/igt@kms_plane@plane-position-covered@pipe-a-planes.html

  * igt@kms_universal_plane@universal-plane-pipe-c-functional:
    - {shard-tglu-9}:     NOTRUN -> [SKIP][16] +3 similar issues
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-tglu-9/igt@kms_universal_plane@universal-plane-pipe-c-functional.html

  
New tests
---------

  New tests have been introduced between CI_DRM_12524_full and IGTPW_8267_full:

### New IGT tests (12) ###

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_close_race@multigpu-basic-process:
    - shard-apl:          NOTRUN -> [SKIP][17] ([fdo#109271]) +97 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl2/igt@gem_close_race@multigpu-basic-process.html

  * igt@gem_ctx_persistence@legacy-engines-hostile-preempt:
    - shard-snb:          NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#1099]) +1 similar issue
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-snb5/igt@gem_ctx_persistence@legacy-engines-hostile-preempt.html

  * igt@gem_exec_fair@basic-throttle@rcs0:
    - shard-glk:          [PASS][19] -> [FAIL][20] ([i915#2842]) +7 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-glk5/igt@gem_exec_fair@basic-throttle@rcs0.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk6/igt@gem_exec_fair@basic-throttle@rcs0.html

  * igt@gem_lmem_swapping@parallel-random-engines:
    - shard-apl:          NOTRUN -> [SKIP][21] ([fdo#109271] / [i915#4613])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl3/igt@gem_lmem_swapping@parallel-random-engines.html
    - shard-glk:          NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#4613])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk8/igt@gem_lmem_swapping@parallel-random-engines.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-uncached:
    - shard-apl:          [PASS][23] -> [INCOMPLETE][24] ([i915#7708]) +1 similar issue
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl7/igt@gem_partial_pwrite_pread@writes-after-reads-uncached.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl3/igt@gem_partial_pwrite_pread@writes-after-reads-uncached.html

  * igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs:
    - shard-glk:          NOTRUN -> [SKIP][25] ([fdo#109271] / [i915#3886]) +1 similar issue
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk9/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][26] ([fdo#109271] / [i915#3886]) +2 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl1/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - shard-glk:          NOTRUN -> [SKIP][27] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk2/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_color_chamelium@ctm-negative:
    - shard-apl:          NOTRUN -> [SKIP][28] ([fdo#109271] / [fdo#111827]) +5 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl1/igt@kms_color_chamelium@ctm-negative.html
    - shard-snb:          NOTRUN -> [SKIP][29] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-snb7/igt@kms_color_chamelium@ctm-negative.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
    - shard-glk:          [PASS][30] -> [FAIL][31] ([i915#72])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-glk8/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk9/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-glk:          NOTRUN -> [SKIP][32] ([fdo#109271]) +74 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk3/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_psr2_sf@cursor-plane-update-sf:
    - shard-apl:          NOTRUN -> [SKIP][33] ([fdo#109271] / [i915#658])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl6/igt@kms_psr2_sf@cursor-plane-update-sf.html
    - shard-glk:          NOTRUN -> [SKIP][34] ([fdo#109271] / [i915#658])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk7/igt@kms_psr2_sf@cursor-plane-update-sf.html

  * igt@kms_rotation_crc@sprite-rotation-270:
    - shard-snb:          NOTRUN -> [SKIP][35] ([fdo#109271]) +125 similar issues
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-snb2/igt@kms_rotation_crc@sprite-rotation-270.html

  * igt@kms_vblank@pipe-d-wait-idle:
    - shard-apl:          NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#533])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl7/igt@kms_vblank@pipe-d-wait-idle.html
    - shard-glk:          NOTRUN -> [SKIP][37] ([fdo#109271] / [i915#533])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk8/igt@kms_vblank@pipe-d-wait-idle.html

  * igt@sysfs_clients@fair-1:
    - shard-apl:          NOTRUN -> [SKIP][38] ([fdo#109271] / [i915#2994]) +1 similar issue
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl7/igt@sysfs_clients@fair-1.html

  * igt@sysfs_clients@sema-10:
    - shard-glk:          NOTRUN -> [SKIP][39] ([fdo#109271] / [i915#2994]) +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk9/igt@sysfs_clients@sema-10.html

  
#### Possible fixes ####

  * igt@api_intel_bb@object-reloc-keep-cache:
    - {shard-rkl}:        [SKIP][40] ([i915#3281]) -> [PASS][41] +7 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@api_intel_bb@object-reloc-keep-cache.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-5/igt@api_intel_bb@object-reloc-keep-cache.html

  * igt@drm_read@short-buffer-block:
    - {shard-rkl}:        [SKIP][42] ([i915#4098]) -> [PASS][43]
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@drm_read@short-buffer-block.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@drm_read@short-buffer-block.html

  * igt@fbdev@read:
    - {shard-rkl}:        [SKIP][44] ([i915#2582]) -> [PASS][45]
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@fbdev@read.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@fbdev@read.html

  * igt@gem_ctx_persistence@engines-hang@bcs0:
    - {shard-rkl}:        [SKIP][46] ([i915#6252]) -> [PASS][47]
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@gem_ctx_persistence@engines-hang@bcs0.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-1/igt@gem_ctx_persistence@engines-hang@bcs0.html

  * igt@gem_exec_fair@basic-none-rrul@rcs0:
    - {shard-rkl}:        [FAIL][48] ([i915#2842]) -> [PASS][49]
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@gem_exec_fair@basic-none-rrul@rcs0.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-5/igt@gem_exec_fair@basic-none-rrul@rcs0.html

  * igt@gem_exec_fair@basic-pace-solo@rcs0:
    - shard-apl:          [FAIL][50] ([i915#2842]) -> [PASS][51]
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl7/igt@gem_exec_fair@basic-pace-solo@rcs0.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl6/igt@gem_exec_fair@basic-pace-solo@rcs0.html

  * igt@gem_partial_pwrite_pread@writes-after-reads:
    - shard-apl:          [INCOMPLETE][52] -> [PASS][53]
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl3/igt@gem_partial_pwrite_pread@writes-after-reads.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl7/igt@gem_partial_pwrite_pread@writes-after-reads.html

  * igt@gem_readwrite@write-bad-handle:
    - {shard-rkl}:        [SKIP][54] ([i915#3282]) -> [PASS][55]
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-6/igt@gem_readwrite@write-bad-handle.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-5/igt@gem_readwrite@write-bad-handle.html

  * igt@gen9_exec_parse@unaligned-jump:
    - {shard-rkl}:        [SKIP][56] ([i915#2527]) -> [PASS][57]
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@gen9_exec_parse@unaligned-jump.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-5/igt@gen9_exec_parse@unaligned-jump.html

  * igt@i915_hangman@gt-engine-error@bcs0:
    - {shard-rkl}:        [SKIP][58] ([i915#6258]) -> [PASS][59]
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@i915_hangman@gt-engine-error@bcs0.html
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-3/igt@i915_hangman@gt-engine-error@bcs0.html

  * igt@i915_pm_dc@dc5-psr:
    - {shard-rkl}:        [SKIP][60] ([i915#658]) -> [PASS][61]
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@i915_pm_dc@dc5-psr.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@i915_pm_dc@dc5-psr.html

  * igt@i915_pm_rc6_residency@rc6-idle@vcs0:
    - {shard-rkl}:        [WARN][62] ([i915#2681]) -> [PASS][63]
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-3/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html

  * igt@i915_pm_rpm@cursor:
    - {shard-rkl}:        [SKIP][64] ([i915#1849]) -> [PASS][65]
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@i915_pm_rpm@cursor.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@i915_pm_rpm@cursor.html

  * igt@i915_pm_rpm@modeset-lpsp-stress:
    - {shard-rkl}:        [SKIP][66] ([i915#1397]) -> [PASS][67]
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@i915_pm_rpm@modeset-lpsp-stress.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@i915_pm_rpm@modeset-lpsp-stress.html

  * igt@i915_pm_rpm@modeset-non-lpsp:
    - {shard-dg1}:        [SKIP][68] ([i915#1397]) -> [PASS][69] +2 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-dg1-14/igt@i915_pm_rpm@modeset-non-lpsp.html
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-dg1-18/igt@i915_pm_rpm@modeset-non-lpsp.html

  * igt@i915_pm_rps@engine-order:
    - shard-apl:          [FAIL][70] ([i915#6537]) -> [PASS][71]
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl6/igt@i915_pm_rps@engine-order.html
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl7/igt@i915_pm_rps@engine-order.html

  * igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs:
    - {shard-rkl}:        [SKIP][72] ([i915#1845] / [i915#4098]) -> [PASS][73] +23 similar issues
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-3/igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs.html
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
    - shard-glk:          [FAIL][74] ([i915#2346]) -> [PASS][75]
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
    - shard-apl:          [FAIL][76] ([i915#2346]) -> [PASS][77]
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl7/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl3/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html

  * igt@kms_flip@plain-flip-ts-check@c-hdmi-a1:
    - shard-glk:          [FAIL][78] ([i915#2122]) -> [PASS][79]
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-glk3/igt@kms_flip@plain-flip-ts-check@c-hdmi-a1.html
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-glk9/igt@kms_flip@plain-flip-ts-check@c-hdmi-a1.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-wc:
    - {shard-rkl}:        [SKIP][80] ([i915#1849] / [i915#4098]) -> [PASS][81] +9 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-wc.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-wc.html

  * igt@kms_plane@plane-panning-top-left@pipe-a-planes:
    - {shard-rkl}:        [SKIP][82] ([i915#3558]) -> [PASS][83] +1 similar issue
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@kms_plane@plane-panning-top-left@pipe-a-planes.html
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_plane@plane-panning-top-left@pipe-a-planes.html

  * igt@kms_psr@cursor_blt:
    - {shard-rkl}:        [SKIP][84] ([i915#1072]) -> [PASS][85] +3 similar issues
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@kms_psr@cursor_blt.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_psr@cursor_blt.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - {shard-rkl}:        [SKIP][86] ([i915#5461]) -> [PASS][87]
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-6/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  * igt@prime_vgem@basic-fence-read:
    - {shard-rkl}:        [SKIP][88] ([fdo#109295] / [i915#3291] / [i915#3708]) -> [PASS][89] +1 similar issue
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@prime_vgem@basic-fence-read.html
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-rkl-5/igt@prime_vgem@basic-fence-read.html

  
#### Warnings ####

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [FAIL][90] ([i915#4275]) -> [SKIP][91] ([fdo#109271])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl3/igt@i915_pm_dc@dc9-dpms.html
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/shard-apl7/igt@i915_pm_dc@dc9-dpms.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#315]: https://gitlab.freedesktop.org/drm/intel/issues/315
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3547]: https://gitlab.freedesktop.org/drm/intel/issues/3547
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
  [i915#3825]: https://gitlab.freedesktop.org/drm/intel/issues/3825
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4275]: https://gitlab.freedesktop.org/drm/intel/issues/4275
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6247]: https://gitlab.freedesktop.org/drm/intel/issues/6247
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
  [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#6537]: https://gitlab.freedesktop.org/drm/intel/issues/6537
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#7128]: https://gitlab.freedesktop.org/drm/intel/issues/7128
  [i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72
  [i915#7276]: https://gitlab.freedesktop.org/drm/intel/issues/7276
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
  [i915#7708]: https://gitlab.freedesktop.org/drm/intel/issues/7708
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7102 -> IGTPW_8267
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_12524: a29956c69a562e85ef8657e39382bc207a339941 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8267: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8267/index.html
  IGT_7102: bacfdc84a9c02556c5441deb21e3a3f18a07347d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for Add IGT support for Bigjoiner (rev12)
  2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
                   ` (58 preceding siblings ...)
  2022-12-23 10:37 ` [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev11) Patchwork
@ 2022-12-23 11:01 ` Patchwork
  59 siblings, 0 replies; 94+ messages in thread
From: Patchwork @ 2022-12-23 11:01 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: Add IGT support for Bigjoiner (rev12)
URL   : https://patchwork.freedesktop.org/series/108183/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12524_full -> IGTPW_8268_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (13 -> 11)
------------------------------

  Additional (1): shard-rkl0 
  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

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

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

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][1] ([i915#1845] / [i915#4098]) -> [SKIP][2] +6 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-3/igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_rc_ccs_cc.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs:
    - {shard-rkl}:        [SKIP][3] ([i915#4098]) -> [SKIP][4] +5 similar issues
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs:
    - {shard-rkl}:        [SKIP][5] ([i915#4070] / [i915#6768]) -> [SKIP][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html

  * igt@kms_display_modes@extended-mode-basic:
    - {shard-dg1}:        NOTRUN -> [SKIP][7]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-dg1-16/igt@kms_display_modes@extended-mode-basic.html

  * igt@kms_plane@pixel-format-source-clamping:
    - {shard-tglu}:       NOTRUN -> [SKIP][8] +2 similar issues
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-tglu-6/igt@kms_plane@pixel-format-source-clamping.html

  * igt@kms_plane@plane-position-hole-dpms:
    - {shard-rkl}:        NOTRUN -> [SKIP][9] +6 similar issues
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-4/igt@kms_plane@plane-position-hole-dpms.html

  * igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-b:
    - {shard-tglu}:       [PASS][10] -> [SKIP][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-tglu-4/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-b.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-tglu-6/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-b.html

  * igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-c:
    - {shard-tglu-9}:     NOTRUN -> [SKIP][12] +2 similar issues
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-tglu-9/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-c.html

  
New tests
---------

  New tests have been introduced between CI_DRM_12524_full and IGTPW_8268_full:

### New IGT tests (12) ###

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-a-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-1-pipe-c-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-b-hdmi-a-2-pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-a-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-1-pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  * igt@kms_display_modes@extended-mode-basic@pipe-c-hdmi-a-2-pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_caching@read-writes:
    - shard-apl:          [PASS][13] -> [INCOMPLETE][14] ([i915#7708]) +1 similar issue
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl1/igt@gem_caching@read-writes.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl3/igt@gem_caching@read-writes.html

  * igt@gem_close_race@multigpu-basic-process:
    - shard-apl:          NOTRUN -> [SKIP][15] ([fdo#109271]) +92 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl1/igt@gem_close_race@multigpu-basic-process.html

  * igt@gem_ctx_persistence@legacy-engines-hostile-preempt:
    - shard-snb:          NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#1099]) +1 similar issue
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-snb7/igt@gem_ctx_persistence@legacy-engines-hostile-preempt.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-glk:          NOTRUN -> [FAIL][17] ([i915#2842])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk6/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-throttle@rcs0:
    - shard-glk:          [PASS][18] -> [FAIL][19] ([i915#2842]) +2 similar issues
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-glk5/igt@gem_exec_fair@basic-throttle@rcs0.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk6/igt@gem_exec_fair@basic-throttle@rcs0.html

  * igt@gem_lmem_swapping@parallel-random-engines:
    - shard-apl:          NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4613])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl6/igt@gem_lmem_swapping@parallel-random-engines.html
    - shard-glk:          NOTRUN -> [SKIP][21] ([fdo#109271] / [i915#4613])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk4/igt@gem_lmem_swapping@parallel-random-engines.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-apl:          [PASS][22] -> [DMESG-WARN][23] ([i915#5566] / [i915#716])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl1/igt@gen9_exec_parse@allowed-single.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl6/igt@gen9_exec_parse@allowed-single.html

  * igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs:
    - shard-glk:          NOTRUN -> [SKIP][24] ([fdo#109271] / [i915#3886]) +1 similar issue
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk8/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][25] ([fdo#109271] / [i915#3886])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl3/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-ccs-on-another-bo-yf_tiled_ccs:
    - shard-snb:          NOTRUN -> [SKIP][26] ([fdo#109271]) +121 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-snb7/igt@kms_ccs@pipe-c-ccs-on-another-bo-yf_tiled_ccs.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - shard-glk:          NOTRUN -> [SKIP][27] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk7/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_color_chamelium@ctm-negative:
    - shard-apl:          NOTRUN -> [SKIP][28] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl6/igt@kms_color_chamelium@ctm-negative.html
    - shard-snb:          NOTRUN -> [SKIP][29] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-snb2/igt@kms_color_chamelium@ctm-negative.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-glk:          NOTRUN -> [SKIP][30] ([fdo#109271]) +73 similar issues
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk2/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-a-dp-1:
    - shard-apl:          NOTRUN -> [FAIL][31] ([i915#4573]) +2 similar issues
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl2/igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-a-dp-1.html

  * igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-b-hdmi-a-2:
    - shard-glk:          NOTRUN -> [FAIL][32] ([i915#4573]) +2 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk1/igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-b-hdmi-a-2.html

  * igt@kms_psr2_sf@cursor-plane-update-sf:
    - shard-apl:          NOTRUN -> [SKIP][33] ([fdo#109271] / [i915#658])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl3/igt@kms_psr2_sf@cursor-plane-update-sf.html
    - shard-glk:          NOTRUN -> [SKIP][34] ([fdo#109271] / [i915#658])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk1/igt@kms_psr2_sf@cursor-plane-update-sf.html

  * igt@kms_vblank@pipe-d-wait-idle:
    - shard-apl:          NOTRUN -> [SKIP][35] ([fdo#109271] / [i915#533])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl2/igt@kms_vblank@pipe-d-wait-idle.html
    - shard-glk:          NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#533])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk4/igt@kms_vblank@pipe-d-wait-idle.html

  * igt@sysfs_clients@fair-1:
    - shard-apl:          NOTRUN -> [SKIP][37] ([fdo#109271] / [i915#2994]) +1 similar issue
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl1/igt@sysfs_clients@fair-1.html

  * igt@sysfs_clients@sema-10:
    - shard-glk:          NOTRUN -> [SKIP][38] ([fdo#109271] / [i915#2994]) +1 similar issue
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk4/igt@sysfs_clients@sema-10.html

  
#### Possible fixes ####

  * igt@gem_ctx_persistence@engines-hang@bcs0:
    - {shard-rkl}:        [SKIP][39] ([i915#6252]) -> [PASS][40]
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@gem_ctx_persistence@engines-hang@bcs0.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-3/igt@gem_ctx_persistence@engines-hang@bcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-apl:          [FAIL][41] ([i915#2842]) -> [PASS][42]
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl2/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl1/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_reloc@basic-cpu-gtt:
    - {shard-rkl}:        [SKIP][43] ([i915#3281]) -> [PASS][44] +1 similar issue
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@gem_exec_reloc@basic-cpu-gtt.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-5/igt@gem_exec_reloc@basic-cpu-gtt.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-display:
    - shard-apl:          [INCOMPLETE][45] ([i915#7708]) -> [PASS][46]
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl2/igt@gem_partial_pwrite_pread@writes-after-reads-display.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl6/igt@gem_partial_pwrite_pread@writes-after-reads-display.html

  * igt@gem_pread@uncached:
    - {shard-rkl}:        [SKIP][47] ([i915#3282]) -> [PASS][48] +1 similar issue
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@gem_pread@uncached.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-5/igt@gem_pread@uncached.html

  * igt@gen9_exec_parse@batch-invalid-length:
    - {shard-rkl}:        [SKIP][49] ([i915#2527]) -> [PASS][50] +2 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@gen9_exec_parse@batch-invalid-length.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-5/igt@gen9_exec_parse@batch-invalid-length.html

  * igt@i915_hangman@gt-engine-error@bcs0:
    - {shard-rkl}:        [SKIP][51] ([i915#6258]) -> [PASS][52]
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@i915_hangman@gt-engine-error@bcs0.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-1/igt@i915_hangman@gt-engine-error@bcs0.html

  * igt@i915_pm_dc@dc5-psr:
    - {shard-rkl}:        [SKIP][53] ([i915#658]) -> [PASS][54]
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-1/igt@i915_pm_dc@dc5-psr.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@i915_pm_dc@dc5-psr.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [FAIL][55] ([i915#4275]) -> [PASS][56]
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl3/igt@i915_pm_dc@dc9-dpms.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl3/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rc6_residency@rc6-idle@vcs0:
    - {shard-rkl}:        [WARN][57] ([i915#2681]) -> [PASS][58]
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-5/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-4/igt@i915_pm_rc6_residency@rc6-idle@vcs0.html

  * igt@i915_pm_rpm@cursor:
    - {shard-rkl}:        [SKIP][59] ([i915#1849]) -> [PASS][60]
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@i915_pm_rpm@cursor.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@i915_pm_rpm@cursor.html

  * igt@i915_pm_rpm@dpms-non-lpsp:
    - {shard-dg1}:        [SKIP][61] ([i915#1397]) -> [PASS][62] +2 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-dg1-14/igt@i915_pm_rpm@dpms-non-lpsp.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-dg1-18/igt@i915_pm_rpm@dpms-non-lpsp.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
    - shard-apl:          [FAIL][63] ([i915#2346]) -> [PASS][64]
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl7/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html

  * igt@kms_flip@plain-flip-ts-check@c-hdmi-a1:
    - shard-glk:          [FAIL][65] ([i915#2122]) -> [PASS][66]
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-glk3/igt@kms_flip@plain-flip-ts-check@c-hdmi-a1.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-glk1/igt@kms_flip@plain-flip-ts-check@c-hdmi-a1.html

  * igt@kms_frontbuffer_tracking@fbc-tiling-linear:
    - {shard-rkl}:        [SKIP][67] ([i915#1849] / [i915#4098]) -> [PASS][68] +10 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-tiling-linear.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-tiling-linear.html

  * igt@kms_psr@sprite_render:
    - {shard-rkl}:        [SKIP][69] ([i915#1072]) -> [PASS][70]
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@kms_psr@sprite_render.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_psr@sprite_render.html

  * igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-b:
    - {shard-rkl}:        [SKIP][71] ([i915#4098]) -> [PASS][72]
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-4/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-b.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_universal_plane@universal-plane-pageflip-windowed-pipe-b.html

  * igt@kms_vblank@pipe-b-ts-continuation-idle:
    - {shard-rkl}:        [SKIP][73] ([i915#1845] / [i915#4098]) -> [PASS][74] +21 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@kms_vblank@pipe-b-ts-continuation-idle.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@kms_vblank@pipe-b-ts-continuation-idle.html

  * igt@perf@polling-small-buf:
    - {shard-rkl}:        [FAIL][75] ([i915#1722]) -> [PASS][76]
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-rkl-2/igt@perf@polling-small-buf.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-rkl-6/igt@perf@polling-small-buf.html

  
#### Warnings ####

  * igt@runner@aborted:
    - shard-apl:          ([FAIL][77], [FAIL][78]) ([i915#3002] / [i915#4312]) -> ([FAIL][79], [FAIL][80], [FAIL][81]) ([fdo#109271] / [i915#3002] / [i915#4312])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl7/igt@runner@aborted.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12524/shard-apl1/igt@runner@aborted.html
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl6/igt@runner@aborted.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl1/igt@runner@aborted.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/shard-apl6/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1722]: https://gitlab.freedesktop.org/drm/intel/issues/1722
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2434]: https://gitlab.freedesktop.org/drm/intel/issues/2434
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3639]: https://gitlab.freedesktop.org/drm/intel/issues/3639
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3826]: https://gitlab.freedesktop.org/drm/intel/issues/3826
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4275]: https://gitlab.freedesktop.org/drm/intel/issues/4275
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
  [i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5234]: https://gitlab.freedesktop.org/drm/intel/issues/5234
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
  [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
  [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944
  [i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
  [i915#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#7276]: https://gitlab.freedesktop.org/drm/intel/issues/7276
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
  [i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
  [i915#7708]: https://gitlab.freedesktop.org/drm/intel/issues/7708
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7102 -> IGTPW_8268
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_12524: a29956c69a562e85ef8657e39382bc207a339941 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8268: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8268/index.html
  IGT_7102: bacfdc84a9c02556c5441deb21e3a3f18a07347d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

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

* Re: [igt-dev] [i-g-t v6 45/52] tests/i915/kms_flip_tiling: Add support for Bigjoiner
  2022-12-23  8:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
@ 2022-12-26  6:09     ` B, Jeevan
  0 siblings, 0 replies; 94+ messages in thread
From: B, Jeevan @ 2022-12-26  6:09 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev

> -----Original Message-----
> From: Modem, Bhanuprakash <bhanuprakash.modem@intel.com>
> Sent: Friday, December 23, 2022 2:11 PM
> To: igt-dev@lists.freedesktop.org; B, Jeevan <jeevan.b@intel.com>
> Cc: Modem, Bhanuprakash <bhanuprakash.modem@intel.com>
> Subject: [i-g-t v6 45/52] tests/i915/kms_flip_tiling: Add support for Bigjoiner
> 
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> V3: - Remove unwanted prints
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
LGTM

Reviewed-by: Jeevan B <jeevan.b@intel.com>
> ---
>  tests/i915/kms_flip_tiling.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/tests/i915/kms_flip_tiling.c b/tests/i915/kms_flip_tiling.c index
> 1183feb6..4cc063f6 100644
> --- a/tests/i915/kms_flip_tiling.c
> +++ b/tests/i915/kms_flip_tiling.c
> @@ -195,8 +195,12 @@ igt_main
>  		for_each_pipe_with_valid_output(&data.display, pipe,
> output) {
>  			igt_plane_t *plane;
> 
> +			igt_display_reset(&data.display);
>  			pipe_crc_free(&data);
> +
>  			igt_output_set_pipe(output, pipe);
> +			if (!i915_pipe_output_combo_valid(&data.display))
> +				continue;
> 
>  			plane = igt_output_get_plane_type(output,
> DRM_PLANE_TYPE_PRIMARY);
> 
> --
> 2.39.0

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

* Re: [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: " Bhanuprakash Modem
@ 2022-12-26 10:58   ` Sharma, Ananya
  2022-12-27  8:58   ` Sharma, Ananya
  1 sibling, 0 replies; 94+ messages in thread
From: Sharma, Ananya @ 2022-12-26 10:58 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev



-----Original Message-----
From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of Bhanuprakash Modem
Sent: 15 November 2022 22:39
To: igt-dev@lists.freedesktop.org
Subject: [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: Add support for Bigjoiner

This patch will add a check to Skip the subtest if a selected pipe/output combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Ananya Sharma <ananya.sharma@intel.com>
 tests/i915/kms_fence_pin_leak.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/i915/kms_fence_pin_leak.c b/tests/i915/kms_fence_pin_leak.c index 1972a699..63657a74 100644
--- a/tests/i915/kms_fence_pin_leak.c
+++ b/tests/i915/kms_fence_pin_leak.c
@@ -124,6 +124,9 @@ static void run_single_test(data_t *data, enum pipe pipe, igt_output_t *output)
 	struct igt_fb fb[2];
 	int i;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 
 	mode = igt_output_get_mode(output);
@@ -196,6 +199,12 @@ static void run_test(data_t *data)
 	enum pipe p;
 
 	for_each_pipe_with_valid_output(display, p, output) {
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, p);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		run_single_test(data, p, output);
 
 		return; /* one time ought to be enough */
--
2.38.0

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

* Re: [igt-dev] [i-g-t v6 22/52] tests/kms_plane: Add support for Bigjoiner
  2022-12-15 10:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
@ 2022-12-27  6:20     ` Karthik B S
  0 siblings, 0 replies; 94+ messages in thread
From: Karthik B S @ 2022-12-27  6:20 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev

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


On 12/15/2022 4:10 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
>
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>
> V2: - Use updated helper name
> V3: - Rebase
>
> Signed-off-by: Bhanuprakash Modem<bhanuprakash.modem@intel.com>
> ---
>   tests/kms_plane.c | 30 +++++++++++++++++++-----------
>   1 file changed, 19 insertions(+), 11 deletions(-)
>
> diff --git a/tests/kms_plane.c b/tests/kms_plane.c
> index 164dacf4..a79802f6 100644
> --- a/tests/kms_plane.c
> +++ b/tests/kms_plane.c
> @@ -56,6 +56,7 @@ typedef struct {
>   typedef struct {
>   	int drm_fd;
>   	igt_display_t display;
> +	igt_output_t *output;
>   	igt_pipe_crc_t *pipe_crc;
>   	const color_t *colors;
>   	int num_colors;
> @@ -274,11 +275,11 @@ static void
>   test_plane_position(data_t *data, enum pipe pipe)
>   {
>   	int n_planes = data->display.pipes[pipe].n_planes;
> -	igt_output_t *output;
> +	igt_output_t *output = data->output;
>   	igt_crc_t reference_crc;
>
> -	output = igt_get_single_output_for_pipe(&data->display, pipe);
> -	igt_require(output);
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));

Hi,

This igt_info seems redundant here as we already have an igt_info doing 
the same thing.

	Using (pipe B + HDMI-A-4) to run the subtest.
	Testing connector HDMI-A-4 using pipe B, mode 1920x1080

>   	test_init(data, pipe);
>   	test_grab_crc(data, output, pipe, &green, data->flags, &reference_crc);
> @@ -383,11 +384,11 @@ test_plane_panning(data_t *data, enum pipe pipe)
>   {
>   	bool mode_found = false;
>   	uint64_t mem_size = 0;
> -	igt_output_t *output;
> +	igt_output_t *output = data->output;
>   	igt_crc_t ref_crc;
>
> -	output = igt_get_single_output_for_pipe(&data->display, pipe);
> -	igt_require(output);
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
Same here.
>
>   	test_init(data, pipe);
>
> @@ -1076,7 +1077,7 @@ test_pixel_formats(data_t *data, enum pipe pipe)
>   	igt_plane_t *primary;
>   	drmModeModeInfo *mode;
>   	bool result;
> -	igt_output_t *output;
> +	igt_output_t *output = data->output;
>   	igt_plane_t *plane;
>
>   	if (data->extended) {
> @@ -1087,10 +1088,10 @@ test_pixel_formats(data_t *data, enum pipe pipe)
>   		data->num_colors = ARRAY_SIZE(colors_reduced);
>   	}
>
> -	test_init(data, pipe);
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
Same here.
>
> -	output = igt_get_single_output_for_pipe(&data->display, pipe);
> -	igt_require(output);
> +	test_init(data, pipe);
>
>   	mode = igt_output_get_mode(output);
>
> @@ -1134,7 +1135,14 @@ static void run_test(data_t *data, void (*test)(data_t *, enum pipe))
>   	enum pipe pipe;
>   	int count = 0;
>
> -	for_each_pipe(&data->display, pipe) {
> +	for_each_pipe_with_single_output(&data->display, pipe, data->output) {
> +		igt_display_reset(&data->display);
> +
> +		igt_output_set_pipe(data->output, pipe);
> +		if (!i915_pipe_output_combo_valid(&data->display))
> +			continue;
> +
> +		igt_output_set_pipe(data->output, PIPE_NONE);

With the above igt_info's removed, the patch LGTM.

Reviewed-by: Karthik B S <karthik.b.s@intel.com>

Thanks,
Karthik.B.S
>   		igt_dynamic_f("pipe-%s-planes", kmstest_pipe_name(pipe))
>   			test(data, pipe);
>
> --
> 2.38.1
>

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

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

* Re: [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner Bhanuprakash Modem
@ 2022-12-27  6:24   ` Thasleem, Mohammed
  0 siblings, 0 replies; 94+ messages in thread
From: Thasleem, Mohammed @ 2022-12-27  6:24 UTC (permalink / raw)
  To: igt-dev

On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
LGTM
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>

> ---
>   tests/kms_pipe_crc_basic.c | 24 ++++++++++++++++++++++++
>   1 file changed, 24 insertions(+)
> 
> diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
> index 91a1b8ab..ffc77eb3 100644
> --- a/tests/kms_pipe_crc_basic.c
> +++ b/tests/kms_pipe_crc_basic.c
> @@ -274,6 +274,21 @@ static void test_disable_crc_after_crtc(data_t *data, enum pipe pipe,
>   	igt_remove_fb(data->drm_fd, &data->fb);
>   }
>   
> +static bool pipe_output_combo_valid(igt_display_t *display,
> +				    enum pipe pipe, igt_output_t *output)
> +{
> +	bool ret = true;
> +
> +	igt_display_reset(display);
> +
> +	igt_output_set_pipe(output, pipe);
> +	if (!i915_pipe_output_combo_valid(display))
> +		ret = false;
> +	igt_output_set_pipe(output, PIPE_NONE);
> +
> +	return ret;
> +}
> +
>   data_t data = {0, };
>   
>   igt_main
> @@ -322,6 +337,9 @@ igt_main
>   		igt_describe(tests[i].desc);
>   		igt_subtest_with_dynamic(tests[i].name) {
>   			for_each_pipe_with_single_output(&data.display, pipe, output) {
> +				if(!pipe_output_combo_valid(&data.display, pipe, output))
> +					continue;
> +
>   				igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
>   					if (tests[i].flags & TEST_SUSPEND) {
>   						test_read_crc(&data, pipe, output, 0);
> @@ -350,6 +368,9 @@ igt_main
>   		     "does not cause issues.");
>   	igt_subtest_with_dynamic("disable-crc-after-crtc") {
>   		for_each_pipe_with_single_output(&data.display, pipe, output) {
> +			if(!pipe_output_combo_valid(&data.display, pipe, output))
> +				continue;
> +
>   			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
>   				test_disable_crc_after_crtc(&data, pipe, output);
>   		}
> @@ -358,6 +379,9 @@ igt_main
>   	igt_describe("Basic sanity check for CRC mismatches");
>   	igt_subtest_with_dynamic("compare-crc-sanitycheck") {
>   		for_each_pipe_with_single_output(&data.display, pipe, output) {
> +			if(!pipe_output_combo_valid(&data.display, pipe, output))
> +				continue;
> +
>   			igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
>   				test_compare_crc(&data, pipe, output);
>   		}

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

* Re: [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: " Bhanuprakash Modem
@ 2022-12-27  6:31   ` Thasleem, Mohammed
  0 siblings, 0 replies; 94+ messages in thread
From: Thasleem, Mohammed @ 2022-12-27  6:31 UTC (permalink / raw)
  To: igt-dev

On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
LGTM
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>

> ---
>   tests/kms_cursor_edge_walk.c | 6 ++++++
>   1 file changed, 6 insertions(+)
> 
> diff --git a/tests/kms_cursor_edge_walk.c b/tests/kms_cursor_edge_walk.c
> index e653b9ab..86b880d8 100644
> --- a/tests/kms_cursor_edge_walk.c
> +++ b/tests/kms_cursor_edge_walk.c
> @@ -351,6 +351,12 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
>   						data.curh = data.curw;
>   						igt_require(data.curw <= max_curw && data.curh <= max_curh);
>   
> +						igt_display_reset(&data.display);
> +						igt_output_set_pipe(data.output, data.pipe);
> +						if (!i915_pipe_output_combo_valid(&data.display))
> +							continue;
> +
> +						igt_output_set_pipe(data.output, PIPE_NONE);
>   						igt_dynamic_f("pipe-%s-%s-%dx%d",
>   							      kmstest_pipe_name(data.pipe),
>   							      data.output->name,

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

* Re: [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: " Bhanuprakash Modem
@ 2022-12-27  6:36   ` Karthik B S
  2022-12-27 14:55     ` Modem, Bhanuprakash
  0 siblings, 1 reply; 94+ messages in thread
From: Karthik B S @ 2022-12-27  6:36 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev


On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
>
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>
> V2: - Use updated helper name
>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/kms_content_protection.c | 15 +++++++++++++++
>   1 file changed, 15 insertions(+)
>
> diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
> index aa28b7bf..0aa2a8a2 100644
> --- a/tests/kms_content_protection.c
> +++ b/tests/kms_content_protection.c
> @@ -502,6 +502,13 @@ test_content_protection(enum igt_commit_style s, int content_type)
>   				continue;
>   
>   			igt_display_reset(display);
> +
> +			igt_output_set_pipe(output, pipe);
> +			if (!i915_pipe_output_combo_valid(display)) {
> +				igt_output_set_pipe(output, PIPE_NONE);
> +				continue;
> +			}
> +
>   			modeset_with_fb(pipe, output, s);
>   
>   			if (!output_hdcp_capable(output, content_type))
> @@ -623,6 +630,14 @@ test_content_protection_mst(int content_type)
>   		igt_assert_f(pipe_found, "No valid pipe found for %s\n", output->name);
>   
>   		igt_output_set_pipe(output, pipe);
> +		if (!i915_pipe_output_combo_valid(display)){
> +			igt_output_set_pipe(output, PIPE_NONE);
> +			continue;
> +		}

Hi,

Can this check be moved into the previous loop for finding pipe? So that 
even if a combo is invalid we still try with the next pipe. With current 
logic the an output will skip if this check fails.

> +
> +		igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +			 kmstest_pipe_name(pipe), igt_output_name(output));
> +

Please remove this as in mst case 2 or more displays are used in the 
subtest.

This info could be even updated to be more specific, but I would prefer 
that to be done in a separate clean up patch.

Thanks,
Karthik.B.S
>   		prepare_modeset_on_mst_output(output);
>   		mst_output[dp_mst_outputs++] = output;
>   	}

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

* Re: [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: " Bhanuprakash Modem
@ 2022-12-27  6:57   ` Thasleem, Mohammed
  0 siblings, 0 replies; 94+ messages in thread
From: Thasleem, Mohammed @ 2022-12-27  6:57 UTC (permalink / raw)
  To: igt-dev

On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
LGTM
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
> ---
>   tests/kms_cursor_crc.c | 33 +++++++++++++++++++++++++++++++++
>   1 file changed, 33 insertions(+)
> 
> diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c
> index 68bed666..99a7c717 100644
> --- a/tests/kms_cursor_crc.c
> +++ b/tests/kms_cursor_crc.c
> @@ -700,6 +700,21 @@ static void test_rapid_movement(data_t *data)
>   	igt_assert_lt(usec, 0.9 * 400 * 1000000 / data->refresh);
>   }
>   
> +static bool pipe_output_combo_valid(data_t *data, enum pipe pipe)
> +{
> +	bool ret = true;
> +	igt_display_t *display = &data->display;
> +
> +	igt_display_reset(display);
> +
> +	igt_output_set_pipe(data->output, pipe);
> +	if (!i915_pipe_output_combo_valid(display))
> +		ret = false;
> +	igt_output_set_pipe(data->output, PIPE_NONE);
> +
> +	return ret;
> +}
> +
>   static void run_size_tests(data_t *data, int w, int h)
>   {
>   	enum pipe pipe;
> @@ -757,6 +772,9 @@ static void run_size_tests(data_t *data, int w, int h)
>   					continue;
>   				}
>   
> +				if (!pipe_output_combo_valid(data, pipe))
> +					continue;
> +
>   				igt_dynamic_f("pipe-%s-%s",
>   					      kmstest_pipe_name(pipe), igt_output_name(data->output))
>   					run_test(data, size_tests[i].testfunc, w, h);
> @@ -787,6 +805,9 @@ static void run_tests_on_pipe(data_t *data)
>   		for_each_pipe(&data->display, pipe) {
>   			data->pipe = pipe;
>   
> +			if (!pipe_output_combo_valid(data, pipe))
> +				continue;
> +
>   			igt_dynamic_f("pipe-%s-%s",
>   				      kmstest_pipe_name(pipe),
>   				      data->output->name)
> @@ -801,6 +822,9 @@ static void run_tests_on_pipe(data_t *data)
>   		for_each_pipe(&data->display, pipe) {
>   			data->pipe = pipe;
>   
> +			if (!pipe_output_combo_valid(data, pipe))
> +				continue;
> +
>   			igt_dynamic_f("pipe-%s-%s",
>   				      kmstest_pipe_name(pipe),
>   				      data->output->name)
> @@ -815,6 +839,9 @@ static void run_tests_on_pipe(data_t *data)
>   		for_each_pipe(&data->display, pipe) {
>   			data->pipe = pipe;
>   
> +			if (!pipe_output_combo_valid(data, pipe))
> +				continue;
> +
>   			igt_dynamic_f("pipe-%s-%s",
>   				      kmstest_pipe_name(pipe),
>   				      data->output->name)
> @@ -833,6 +860,9 @@ static void run_tests_on_pipe(data_t *data)
>   			data->pipe = pipe;
>   			data->flags = TEST_DPMS;
>   
> +			if (!pipe_output_combo_valid(data, pipe))
> +				continue;
> +
>   			if (require_cursor_size(data, data->cursor_max_w, data->cursor_max_h)) {
>   				igt_debug("Cursor size %dx%d not supported by driver\n",
>   					  data->cursor_max_w, data->cursor_max_h);
> @@ -854,6 +884,9 @@ static void run_tests_on_pipe(data_t *data)
>   			data->pipe = pipe;
>   			data->flags = TEST_SUSPEND;
>   
> +			if (!pipe_output_combo_valid(data, pipe))
> +				continue;
> +
>   			if (require_cursor_size(data, data->cursor_max_w, data->cursor_max_h)) {
>   				igt_debug("Cursor size %dx%d not supported by driver\n",
>   					  data->cursor_max_w, data->cursor_max_h);

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

* Re: [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: " Bhanuprakash Modem
@ 2022-12-27  7:21   ` Sharma, Ananya
  0 siblings, 0 replies; 94+ messages in thread
From: Sharma, Ananya @ 2022-12-27  7:21 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev



-----Original Message-----
From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of Bhanuprakash Modem
Sent: 15 November 2022 22:38
To: igt-dev@lists.freedesktop.org
Subject: [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: Add support for Bigjoiner

This patch will add a check to Skip the subtest if a selected pipe/output combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Ananya Sharma <ananya.sharma@intel.com>

 tests/kms_plane_cursor.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/kms_plane_cursor.c b/tests/kms_plane_cursor.c index 9b27586c..9e317cbf 100644
--- a/tests/kms_plane_cursor.c
+++ b/tests/kms_plane_cursor.c
@@ -85,6 +85,12 @@ static void test_init(data_t *data, enum pipe pipe_id, igt_output_t *output)
 	data->overlay = igt_pipe_get_plane_type(data->pipe, DRM_PLANE_TYPE_OVERLAY);
 	data->cursor = igt_pipe_get_plane_type(data->pipe, DRM_PLANE_TYPE_CURSOR);
 
+	igt_output_set_pipe(data->output, data->pipe_id);
+	igt_require(i915_pipe_output_combo_valid(display));
+
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(data->pipe_id), igt_output_name(data->output));
+
 	igt_require_pipe_crc(data->drm_fd);
 	data->pipe_crc = igt_pipe_crc_new(data->drm_fd, data->pipe_id,
 					  IGT_PIPE_CRC_SOURCE_AUTO);
--
2.38.0

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

* Re: [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: " Bhanuprakash Modem
  2022-12-26 10:58   ` Sharma, Ananya
@ 2022-12-27  8:58   ` Sharma, Ananya
  1 sibling, 0 replies; 94+ messages in thread
From: Sharma, Ananya @ 2022-12-27  8:58 UTC (permalink / raw)
  To: igt-dev

LGTM 
Reviewed-by: Ananya Sharma <ananya.sharma@intel.com>

-----Original Message-----
From: igt-dev <igt-dev-bounces@lists.freedesktop.org> On Behalf Of Bhanuprakash Modem
Sent: 15 November 2022 22:39
To: igt-dev@lists.freedesktop.org
Subject: [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: Add support for Bigjoiner

This patch will add a check to Skip the subtest if a selected pipe/output combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_fence_pin_leak.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/tests/i915/kms_fence_pin_leak.c b/tests/i915/kms_fence_pin_leak.c index 1972a699..63657a74 100644
--- a/tests/i915/kms_fence_pin_leak.c
+++ b/tests/i915/kms_fence_pin_leak.c
@@ -124,6 +124,9 @@ static void run_single_test(data_t *data, enum pipe pipe, igt_output_t *output)
 	struct igt_fb fb[2];
 	int i;
 
+	igt_info("Using (pipe %s + %s) to run the subtest.\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
 	igt_output_set_pipe(output, pipe);
 
 	mode = igt_output_get_mode(output);
@@ -196,6 +199,12 @@ static void run_test(data_t *data)
 	enum pipe p;
 
 	for_each_pipe_with_valid_output(display, p, output) {
+		igt_display_reset(display);
+
+		igt_output_set_pipe(output, p);
+		if (!i915_pipe_output_combo_valid(display))
+			continue;
+
 		run_single_test(data, p, output);
 
 		return; /* one time ought to be enough */
--
2.38.0

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

* Re: [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: Add support for Bigjoiner
  2022-12-27  6:36   ` Karthik B S
@ 2022-12-27 14:55     ` Modem, Bhanuprakash
  0 siblings, 0 replies; 94+ messages in thread
From: Modem, Bhanuprakash @ 2022-12-27 14:55 UTC (permalink / raw)
  To: Karthik B S, igt-dev

On Tue-27-12-2022 12:06 pm, Karthik B S wrote:
> 
> On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
>> This patch will add a check to Skip the subtest if a selected pipe/output
>> combo won't support Bigjoiner or 8K mode.
>>
>> Example:
>> * Pipe-D wont support a mode > 5K
>> * To use 8K mode on a pipe then consecutive pipe must be available & 
>> free.
>>
>> V2: - Use updated helper name
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>> ---
>>   tests/kms_content_protection.c | 15 +++++++++++++++
>>   1 file changed, 15 insertions(+)
>>
>> diff --git a/tests/kms_content_protection.c 
>> b/tests/kms_content_protection.c
>> index aa28b7bf..0aa2a8a2 100644
>> --- a/tests/kms_content_protection.c
>> +++ b/tests/kms_content_protection.c
>> @@ -502,6 +502,13 @@ test_content_protection(enum igt_commit_style s, 
>> int content_type)
>>                   continue;
>>               igt_display_reset(display);
>> +
>> +            igt_output_set_pipe(output, pipe);
>> +            if (!i915_pipe_output_combo_valid(display)) {
>> +                igt_output_set_pipe(output, PIPE_NONE);
>> +                continue;
>> +            }
>> +
>>               modeset_with_fb(pipe, output, s);
>>               if (!output_hdcp_capable(output, content_type))
>> @@ -623,6 +630,14 @@ test_content_protection_mst(int content_type)
>>           igt_assert_f(pipe_found, "No valid pipe found for %s\n", 
>> output->name);
>>           igt_output_set_pipe(output, pipe);
>> +        if (!i915_pipe_output_combo_valid(display)){
>> +            igt_output_set_pipe(output, PIPE_NONE);
>> +            continue;
>> +        }
> 
> Hi,
> 
> Can this check be moved into the previous loop for finding pipe? So that 
> even if a combo is invalid we still try with the next pipe. With current 
> logic the an output will skip if this check fails.

Just realized, this entire change is not required as it is already 
covered by:
igt_override_all_active_output_modes_to_fit_bw()

- Bhanu

> 
>> +
>> +        igt_info("Using (pipe %s + %s) to run the subtest.\n",
>> +             kmstest_pipe_name(pipe), igt_output_name(output));
>> +
> 
> Please remove this as in mst case 2 or more displays are used in the 
> subtest.
> 
> This info could be even updated to be more specific, but I would prefer 
> that to be done in a separate clean up patch.
> 
> Thanks,
> Karthik.B.S
>>           prepare_modeset_on_mst_output(output);
>>           mst_output[dp_mst_outputs++] = output;
>>       }

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

* Re: [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: " Bhanuprakash Modem
@ 2022-12-27 16:24   ` Thasleem, Mohammed
  0 siblings, 0 replies; 94+ messages in thread
From: Thasleem, Mohammed @ 2022-12-27 16:24 UTC (permalink / raw)
  To: igt-dev

On 11/15/2022 10:38 PM, Bhanuprakash Modem wrote:
> As many 2x tests are currently running on Pipe-A & B only, those
> tests will always SKIP if there is any 8K supported panel in the
> config. Instead of Skipping the test, add some intelligence to
> the subtest to identify the valid pipe/output combo to execute
> the subtest.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
> ---
>   tests/kms_cursor_legacy.c | 202 +++++++++++++++++++++++---------------
>   1 file changed, 124 insertions(+), 78 deletions(-)
> 
> diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
> index 6b75e98c..acba3561 100644
> --- a/tests/kms_cursor_legacy.c
> +++ b/tests/kms_cursor_legacy.c
> @@ -177,31 +177,21 @@ static void stress(igt_display_t *display,
>   	munmap(results, PAGE_SIZE);
>   }
>   
> -static igt_output_t *set_fb_on_crtc(igt_display_t *display, enum pipe pipe, struct igt_fb *fb_info)
> +static void set_fb_on_crtc(igt_display_t *display, enum pipe pipe,
> +			   igt_output_t *output, struct igt_fb *fb_info)
>   {
> -	igt_output_t *output;
> -
> -	for_each_valid_output_on_pipe(display, pipe, output) {
> -		drmModeModeInfoPtr mode;
> -		igt_plane_t *primary;
> -
> -		if (output->pending_pipe != PIPE_NONE)
> -			continue;
> -
> -		igt_output_set_pipe(output, pipe);
> -		mode = igt_output_get_mode(output);
> +	drmModeModeInfoPtr mode;
> +	igt_plane_t *primary;
>   
> -		igt_create_pattern_fb(display->drm_fd,
> -			      mode->hdisplay, mode->vdisplay,
> -			      DRM_FORMAT_XRGB8888, I915_TILING_NONE, fb_info);
> +	igt_output_set_pipe(output, pipe);
> +	mode = igt_output_get_mode(output);
>   
> -		primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> -		igt_plane_set_fb(primary, fb_info);
> +	igt_create_pattern_fb(display->drm_fd,
> +		      mode->hdisplay, mode->vdisplay,
> +		      DRM_FORMAT_XRGB8888, I915_TILING_NONE, fb_info);
>   
> -		return output;
> -	}
> -
> -	return NULL;
> +	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> +	igt_plane_set_fb(primary, fb_info);
>   }
>   
>   static	igt_plane_t
> @@ -236,36 +226,44 @@ static void populate_cursor_args(igt_display_t *display, enum pipe pipe,
>   	arg[1] = *arg;
>   }
>   
> -static enum pipe find_connected_pipe(igt_display_t *display, bool second)
> +static enum pipe
> +find_connected_pipe(igt_display_t *display, bool second, igt_output_t **output)
>   {
> -	enum pipe pipe, first = PIPE_NONE;
> -	igt_output_t *output;
> -	igt_output_t *first_output = NULL;
> +	enum pipe pipe;
> +	bool first_output = false;
>   	bool found = false;
>   
>   	if (!second) {
>   		igt_pipe_crc_free(pipe_crc);
>   		pipe_crc = NULL;
> -
> -		/* Clear display, events will be eaten by commit.. */
> -		igt_display_reset(display);
>   	}
>   
> -	for_each_pipe_with_valid_output(display, pipe, output) {
> -		if (first == pipe || output == first_output)
> -			continue;
> +	/* Clear display, events will be eaten by commit.. */
> +	igt_display_reset(display);
>   
> -		if (second) {
> -			first = pipe;
> -			first_output = output;
> -			second = false;
> -			continue;
> -		}
> +	for_each_pipe(display, pipe) {
> +		for_each_valid_output_on_pipe(display, pipe, *output) {
> +			if((*output)->pending_pipe != PIPE_NONE)
> +				continue;
>   
> -		found = true;
> -		break;
> +			igt_output_set_pipe(*output, pipe);
> +			if (i915_pipe_output_combo_valid(display)) {
> +				found = true;
> +
> +				if (second) {
> +					first_output = true;
> +					second = false;
> +					found = false;
> +				}
> +				break;
> +			}
> +			igt_output_set_pipe(*output, PIPE_NONE);
> +		}
> +		if (found)
> +			break;
>   	}
>   
> +	igt_display_reset(display);
>   	if (first_output)
>   		igt_require_f(found, "No second valid output found\n");
>   	else
> @@ -429,10 +427,9 @@ static void flip(igt_display_t *display,
>   	results = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
>   	igt_assert(results != MAP_FAILED);
>   
> -	igt_display_reset(display);
> -
> -	flip_pipe = find_connected_pipe(display, !!flip_pipe);
> -	cursor_pipe = find_connected_pipe(display, !!cursor_pipe);
> +	flip_pipe = find_connected_pipe(display, !!flip_pipe, &output);
> +	cursor_pipe = find_connected_pipe(display, !!cursor_pipe, &output2);
> +	igt_skip_on(!output || !output2);
>   
>   	igt_info("Using pipe %s for page flip, pipe %s for cursor\n",
>   		  kmstest_pipe_name(flip_pipe), kmstest_pipe_name(cursor_pipe));
> @@ -446,15 +443,15 @@ static void flip(igt_display_t *display,
>   					DRM_PLANE_TYPE_OVERLAY));
>   	}
>   
> -	igt_require((output = set_fb_on_crtc(display, flip_pipe, &fb_info)));
> +	set_fb_on_crtc(display, flip_pipe, output, &fb_info);
>   	if (flip_pipe != cursor_pipe) {
> -		igt_require((output2 = set_fb_on_crtc(display, cursor_pipe, &fb_info2)));
> +		set_fb_on_crtc(display, cursor_pipe, output2, &fb_info2);
>   
>   		if (try_commit(display)) {
>   			override_output_modes(display, output, output2);
>   
> -			igt_require((output = set_fb_on_crtc(display, flip_pipe, &fb_info)));
> -			igt_require((output2 = set_fb_on_crtc(display, cursor_pipe, &fb_info2)));
> +			set_fb_on_crtc(display, flip_pipe, output, &fb_info);
> +			set_fb_on_crtc(display, cursor_pipe, output2, &fb_info2);
>   		}
>   	}
>   
> @@ -546,7 +543,7 @@ static void basic_flip_cursor(igt_display_t *display,
>   	struct drm_event_vblank vbl;
>   	struct igt_fb fb_info, cursor_fb, cursor_fb2, argb_fb;
>   	unsigned vblank_start;
> -	enum pipe pipe = find_connected_pipe(display, false);
> +	enum pipe pipe;
>   	uint64_t ahnd = 0;
>   	igt_spin_t *spin;
>   	int i, miss1 = 0, miss2 = 0, delta;
> @@ -562,7 +559,13 @@ static void basic_flip_cursor(igt_display_t *display,
>   	if (mode >= flip_test_atomic)
>   		igt_require(display->is_atomic);
>   
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	set_fb_on_crtc(display, pipe, output, &fb_info);
>   
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
>   	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
> @@ -717,7 +720,7 @@ static void flip_vs_cursor(igt_display_t *display, enum flip_test mode, int nloo
>   	struct igt_fb fb_info, cursor_fb, cursor_fb2, argb_fb;
>   	unsigned vblank_start;
>   	int target, cpu;
> -	enum pipe pipe = find_connected_pipe(display, false);
> +	enum pipe pipe;
>   	volatile unsigned long *shared;
>   	cpu_set_t mask, oldmask;
>   	igt_output_t *output;
> @@ -726,7 +729,13 @@ static void flip_vs_cursor(igt_display_t *display, enum flip_test mode, int nloo
>   	if (mode >= flip_test_atomic)
>   		igt_require(display->is_atomic);
>   
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	set_fb_on_crtc(display, pipe, output, &fb_info);
>   
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
>   	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
> @@ -845,12 +854,18 @@ static void nonblocking_modeset_vs_cursor(igt_display_t *display, int loops)
>   {
>   	struct igt_fb fb_info, cursor_fb;
>   	igt_output_t *output;
> -	enum pipe pipe = find_connected_pipe(display, false);
> +	enum pipe pipe;
>   	struct drm_mode_cursor arg[2];
>   	igt_plane_t *primary, *cursor = NULL;
>   
>   	igt_require(display->is_atomic);
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	set_fb_on_crtc(display, pipe, output, &fb_info);
>   	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
>   	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
> @@ -937,8 +952,7 @@ static void two_screens_flip_vs_cursor(igt_display_t *display, int nloops, bool
>   {
>   	struct drm_mode_cursor arg1[2], arg2[2];
>   	struct igt_fb fb_info, fb2_info, cursor_fb;
> -	enum pipe pipe = find_connected_pipe(display, false);
> -	enum pipe pipe2 = find_connected_pipe(display, true);
> +	enum pipe pipe, pipe2;
>   	igt_output_t *output, *output2;
>   	bool enabled = false;
>   	volatile unsigned long *shared;
> @@ -954,22 +968,28 @@ static void two_screens_flip_vs_cursor(igt_display_t *display, int nloops, bool
>   		igt_require(drmGetCap(display->drm_fd, DRM_CAP_CRTC_IN_VBLANK_EVENT, &val) == 0);
>   	}
>   
> +	if (atomic)
> +		igt_require(display->is_atomic);
> +
>   	shared = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
>   	igt_assert(shared != MAP_FAILED);
>   
> -	igt_fail_on(modeset && !atomic);
> +	pipe = find_connected_pipe(display, false, &output);
> +	pipe2 = find_connected_pipe(display, true, &output2);
> +	igt_skip_on(!output || !output2);
>   
> -	if (atomic)
> -		igt_require(display->is_atomic);
> +	igt_info("Using pipe %s & %s and pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output),
> +		 kmstest_pipe_name(pipe2), igt_output_name(output2));
>   
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> -	igt_require((output2 = set_fb_on_crtc(display, pipe2, &fb2_info)));
> +	set_fb_on_crtc(display, pipe, output, &fb_info);
> +	set_fb_on_crtc(display, pipe2, output2, &fb2_info);
>   
>   	if (try_commit(display)) {
>   		override_output_modes(display, output, output2);
>   
> -		igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> -		igt_require((output2 = set_fb_on_crtc(display, pipe2, &fb2_info)));
> +		set_fb_on_crtc(display, pipe, output, &fb_info);
> +		set_fb_on_crtc(display, pipe2, output2, &fb2_info);
>   	}
>   
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
> @@ -1122,7 +1142,7 @@ static void cursor_vs_flip(igt_display_t *display, enum flip_test mode, int nloo
>   	unsigned vblank_start, vblank_last;
>   	volatile unsigned long *shared;
>   	long target;
> -	enum pipe pipe = find_connected_pipe(display, false);
> +	enum pipe pipe;
>   	igt_output_t *output;
>   	uint32_t vrefresh;
>   	int fail_count;
> @@ -1134,7 +1154,13 @@ static void cursor_vs_flip(igt_display_t *display, enum flip_test mode, int nloo
>   	shared = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
>   	igt_assert(shared != MAP_FAILED);
>   
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	set_fb_on_crtc(display, pipe, output, &fb_info);
>   	vrefresh = igt_output_get_mode(output)->vrefresh;
>   
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
> @@ -1226,10 +1252,7 @@ static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool
>   	struct igt_fb fb_info[2], cursor_fb;
>   	volatile unsigned long *shared;
>   	int target[2];
> -	enum pipe pipe[2] = {
> -		find_connected_pipe(display, false),
> -		find_connected_pipe(display, true)
> -	};
> +	enum pipe pipe[2];
>   	igt_output_t *outputs[2];
>   	igt_plane_t *cursors[2];
>   
> @@ -1239,14 +1262,22 @@ static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool
>   	if (atomic)
>   		igt_require(display->is_atomic);
>   
> -	igt_require((outputs[0] = set_fb_on_crtc(display, pipe[0], &fb_info[0])));
> -	igt_require((outputs[1] = set_fb_on_crtc(display, pipe[1], &fb_info[1])));
> +	pipe[0] = find_connected_pipe(display, false, &outputs[0]);
> +	pipe[1] = find_connected_pipe(display, true, &outputs[1]);
> +	igt_skip_on(!outputs[0] || !outputs[1]);
> +
> +	igt_info("Using pipe %s & %s and pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe[0]), igt_output_name(outputs[0]),
> +		 kmstest_pipe_name(pipe[1]), igt_output_name(outputs[1]));
> +
> +	set_fb_on_crtc(display, pipe[0], outputs[0], &fb_info[0]);
> +	set_fb_on_crtc(display, pipe[1], outputs[1], &fb_info[1]);
>   
>   	if (try_commit(display)) {
>   		override_output_modes(display, outputs[0], outputs[1]);
>   
> -		igt_require((outputs[0] = set_fb_on_crtc(display, pipe[0], &fb_info[0])));
> -		igt_require((outputs[1] = set_fb_on_crtc(display, pipe[1], &fb_info[1])));
> +		set_fb_on_crtc(display, pipe[0], outputs[0], &fb_info[0]);
> +		set_fb_on_crtc(display, pipe[1], outputs[1], &fb_info[1]);
>   	}
>   
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
> @@ -1347,7 +1378,7 @@ static void flip_vs_cursor_crc(igt_display_t *display, bool atomic)
>   	struct drm_event_vblank vbl;
>   	struct igt_fb fb_info, cursor_fb;
>   	unsigned vblank_start;
> -	enum pipe pipe = find_connected_pipe(display, false);
> +	enum pipe pipe;
>   	igt_crc_t crcs[3];
>   	igt_output_t *output;
>   	igt_plane_t *cursor;
> @@ -1355,7 +1386,13 @@ static void flip_vs_cursor_crc(igt_display_t *display, bool atomic)
>   	if (atomic)
>   		igt_require(display->is_atomic);
>   
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info)));
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	set_fb_on_crtc(display, pipe, output, &fb_info);
>   
>   	igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb);
>   	populate_cursor_args(display, pipe, arg, &cursor_fb);
> @@ -1412,9 +1449,9 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
>   	struct drm_event_vblank vbl;
>   	struct igt_fb fb_info[2], cursor_fb;
>   	unsigned vblank_start;
> -	enum pipe pipe = find_connected_pipe(display, false);
> -	igt_pipe_t *pipe_connected = &display->pipes[pipe];
> -	igt_plane_t *plane_primary = igt_pipe_get_plane_type(pipe_connected, DRM_PLANE_TYPE_PRIMARY);
> +	enum pipe pipe;
> +	igt_pipe_t *pipe_connected;
> +	igt_plane_t *plane_primary;
>   	igt_crc_t crcs[2], test_crc;
>   	uint64_t ahnd;
>   	igt_output_t *output;
> @@ -1426,7 +1463,16 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
>   	if (atomic)
>   		igt_require(display->is_atomic);
>   
> -	igt_require((output = set_fb_on_crtc(display, pipe, &fb_info[0])));
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	pipe_connected = &display->pipes[pipe];
> +	plane_primary = igt_pipe_get_plane_type(pipe_connected, DRM_PLANE_TYPE_PRIMARY);
> +
> +	set_fb_on_crtc(display, pipe, output, &fb_info[0]);
>   	igt_create_color_pattern_fb(display->drm_fd, fb_info[0].width, fb_info[0].height,
>   				    DRM_FORMAT_XRGB8888, I915_FORMAT_MOD_X_TILED, .1, .1, .1, &fb_info[1]);
>   

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

* Re: [igt-dev] [i-g-t v5 28/52] tests/kms_prime: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 28/52] tests/kms_prime: " Bhanuprakash Modem
@ 2022-12-28  5:58   ` Sharma, Ananya
  0 siblings, 0 replies; 94+ messages in thread
From: Sharma, Ananya @ 2022-12-28  5:58 UTC (permalink / raw)
  To: igt-dev

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


On 15-11-2022 22:38, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
>
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>
> V2: - Use updated helper name
>
> Signed-off-by: Bhanuprakash Modem<bhanuprakash.modem@intel.com>

Reviewed-by: Ananya Sharma <ananya.sharma@intel.com>

> ---
>   tests/kms_prime.c | 11 +++++++----
>   1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/tests/kms_prime.c b/tests/kms_prime.c
> index 097c2f2a..d4a92651 100644
> --- a/tests/kms_prime.c
> +++ b/tests/kms_prime.c
> @@ -89,14 +89,17 @@ static igt_output_t *setup_display(int importer_fd, igt_display_t *display,
>   	bool found = false;
>   
>   	for_each_pipe_with_valid_output(display, *pipe, output) {
> -		found = true;
> -		break;
> +		igt_display_reset(display);
> +
> +		igt_output_set_pipe(output, *pipe);
> +		if (i915_pipe_output_combo_valid(display)) {
> +			found = true;
> +			break;
> +		}
>   	}
>   
>   	igt_require_f(found, "No valid connector/pipe found\n");
>   
> -	igt_display_reset(display);
> -	igt_output_set_pipe(output, *pipe);
>   	return output;
>   }
>   

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

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

* Re: [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: " Bhanuprakash Modem
@ 2022-12-28 10:54   ` Sharma, Ananya
  0 siblings, 0 replies; 94+ messages in thread
From: Sharma, Ananya @ 2022-12-28 10:54 UTC (permalink / raw)
  To: igt-dev


On 15-11-2022 22:38, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
>
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
>
> V2: - Use updated helper name
>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
Reviewed-by: Ananya Sharma <ananya.sharma@intel.com>
> ---
>   tests/kms_universal_plane.c | 94 +++++++++++++++++++++++++++++++++----
>   1 file changed, 84 insertions(+), 10 deletions(-)
>
> diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
> index dd8fa193..2a9eb021 100644
> --- a/tests/kms_universal_plane.c
> +++ b/tests/kms_universal_plane.c
> @@ -381,6 +381,9 @@ sanity_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>   
>   	igt_require_pipe(&data->display, pipe);
>   
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
>   	igt_output_set_pipe(output, pipe);
>   	mode = igt_output_get_mode(output);
>   
> @@ -494,6 +497,9 @@ pageflip_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>   
>   	igt_require_pipe(&data->display, pipe);
>   
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
>   	igt_output_set_pipe(output, pipe);
>   
>   	pageflip_test_init(&test, output, pipe);
> @@ -604,6 +610,9 @@ cursor_leak_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>   	igt_require(display->has_cursor_plane);
>   	igt_require_intel(data->drm_fd);
>   
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
>   	igt_output_set_pipe(output, pipe);
>   	mode = igt_output_get_mode(output);
>   
> @@ -731,6 +740,9 @@ pageflip_win_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>   	igt_skip_on(is_i915_device(data->drm_fd) && data->display_ver < 9);
>   	igt_require_pipe(&data->display, pipe);
>   
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
>   	igt_output_set_pipe(output, pipe);
>   
>   	gen9_test_init(&test, output, pipe);
> @@ -766,6 +778,22 @@ pageflip_win_test_pipe(data_t *data, enum pipe pipe, igt_output_t *output)
>   	gen9_test_fini(&test, output);
>   }
>   
> +static bool
> +pipe_output_combo_valid(igt_display_t *display,
> +			enum pipe pipe, igt_output_t *output)
> +{
> +	bool ret = true;
> +
> +	igt_display_reset(display);
> +
> +	igt_output_set_pipe(output, pipe);
> +	if (!i915_pipe_output_combo_valid(display))
> +		ret = false;
> +	igt_output_set_pipe(output, PIPE_NONE);
> +
> +	return ret;
> +}
> +
>   static void
>   run_tests_for_pipe(data_t *data, enum pipe pipe)
>   {
> @@ -784,34 +812,79 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
>   
>   	igt_describe("Check the switching between different primary plane fbs with CRTC off");
>   	igt_subtest_f("universal-plane-pipe-%s-functional",
> -		      kmstest_pipe_name(pipe))
> -		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +		      kmstest_pipe_name(pipe)) {
> +		bool found = false;
> +
> +		for_each_valid_output_on_pipe(&data->display, pipe, output) {
> +			if (!pipe_output_combo_valid(&data->display, pipe, output))
> +				continue;
> +
> +			found = true;
>   			functional_test_pipe(data, pipe, output);
> +		}
> +		igt_require_f(found, "No valid pipe/output combo found.\n");
> +	}
>   
>   	igt_describe("Test for scale-up or scale-down using universal plane API without covering CRTC");
>   	igt_subtest_f("universal-plane-pipe-%s-sanity",
> -		      kmstest_pipe_name(pipe))
> -		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +		      kmstest_pipe_name(pipe)) {
> +		bool found = false;
> +
> +		for_each_valid_output_on_pipe(&data->display, pipe, output) {
> +			if (!pipe_output_combo_valid(&data->display, pipe, output))
> +				continue;
> +
> +			found = true;
>   			sanity_test_pipe(data, pipe, output);
> +		}
> +		igt_require_f(found, "No valid pipe/output combo found.\n");
> +	}
>   
>   	igt_describe("Check pageflips while primary plane is disabled before IOCTL or between IOCTL"
>   			" and pageflip execution");
>   	igt_subtest_f("disable-primary-vs-flip-pipe-%s",
> -		      kmstest_pipe_name(pipe))
> -		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +		      kmstest_pipe_name(pipe)) {
> +		bool found = false;
> +
> +		for_each_valid_output_on_pipe(&data->display, pipe, output) {
> +			if (!pipe_output_combo_valid(&data->display, pipe, output))
> +				continue;
> +
> +			found = true;
>   			pageflip_test_pipe(data, pipe, output);
> +		}
> +		igt_require_f(found, "No valid pipe/output combo found.\n");
> +	}
>   
>   	igt_describe("Check for cursor leaks after performing cursor operations");
>   	igt_subtest_f("cursor-fb-leak-pipe-%s",
> -		      kmstest_pipe_name(pipe))
> -		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +		      kmstest_pipe_name(pipe)) {
> +		bool found = false;
> +
> +		for_each_valid_output_on_pipe(&data->display, pipe, output) {
> +			if (!pipe_output_combo_valid(&data->display, pipe, output))
> +				continue;
> +
> +			found = true;
>   			cursor_leak_test_pipe(data, pipe, output);
> +		}
> +		igt_require_f(found, "No valid pipe/output combo found.\n");
> +	}
>   
>   	igt_describe("Check if pageflip succeeds in windowed setting");
>   	igt_subtest_f("universal-plane-pageflip-windowed-pipe-%s",
> -		      kmstest_pipe_name(pipe))
> -		for_each_valid_output_on_pipe(&data->display, pipe, output)
> +		      kmstest_pipe_name(pipe)) {
> +		bool found = false;
> +
> +		for_each_valid_output_on_pipe(&data->display, pipe, output) {
> +			if (!pipe_output_combo_valid(&data->display, pipe, output))
> +				continue;
> +
> +			found = true;
>   			pageflip_win_test_pipe(data, pipe, output);
> +		}
> +		igt_require_f(found, "No valid pipe/output combo found.\n");
> +	}
>   }
>   
>   static data_t data;
> @@ -829,6 +902,7 @@ igt_main
>   
>   		igt_require_pipe_crc(data.drm_fd);
>   		igt_display_require(&data.display, data.drm_fd);
> +		igt_display_require_output(&data.display);
>   	}
>   
>   	for_each_pipe_static(pipe) {

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

* Re: [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: " Bhanuprakash Modem
@ 2022-12-28 18:30   ` Swati Sharma
  0 siblings, 0 replies; 94+ messages in thread
From: Swati Sharma @ 2022-12-28 18:30 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev

Hi Bhanu,

Don't try to do many things in one patch. Create smaller patches. For 
instance in this patch, only big joiner check should haven been 
introduced and rest all cleanup should have been separate patch.
However, for now

Reviewed-by: Swati Sharma <swati2.sharma@intel.com>

On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/kms_atomic.c | 32 ++++++++++++++++++++++++++++----
>   1 file changed, 28 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
> index 2a3fb74b..61117a3f 100644
> --- a/tests/kms_atomic.c
> +++ b/tests/kms_atomic.c
> @@ -1265,6 +1265,10 @@ static void atomic_plane_damage(igt_pipe_t *pipe, igt_plane_t *plane, struct igt
>   
>   static void atomic_setup(igt_display_t *display, enum pipe pipe, igt_output_t *output, igt_plane_t *primary, struct igt_fb *fb)
>   {
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	igt_display_reset(display);
>   	igt_output_set_pipe(output, pipe);
>   	igt_plane_set_fb(primary, fb);
>   
> @@ -1293,6 +1297,7 @@ igt_main
>   	igt_plane_t *primary = NULL;
>   	drmModeModeInfo *mode;
>   	struct igt_fb fb;
> +	bool valid_config = false;
>   
>   	igt_fixture {
>   		display.drm_fd = drm_open_driver_master(DRIVER_ANY);
> @@ -1303,8 +1308,16 @@ igt_main
>   		igt_require(display.is_atomic);
>   		igt_display_require_output(&display);
>   
> -		for_each_pipe_with_valid_output(&display, pipe, output)
> -			break;
> +		for_each_pipe_with_valid_output(&display, pipe, output) {
> +			igt_display_reset(&display);
> +
> +			igt_output_set_pipe(output, pipe);
> +			if (i915_pipe_output_combo_valid(&display)) {
> +				valid_config = true;
> +				break;
> +			}
> +		}
> +		igt_require(valid_config);
>   
>   		pipe_obj = &display.pipes[pipe];
>   		primary = igt_pipe_get_plane_type(pipe_obj, DRM_PLANE_TYPE_PRIMARY);
> @@ -1342,9 +1355,13 @@ igt_main
>   	igt_subtest("plane-primary-overlay-mutable-zpos") {
>   		uint32_t format_primary = DRM_FORMAT_ARGB8888;
>   		uint32_t format_overlay = DRM_FORMAT_ARGB1555;
> +		igt_plane_t *overlay;
>   
> -		igt_plane_t *overlay =
> -			igt_pipe_get_plane_type(pipe_obj, DRM_PLANE_TYPE_OVERLAY);
> +		igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +			 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +		igt_display_reset(&display);
> +		overlay = igt_pipe_get_plane_type(pipe_obj, DRM_PLANE_TYPE_OVERLAY);
>   		igt_require(overlay);
>   
>   		igt_require(igt_plane_has_prop(primary, IGT_PLANE_ZPOS));
> @@ -1361,6 +1378,10 @@ igt_main
>   	igt_describe("Verify the reported zpos property of planes by making sure "\
>   		     "only higher zpos planes cover the lower zpos ones.");
>   	igt_subtest("plane-immutable-zpos") {
> +		igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +			 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +		igt_display_reset(&display);
>   		igt_output_set_pipe(output, pipe);
>   		plane_immutable_zpos(&display, pipe_obj, output);
>   	}
> @@ -1370,6 +1391,9 @@ igt_main
>   	igt_subtest("test-only") {
>   		atomic_clear(&display, pipe, primary, output);
>   
> +		igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +			 kmstest_pipe_name(pipe), igt_output_name(output));
> +
>   		test_only(pipe_obj, primary, output);
>   	}
>   

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
@ 2022-12-28 18:43   ` Swati Sharma
  2022-12-29  5:02     ` Modem, Bhanuprakash
  2022-12-29  5:17   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
  1 sibling, 1 reply; 94+ messages in thread
From: Swati Sharma @ 2022-12-28 18:43 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev



On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/i915/kms_flip_scaled_crc.c | 13 ++++++++++++-
>   1 file changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/i915/kms_flip_scaled_crc.c b/tests/i915/kms_flip_scaled_crc.c
> index 10465ca7..1b497dcc 100644
> --- a/tests/i915/kms_flip_scaled_crc.c
> +++ b/tests/i915/kms_flip_scaled_crc.c
> @@ -648,8 +648,13 @@ igt_main
>   			for_each_pipe(&data.display, pipe) {
>   				bool found = false;
>   				for_each_valid_output_on_pipe(&data.display, pipe, output) {
> +					igt_display_reset(&data.display);
> +
>   					modetoset = find_mode(&data, output);
> -					if (modetoset) {
> +					igt_output_set_pipe(output, pipe);
> +					igt_output_override_mode(output, modetoset);
 >> why we have to override mode here?
> +
> +					if (modetoset && i915_pipe_output_combo_valid(&data.display)) {
>   						found = true;
>   						igt_dynamic_f("pipe-%s-valid-mode", kmstest_pipe_name(pipe))
>   							run_tests(&data, index, pipe, output, modetoset);
> @@ -658,6 +663,12 @@ igt_main
>   				}
>   				if (!found) {
>   					for_each_valid_output_on_pipe(&data.display, pipe, output) {
> +						igt_display_reset(&data.display);
> +
> +						igt_output_set_pipe(output, pipe);
> +						if (!i915_pipe_output_combo_valid(&data.display))
> +							continue;
> +
>   						igt_dynamic_f("pipe-%s-default-mode", kmstest_pipe_name(pipe))
>   							run_tests(&data, index, pipe, output, modetoset);
>   					}

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: Add support for Bigjoiner
  2022-12-28 18:43   ` Swati Sharma
@ 2022-12-29  5:02     ` Modem, Bhanuprakash
  0 siblings, 0 replies; 94+ messages in thread
From: Modem, Bhanuprakash @ 2022-12-29  5:02 UTC (permalink / raw)
  To: Swati Sharma, igt-dev

On Thu-29-12-2022 12:13 am, Swati Sharma wrote:
> 
> 
> On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
>> This patch will add a check to Skip the subtest if a selected pipe/output
>> combo won't support Bigjoiner or 8K mode.
>>
>> Example:
>> * Pipe-D wont support a mode > 5K
>> * To use 8K mode on a pipe then consecutive pipe must be available & 
>> free.
>>
>> V2: - Use updated helper name
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>> ---
>>   tests/i915/kms_flip_scaled_crc.c | 13 ++++++++++++-
>>   1 file changed, 12 insertions(+), 1 deletion(-)
>>
>> diff --git a/tests/i915/kms_flip_scaled_crc.c 
>> b/tests/i915/kms_flip_scaled_crc.c
>> index 10465ca7..1b497dcc 100644
>> --- a/tests/i915/kms_flip_scaled_crc.c
>> +++ b/tests/i915/kms_flip_scaled_crc.c
>> @@ -648,8 +648,13 @@ igt_main
>>               for_each_pipe(&data.display, pipe) {
>>                   bool found = false;
>>                   for_each_valid_output_on_pipe(&data.display, pipe, 
>> output) {
>> +                    igt_display_reset(&data.display);
>> +
>>                       modetoset = find_mode(&data, output);
>> -                    if (modetoset) {
>> +                    igt_output_set_pipe(output, pipe);
>> +                    igt_output_override_mode(output, modetoset);
>why we have to override mode here?

Without override, i915_pipe_output_combo_valid() will check the validity 
of (pipe, output, default_mode) but run_tests() is supposed to run with 
(pipe, output, override_mode).

Example:
Consider the 8K panel, with 4k mode as default. (pipe-D + output + 
4K_mode) is valid for i915_pipe_output_combo_valid(). But run_test() 
will try with (pipe-D + output + 8K_mode) which is invalid.

So we must check the validity of the combo which is expected to run.

>> +
>> +                    if (modetoset && 
>> i915_pipe_output_combo_valid(&data.display)) {
>>                           found = true;
>>                           igt_dynamic_f("pipe-%s-valid-mode", 
>> kmstest_pipe_name(pipe))
>>                               run_tests(&data, index, pipe, output, 
>> modetoset);
>> @@ -658,6 +663,12 @@ igt_main
>>                   }
>>                   if (!found) {
>>                       for_each_valid_output_on_pipe(&data.display, 
>> pipe, output) {
>> +                        igt_display_reset(&data.display);
>> +
>> +                        igt_output_set_pipe(output, pipe);
>> +                        if 
>> (!i915_pipe_output_combo_valid(&data.display))
>> +                            continue;
>> +

Just realized, we need to update the "modetoset" with NULL, since it 
becomes dangling due to the igt_display_reset().

Will float a new rev to fix this.

- Bhanu

>>                           igt_dynamic_f("pipe-%s-default-mode", 
>> kmstest_pipe_name(pipe))
>>                               run_tests(&data, index, pipe, output, 
>> modetoset);
>>                       }
> 

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

* [igt-dev] [i-g-t v6 44/52] tests/i915/kms_flip_scaled_crc: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
  2022-12-28 18:43   ` Swati Sharma
@ 2022-12-29  5:17   ` Bhanuprakash Modem
  2022-12-30 14:06     ` Swati Sharma
  1 sibling, 1 reply; 94+ messages in thread
From: Bhanuprakash Modem @ 2022-12-29  5:17 UTC (permalink / raw)
  To: igt-dev, swati2.sharma

This patch will add a check to Skip the subtest if a selected pipe/output
combo won't support Bigjoiner or 8K mode.

Example:
* Pipe-D wont support a mode > 5K
* To use 8K mode on a pipe then consecutive pipe must be available & free.

V2: - Use updated helper name
V3: - Fix dangling pointer

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/i915/kms_flip_scaled_crc.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_flip_scaled_crc.c b/tests/i915/kms_flip_scaled_crc.c
index 10465ca7..7f7a59b9 100644
--- a/tests/i915/kms_flip_scaled_crc.c
+++ b/tests/i915/kms_flip_scaled_crc.c
@@ -648,8 +648,13 @@ igt_main
 			for_each_pipe(&data.display, pipe) {
 				bool found = false;
 				for_each_valid_output_on_pipe(&data.display, pipe, output) {
+					igt_display_reset(&data.display);
+
 					modetoset = find_mode(&data, output);
-					if (modetoset) {
+					igt_output_set_pipe(output, pipe);
+					igt_output_override_mode(output, modetoset);
+
+					if (modetoset && i915_pipe_output_combo_valid(&data.display)) {
 						found = true;
 						igt_dynamic_f("pipe-%s-valid-mode", kmstest_pipe_name(pipe))
 							run_tests(&data, index, pipe, output, modetoset);
@@ -658,6 +663,13 @@ igt_main
 				}
 				if (!found) {
 					for_each_valid_output_on_pipe(&data.display, pipe, output) {
+						igt_display_reset(&data.display);
+
+						igt_output_set_pipe(output, pipe);
+						if (!i915_pipe_output_combo_valid(&data.display))
+							continue;
+
+						modetoset = NULL;
 						igt_dynamic_f("pipe-%s-default-mode", kmstest_pipe_name(pipe))
 							run_tests(&data, index, pipe, output, modetoset);
 					}
-- 
2.39.0

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

* Re: [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: " Bhanuprakash Modem
@ 2022-12-29  9:28   ` Swati Sharma
  2022-12-30  5:45     ` Modem, Bhanuprakash
  0 siblings, 1 reply; 94+ messages in thread
From: Swati Sharma @ 2022-12-29  9:28 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev

Hi Bhanu,

The intention of cdclk test is to bump cdclk when we have transition
from low resolution to high resolution (this was tested)
Changes done in test_mode_transition_on_all_outputs, you have set
high resolution first followed by low resolution. Why?

On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
> As many 2x tests are currently running on Pipe-A & B only, those
> tests will always SKIP if there is any 8K supported panel in the
> config. Instead of Skipping the test, add some intelligence to
> the subtest to identify the valid pipe/output combo to execute
> the subtest.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/i915/kms_cdclk.c | 93 +++++++++++++++++++++++-------------------
>   1 file changed, 51 insertions(+), 42 deletions(-)
> 
> diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
> index 991a7c50..ce945623 100644
> --- a/tests/i915/kms_cdclk.c
> +++ b/tests/i915/kms_cdclk.c
> @@ -243,20 +243,17 @@ static void test_mode_transition_on_all_outputs(data_t *data)
>   	int debugfs_fd = data->debugfs_fd;
>   	drmModeModeInfo *mode, *mode_hi, *mode_lo;
>   	igt_output_t *output;
> -	int valid_outputs = 0;
>   	int cdclk_ref, cdclk_new;
>   	uint16_t width = 0, height = 0;
>   	struct igt_fb fb;
>   	igt_pipe_t *pipe;
>   	igt_plane_t *plane;
> -	int i = 0, j = 0;
> +	enum pipe p, active_pipes[IGT_MAX_PIPES];
> +	int i = 0, active_pipe_count = 0;
>   
>   	do_cleanup_display(display);
>   	igt_display_reset(display);
>   
> -	for_each_connected_output(&data->display, output)
> -		valid_outputs++;
> -
>   	for_each_connected_output(display, output) {
>   		mode = igt_output_get_mode(output);
>   		igt_assert(mode);
> @@ -269,52 +266,59 @@ static void test_mode_transition_on_all_outputs(data_t *data)
>   
>   	igt_create_pattern_fb(data->drm_fd, width, height, DRM_FORMAT_XRGB8888,
>   			      DRM_FORMAT_MOD_LINEAR, &fb);
> -	i = 0;
> +
>   	for_each_connected_output(display, output) {
> -		pipe = &display->pipes[i];
> -		plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> +		for_each_pipe(display, p) {
> +			mode = NULL;
>   
> -		mode = NULL;
> +			igt_output_set_pipe(output, p);
> +			mode = igt_output_get_mode(output);
> +			igt_assert(mode);
>   
> -		igt_output_set_pipe(output, i);
> -		mode = igt_output_get_mode(output);
> -		igt_assert(mode);
> +			mode_hi = get_highres_mode(output);
> +			igt_require(mode_hi != NULL);
> +
> +			igt_output_override_mode(output, mode_hi);
> +			if (!i915_pipe_output_combo_valid(display)) {
> +				igt_output_set_pipe(output, PIPE_NONE);
> +				continue;
> +			}
>   
> -		mode_lo = get_lowres_mode(output);
> +			active_pipes[active_pipe_count++] = p;
> +			pipe = &display->pipes[p];
> +			plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> +			igt_plane_set_fb(plane, &fb);
> +			igt_fb_set_size(&fb, plane, mode_hi->hdisplay, mode_hi->vdisplay);
> +			igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
>   
> -		igt_output_override_mode(output, mode_lo);
> -		igt_plane_set_fb(plane, &fb);
> -		igt_fb_set_size(&fb, plane, mode_lo->hdisplay, mode_lo->vdisplay);
> -		igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
> -		i++;
> +			break;
> +		}
>   	}
>   
>   	igt_display_commit2(display, COMMIT_ATOMIC);
> -	cdclk_ref = get_current_cdclk_freq(debugfs_fd);
> +	cdclk_new = get_current_cdclk_freq(debugfs_fd);
>   
> -	j = 0;
>   	for_each_connected_output(display, output) {
> -		pipe = &display->pipes[j];
> -		plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> +		for (i = 0; i < active_pipe_count; i++) {
> +			pipe = &display->pipes[active_pipes[i]];
> +			plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>   
> -		mode = NULL;
> +			mode = NULL;
> +			igt_output_set_pipe(output, i);
> +			mode = igt_output_get_mode(output);
> +			igt_assert(mode);
>   
> -		igt_output_set_pipe(output, j);
> -		mode = igt_output_get_mode(output);
> -		igt_assert(mode);
> -
> -		mode_hi = get_highres_mode(output);
> -		igt_require(mode_hi != NULL);
> +			mode_lo = get_lowres_mode(output);
>   
> -		igt_output_override_mode(output, mode_hi);
> -		igt_plane_set_fb(plane, &fb);
> -		igt_fb_set_size(&fb, plane, mode_hi->hdisplay, mode_hi->vdisplay);
> -		igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
> -		j++;
> +			igt_output_override_mode(output, mode_lo);
> +			igt_plane_set_fb(plane, &fb);
> +			igt_fb_set_size(&fb, plane, mode_lo->hdisplay, mode_lo->vdisplay);
> +			igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
> +		}
>   	}
>   
>   	igt_display_commit2(display, COMMIT_ATOMIC);
> -	cdclk_new = get_current_cdclk_freq(debugfs_fd);
> +	cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>   	igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
>   
>   	/* cdclk should bump */
> @@ -332,13 +336,18 @@ static void run_cdclk_test(data_t *data, uint32_t flags)
>   	enum pipe pipe;
>   
>   	for_each_pipe_with_valid_output(display, pipe, output) {
> -		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name)
> -			if (igt_pipe_connector_valid(pipe, output)) {
> -				if (flags & TEST_PLANESCALING)
> -					test_plane_scaling(data, pipe, output);
> -				if (flags & TEST_MODETRANSITION)
> -					test_mode_transition(data, pipe, output);
> -			}
> +		igt_output_set_pipe(output, pipe);
> +		if (!i915_pipe_output_combo_valid(display)) {
> +			igt_output_set_pipe(output, PIPE_NONE);
> +			continue;
> +		}
> +
> +		igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) {
> +			if (flags & TEST_PLANESCALING)
> +				test_plane_scaling(data, pipe, output);
> +			if (flags & TEST_MODETRANSITION)
> +				test_mode_transition(data, pipe, output);
> +		}
>   	}
>   }
>   

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add support for Bigjoiner
  2022-12-29  9:28   ` Swati Sharma
@ 2022-12-30  5:45     ` Modem, Bhanuprakash
  2022-12-30 14:01       ` Swati Sharma
  2023-01-04  7:04       ` Swati Sharma
  0 siblings, 2 replies; 94+ messages in thread
From: Modem, Bhanuprakash @ 2022-12-30  5:45 UTC (permalink / raw)
  To: Swati Sharma, igt-dev

On Thu-29-12-2022 02:58 pm, Swati Sharma wrote:
> Hi Bhanu,
> 
> The intention of cdclk test is to bump cdclk when we have transition
> from low resolution to high resolution (this was tested)
> Changes done in test_mode_transition_on_all_outputs, you have set
> high resolution first followed by low resolution. Why?

I thought, we just need to check the clock by changing the resolution in 
any order (high to low (or) high to low).

Also, realized this test is limited to 4K, hence we can drop this patch.

- Bhanu

> 
> On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
>> As many 2x tests are currently running on Pipe-A & B only, those
>> tests will always SKIP if there is any 8K supported panel in the
>> config. Instead of Skipping the test, add some intelligence to
>> the subtest to identify the valid pipe/output combo to execute
>> the subtest.
>>
>> V2: - Use updated helper name
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>> ---
>>   tests/i915/kms_cdclk.c | 93 +++++++++++++++++++++++-------------------
>>   1 file changed, 51 insertions(+), 42 deletions(-)
>>
>> diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
>> index 991a7c50..ce945623 100644
>> --- a/tests/i915/kms_cdclk.c
>> +++ b/tests/i915/kms_cdclk.c
>> @@ -243,20 +243,17 @@ static void 
>> test_mode_transition_on_all_outputs(data_t *data)
>>       int debugfs_fd = data->debugfs_fd;
>>       drmModeModeInfo *mode, *mode_hi, *mode_lo;
>>       igt_output_t *output;
>> -    int valid_outputs = 0;
>>       int cdclk_ref, cdclk_new;
>>       uint16_t width = 0, height = 0;
>>       struct igt_fb fb;
>>       igt_pipe_t *pipe;
>>       igt_plane_t *plane;
>> -    int i = 0, j = 0;
>> +    enum pipe p, active_pipes[IGT_MAX_PIPES];
>> +    int i = 0, active_pipe_count = 0;
>>       do_cleanup_display(display);
>>       igt_display_reset(display);
>> -    for_each_connected_output(&data->display, output)
>> -        valid_outputs++;
>> -
>>       for_each_connected_output(display, output) {
>>           mode = igt_output_get_mode(output);
>>           igt_assert(mode);
>> @@ -269,52 +266,59 @@ static void 
>> test_mode_transition_on_all_outputs(data_t *data)
>>       igt_create_pattern_fb(data->drm_fd, width, height, 
>> DRM_FORMAT_XRGB8888,
>>                     DRM_FORMAT_MOD_LINEAR, &fb);
>> -    i = 0;
>> +
>>       for_each_connected_output(display, output) {
>> -        pipe = &display->pipes[i];
>> -        plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>> +        for_each_pipe(display, p) {
>> +            mode = NULL;
>> -        mode = NULL;
>> +            igt_output_set_pipe(output, p);
>> +            mode = igt_output_get_mode(output);
>> +            igt_assert(mode);
>> -        igt_output_set_pipe(output, i);
>> -        mode = igt_output_get_mode(output);
>> -        igt_assert(mode);
>> +            mode_hi = get_highres_mode(output);
>> +            igt_require(mode_hi != NULL);
>> +
>> +            igt_output_override_mode(output, mode_hi);
>> +            if (!i915_pipe_output_combo_valid(display)) {
>> +                igt_output_set_pipe(output, PIPE_NONE);
>> +                continue;
>> +            }
>> -        mode_lo = get_lowres_mode(output);
>> +            active_pipes[active_pipe_count++] = p;
>> +            pipe = &display->pipes[p];
>> +            plane = igt_pipe_get_plane_type(pipe, 
>> DRM_PLANE_TYPE_PRIMARY);
>> +            igt_plane_set_fb(plane, &fb);
>> +            igt_fb_set_size(&fb, plane, mode_hi->hdisplay, 
>> mode_hi->vdisplay);
>> +            igt_plane_set_size(plane, mode_hi->hdisplay, 
>> mode_hi->vdisplay);
>> -        igt_output_override_mode(output, mode_lo);
>> -        igt_plane_set_fb(plane, &fb);
>> -        igt_fb_set_size(&fb, plane, mode_lo->hdisplay, 
>> mode_lo->vdisplay);
>> -        igt_plane_set_size(plane, mode_lo->hdisplay, mode_lo->vdisplay);
>> -        i++;
>> +            break;
>> +        }
>>       }
>>       igt_display_commit2(display, COMMIT_ATOMIC);
>> -    cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>> +    cdclk_new = get_current_cdclk_freq(debugfs_fd);
>> -    j = 0;
>>       for_each_connected_output(display, output) {
>> -        pipe = &display->pipes[j];
>> -        plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>> +        for (i = 0; i < active_pipe_count; i++) {
>> +            pipe = &display->pipes[active_pipes[i]];
>> +            plane = igt_pipe_get_plane_type(pipe, 
>> DRM_PLANE_TYPE_PRIMARY);
>> -        mode = NULL;
>> +            mode = NULL;
>> +            igt_output_set_pipe(output, i);
>> +            mode = igt_output_get_mode(output);
>> +            igt_assert(mode);
>> -        igt_output_set_pipe(output, j);
>> -        mode = igt_output_get_mode(output);
>> -        igt_assert(mode);
>> -
>> -        mode_hi = get_highres_mode(output);
>> -        igt_require(mode_hi != NULL);
>> +            mode_lo = get_lowres_mode(output);
>> -        igt_output_override_mode(output, mode_hi);
>> -        igt_plane_set_fb(plane, &fb);
>> -        igt_fb_set_size(&fb, plane, mode_hi->hdisplay, 
>> mode_hi->vdisplay);
>> -        igt_plane_set_size(plane, mode_hi->hdisplay, mode_hi->vdisplay);
>> -        j++;
>> +            igt_output_override_mode(output, mode_lo);
>> +            igt_plane_set_fb(plane, &fb);
>> +            igt_fb_set_size(&fb, plane, mode_lo->hdisplay, 
>> mode_lo->vdisplay);
>> +            igt_plane_set_size(plane, mode_lo->hdisplay, 
>> mode_lo->vdisplay);
>> +        }
>>       }
>>       igt_display_commit2(display, COMMIT_ATOMIC);
>> -    cdclk_new = get_current_cdclk_freq(debugfs_fd);
>> +    cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>>       igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
>>       /* cdclk should bump */
>> @@ -332,13 +336,18 @@ static void run_cdclk_test(data_t *data, 
>> uint32_t flags)
>>       enum pipe pipe;
>>       for_each_pipe_with_valid_output(display, pipe, output) {
>> -        igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), 
>> output->name)
>> -            if (igt_pipe_connector_valid(pipe, output)) {
>> -                if (flags & TEST_PLANESCALING)
>> -                    test_plane_scaling(data, pipe, output);
>> -                if (flags & TEST_MODETRANSITION)
>> -                    test_mode_transition(data, pipe, output);
>> -            }
>> +        igt_output_set_pipe(output, pipe);
>> +        if (!i915_pipe_output_combo_valid(display)) {
>> +            igt_output_set_pipe(output, PIPE_NONE);
>> +            continue;
>> +        }
>> +
>> +        igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), 
>> output->name) {
>> +            if (flags & TEST_PLANESCALING)
>> +                test_plane_scaling(data, pipe, output);
>> +            if (flags & TEST_MODETRANSITION)
>> +                test_mode_transition(data, pipe, output);
>> +        }
>>       }
>>   }
> 

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

* Re: [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add support for Bigjoiner
  2022-12-30  5:45     ` Modem, Bhanuprakash
@ 2022-12-30 14:01       ` Swati Sharma
  2023-01-04  7:04       ` Swati Sharma
  1 sibling, 0 replies; 94+ messages in thread
From: Swati Sharma @ 2022-12-30 14:01 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev



On 30-Dec-22 11:15 AM, Modem, Bhanuprakash wrote:
> On Thu-29-12-2022 02:58 pm, Swati Sharma wrote:
>> Hi Bhanu,
>>
>> The intention of cdclk test is to bump cdclk when we have transition
>> from low resolution to high resolution (this was tested)
>> Changes done in test_mode_transition_on_all_outputs, you have set
>> high resolution first followed by low resolution. Why?
> 
> I thought, we just need to check the clock by changing the resolution in 
> any order (high to low (or) high to low).

That's what, this test is tested from high to low and not vice versa.

> 
> Also, realized this test is limited to 4K, hence we can drop this patch.

cdclk transition should happen from 8K too. But i guess it will require 
few more changes.

> 
> - Bhanu
> 
>>
>> On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
>>> As many 2x tests are currently running on Pipe-A & B only, those
>>> tests will always SKIP if there is any 8K supported panel in the
>>> config. Instead of Skipping the test, add some intelligence to
>>> the subtest to identify the valid pipe/output combo to execute
>>> the subtest.
>>>
>>> V2: - Use updated helper name
>>>
>>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>>> ---
>>>   tests/i915/kms_cdclk.c | 93 +++++++++++++++++++++++-------------------
>>>   1 file changed, 51 insertions(+), 42 deletions(-)
>>>
>>> diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
>>> index 991a7c50..ce945623 100644
>>> --- a/tests/i915/kms_cdclk.c
>>> +++ b/tests/i915/kms_cdclk.c
>>> @@ -243,20 +243,17 @@ static void 
>>> test_mode_transition_on_all_outputs(data_t *data)
>>>       int debugfs_fd = data->debugfs_fd;
>>>       drmModeModeInfo *mode, *mode_hi, *mode_lo;
>>>       igt_output_t *output;
>>> -    int valid_outputs = 0;
>>>       int cdclk_ref, cdclk_new;
>>>       uint16_t width = 0, height = 0;
>>>       struct igt_fb fb;
>>>       igt_pipe_t *pipe;
>>>       igt_plane_t *plane;
>>> -    int i = 0, j = 0;
>>> +    enum pipe p, active_pipes[IGT_MAX_PIPES];
>>> +    int i = 0, active_pipe_count = 0;
>>>       do_cleanup_display(display);
>>>       igt_display_reset(display);
>>> -    for_each_connected_output(&data->display, output)
>>> -        valid_outputs++;
>>> -
>>>       for_each_connected_output(display, output) {
>>>           mode = igt_output_get_mode(output);
>>>           igt_assert(mode);
>>> @@ -269,52 +266,59 @@ static void 
>>> test_mode_transition_on_all_outputs(data_t *data)
>>>       igt_create_pattern_fb(data->drm_fd, width, height, 
>>> DRM_FORMAT_XRGB8888,
>>>                     DRM_FORMAT_MOD_LINEAR, &fb);
>>> -    i = 0;
>>> +
>>>       for_each_connected_output(display, output) {
>>> -        pipe = &display->pipes[i];
>>> -        plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>>> +        for_each_pipe(display, p) {
>>> +            mode = NULL;
>>> -        mode = NULL;
>>> +            igt_output_set_pipe(output, p);
>>> +            mode = igt_output_get_mode(output);
>>> +            igt_assert(mode);
>>> -        igt_output_set_pipe(output, i);
>>> -        mode = igt_output_get_mode(output);
>>> -        igt_assert(mode);
>>> +            mode_hi = get_highres_mode(output);
>>> +            igt_require(mode_hi != NULL);
>>> +
>>> +            igt_output_override_mode(output, mode_hi);
>>> +            if (!i915_pipe_output_combo_valid(display)) {
>>> +                igt_output_set_pipe(output, PIPE_NONE);
>>> +                continue;
>>> +            }
>>> -        mode_lo = get_lowres_mode(output);
>>> +            active_pipes[active_pipe_count++] = p;
>>> +            pipe = &display->pipes[p];
>>> +            plane = igt_pipe_get_plane_type(pipe, 
>>> DRM_PLANE_TYPE_PRIMARY);
>>> +            igt_plane_set_fb(plane, &fb);
>>> +            igt_fb_set_size(&fb, plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> +            igt_plane_set_size(plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> -        igt_output_override_mode(output, mode_lo);
>>> -        igt_plane_set_fb(plane, &fb);
>>> -        igt_fb_set_size(&fb, plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> -        igt_plane_set_size(plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> -        i++;
>>> +            break;
>>> +        }
>>>       }
>>>       igt_display_commit2(display, COMMIT_ATOMIC);
>>> -    cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>>> +    cdclk_new = get_current_cdclk_freq(debugfs_fd);
>>> -    j = 0;
>>>       for_each_connected_output(display, output) {
>>> -        pipe = &display->pipes[j];
>>> -        plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>>> +        for (i = 0; i < active_pipe_count; i++) {
>>> +            pipe = &display->pipes[active_pipes[i]];
>>> +            plane = igt_pipe_get_plane_type(pipe, 
>>> DRM_PLANE_TYPE_PRIMARY);
>>> -        mode = NULL;
>>> +            mode = NULL;
>>> +            igt_output_set_pipe(output, i);
>>> +            mode = igt_output_get_mode(output);
>>> +            igt_assert(mode);
>>> -        igt_output_set_pipe(output, j);
>>> -        mode = igt_output_get_mode(output);
>>> -        igt_assert(mode);
>>> -
>>> -        mode_hi = get_highres_mode(output);
>>> -        igt_require(mode_hi != NULL);
>>> +            mode_lo = get_lowres_mode(output);
>>> -        igt_output_override_mode(output, mode_hi);
>>> -        igt_plane_set_fb(plane, &fb);
>>> -        igt_fb_set_size(&fb, plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> -        igt_plane_set_size(plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> -        j++;
>>> +            igt_output_override_mode(output, mode_lo);
>>> +            igt_plane_set_fb(plane, &fb);
>>> +            igt_fb_set_size(&fb, plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> +            igt_plane_set_size(plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> +        }
>>>       }
>>>       igt_display_commit2(display, COMMIT_ATOMIC);
>>> -    cdclk_new = get_current_cdclk_freq(debugfs_fd);
>>> +    cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>>>       igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
>>>       /* cdclk should bump */
>>> @@ -332,13 +336,18 @@ static void run_cdclk_test(data_t *data, 
>>> uint32_t flags)
>>>       enum pipe pipe;
>>>       for_each_pipe_with_valid_output(display, pipe, output) {
>>> -        igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), 
>>> output->name)
>>> -            if (igt_pipe_connector_valid(pipe, output)) {
>>> -                if (flags & TEST_PLANESCALING)
>>> -                    test_plane_scaling(data, pipe, output);
>>> -                if (flags & TEST_MODETRANSITION)
>>> -                    test_mode_transition(data, pipe, output);
>>> -            }
>>> +        igt_output_set_pipe(output, pipe);
>>> +        if (!i915_pipe_output_combo_valid(display)) {
>>> +            igt_output_set_pipe(output, PIPE_NONE);
>>> +            continue;
>>> +        }
>>> +
>>> +        igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), 
>>> output->name) {
>>> +            if (flags & TEST_PLANESCALING)
>>> +                test_plane_scaling(data, pipe, output);
>>> +            if (flags & TEST_MODETRANSITION)
>>> +                test_mode_transition(data, pipe, output);
>>> +        }
>>>       }
>>>   }
>>
> 

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v6 44/52] tests/i915/kms_flip_scaled_crc: Add support for Bigjoiner
  2022-12-29  5:17   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
@ 2022-12-30 14:06     ` Swati Sharma
  0 siblings, 0 replies; 94+ messages in thread
From: Swati Sharma @ 2022-12-30 14:06 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev

This patch LGTM.

Reviewed-by: Swati Sharma <swati2.sharma@intel.com>

On 29-Dec-22 10:47 AM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> V3: - Fix dangling pointer
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/i915/kms_flip_scaled_crc.c | 14 +++++++++++++-
>   1 file changed, 13 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/i915/kms_flip_scaled_crc.c b/tests/i915/kms_flip_scaled_crc.c
> index 10465ca7..7f7a59b9 100644
> --- a/tests/i915/kms_flip_scaled_crc.c
> +++ b/tests/i915/kms_flip_scaled_crc.c
> @@ -648,8 +648,13 @@ igt_main
>   			for_each_pipe(&data.display, pipe) {
>   				bool found = false;
>   				for_each_valid_output_on_pipe(&data.display, pipe, output) {
> +					igt_display_reset(&data.display);
> +
>   					modetoset = find_mode(&data, output);
> -					if (modetoset) {
> +					igt_output_set_pipe(output, pipe);
> +					igt_output_override_mode(output, modetoset);
> +
> +					if (modetoset && i915_pipe_output_combo_valid(&data.display)) {
>   						found = true;
>   						igt_dynamic_f("pipe-%s-valid-mode", kmstest_pipe_name(pipe))
>   							run_tests(&data, index, pipe, output, modetoset);
> @@ -658,6 +663,13 @@ igt_main
>   				}
>   				if (!found) {
>   					for_each_valid_output_on_pipe(&data.display, pipe, output) {
> +						igt_display_reset(&data.display);
> +
> +						igt_output_set_pipe(output, pipe);
> +						if (!i915_pipe_output_combo_valid(&data.display))
> +							continue;
> +
> +						modetoset = NULL;
>   						igt_dynamic_f("pipe-%s-default-mode", kmstest_pipe_name(pipe))
>   							run_tests(&data, index, pipe, output, modetoset);
>   					}

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: " Bhanuprakash Modem
@ 2022-12-30 17:48   ` Swati Sharma
  0 siblings, 0 replies; 94+ messages in thread
From: Swati Sharma @ 2022-12-30 17:48 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev

LGTM
Reviewed-by: Swati Sharma <swati2.sharma@intel.com>

On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/kms_scaling_modes.c | 8 ++++++--
>   1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/kms_scaling_modes.c b/tests/kms_scaling_modes.c
> index 039e4a8d..cf637712 100644
> --- a/tests/kms_scaling_modes.c
> +++ b/tests/kms_scaling_modes.c
> @@ -93,13 +93,17 @@ static void test_scaling_mode(data_t *data, uint32_t flags)
>   	enum pipe pipe;
>   
>   	for_each_pipe_with_valid_output(display, pipe, output) {
> +		igt_display_reset(display);
> +
>   		if (!has_scaling_mode(output))
>   			continue;
>   
> +		igt_output_set_pipe(output, pipe);
> +		if (!i915_pipe_output_combo_valid(display))
> +			continue;
> +
>   		igt_dynamic_f("%s-pipe-%s", output->name, kmstest_pipe_name(pipe))
>   			test_scaling_mode_on_output(display, pipe, output, flags);
> -
> -		igt_display_reset(display);
>   	}
>   }
>   

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: Add support for Bigjoiner
  2022-11-15 17:08 ` [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: " Bhanuprakash Modem
@ 2022-12-30 18:41   ` Swati Sharma
  0 siblings, 0 replies; 94+ messages in thread
From: Swati Sharma @ 2022-12-30 18:41 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev

LGTM
Reviewed-by: Swati Sharma <swati2.sharma@intel.com>

On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
> This patch will add a check to Skip the subtest if a selected pipe/output
> combo won't support Bigjoiner or 8K mode.
> 
> Example:
> * Pipe-D wont support a mode > 5K
> * To use 8K mode on a pipe then consecutive pipe must be available & free.
> 
> V2: - Use updated helper name
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/kms_vblank.c | 54 ++++++++++++++++++++++++++++++++++++++++++++--
>   1 file changed, 52 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c
> index 5bd3fefe..f6863af0 100644
> --- a/tests/kms_vblank.c
> +++ b/tests/kms_vblank.c
> @@ -175,6 +175,22 @@ static void run_test(data_t *data, void (*testfunc)(data_t *, int, int))
>   	cleanup_crtc(data, fd, output);
>   }
>   
> +static bool
> +pipe_output_combo_valid(igt_display_t *display,
> +			enum pipe pipe, igt_output_t *output)
> +{
> +	bool ret = true;
> +
> +	igt_display_reset(display);
> +
> +	igt_output_set_pipe(output, pipe);
> +	if (!i915_pipe_output_combo_valid(display))
> +		ret = false;
> +	igt_output_set_pipe(output, PIPE_NONE);
> +
> +	return ret;
> +}
> +
>   static void crtc_id_subtest(data_t *data, int fd)
>   {
>   	igt_display_t *display = &data->display;
> @@ -188,6 +204,15 @@ static void crtc_id_subtest(data_t *data, int fd)
>   		uint64_t val;
>   		union drm_wait_vblank vbl;
>   
> +		igt_display_reset(display);
> +
> +		igt_output_set_pipe(output, p);
> +		if (!i915_pipe_output_combo_valid(display))
> +			continue;
> +
> +		igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +			 kmstest_pipe_name(p), igt_output_name(output));
> +
>   		crtc_id = display->pipes[p].crtc_id;
>   		if (drmGetCap(display->drm_fd, DRM_CAP_CRTC_IN_VBLANK_EVENT, &val) == 0)
>   			expected_crtc_id = crtc_id;
> @@ -449,10 +474,18 @@ static void run_subtests_for_pipe(data_t *data)
>   			igt_subtest_f("pipe-%s-%s-%s",
>   				      kmstest_pipe_name(data->pipe),
>   				      f->name, m->name) {
> +				int found = 0;
> +
>   				for_each_valid_output_on_pipe(&data->display, data->pipe, data->output) {
> +					if (!pipe_output_combo_valid(&data->display, data->pipe, data->output))
> +						continue;
> +
>   					data->flags = m->flags | NOHANG;
>   					run_test(data, f->func);
> +
> +					found++;
>   				}
> +				igt_require_f(found, "No valid pipe/output combo found.\n");
>   			}
>   
>   			/* Skip the -hang version if NOHANG flag is set */
> @@ -464,13 +497,20 @@ static void run_subtests_for_pipe(data_t *data)
>   				      kmstest_pipe_name(data->pipe),
>   				      f->name, m->name) {
>   				igt_hang_t hang;
> +				int found = 0;
>   
>   				hang = igt_allow_hang(data->display.drm_fd, 0, 0);
>   				for_each_valid_output_on_pipe(&data->display, data->pipe, data->output) {
> +					if (!pipe_output_combo_valid(&data->display, data->pipe, data->output))
> +						continue;
> +
>   					data->flags = m->flags;
>   					run_test(data, f->func);
> +
> +					found++;
>   				}
>   				igt_disallow_hang(data->display.drm_fd, hang);
> +				igt_require_f(found, "No valid pipe/output combo found.\n");
>   			}
>   		}
>   	}
> @@ -482,12 +522,22 @@ static void invalid_subtest(data_t *data, int fd)
>   	unsigned long valid_flags;
>   	igt_display_t* display = &data->display;
>   	enum pipe pipe = 0;
> -	igt_output_t* output = igt_get_single_output_for_pipe(display, pipe);
> +	igt_output_t *output;
> +
> +	igt_display_reset(display);
> +
> +	output = igt_get_single_output_for_pipe(display, pipe);
> +	igt_require(output);
>   
>   	data->pipe = pipe;
>   	data->output = output;
> +
>   	igt_output_set_pipe(output, pipe);
> -	igt_display_require_output_on_pipe(display, pipe);
> +	igt_require(i915_pipe_output_combo_valid(display));
> +
> +	igt_info("Using (pipe %s + %s) to run the subtest.\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
>   	prepare_crtc(data, fd, output);
>   
>   	/* First check all is well with a simple query */

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: Add support for Bigjoiner
  2022-12-30  5:45     ` Modem, Bhanuprakash
  2022-12-30 14:01       ` Swati Sharma
@ 2023-01-04  7:04       ` Swati Sharma
  1 sibling, 0 replies; 94+ messages in thread
From: Swati Sharma @ 2023-01-04  7:04 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev



On 30-Dec-22 11:15 AM, Modem, Bhanuprakash wrote:
> On Thu-29-12-2022 02:58 pm, Swati Sharma wrote:
>> Hi Bhanu,
>>
>> The intention of cdclk test is to bump cdclk when we have transition
>> from low resolution to high resolution (this was tested)
>> Changes done in test_mode_transition_on_all_outputs, you have set
>> high resolution first followed by low resolution. Why?
> 
> I thought, we just need to check the clock by changing the resolution in 
> any order (high to low (or) high to low).
> 
> Also, realized this test is limited to 4K, hence we can drop this patch.
> 
> - Bhanu
> 
hmm..since we were validating on max 4K res panels in CI. We had 
restricted test for max 4K res. Now, if tests will be executed on
8K too; we need to modify test to consider max res. as 8K/4K 
accordingly. Though this shouldn't be in scope of this change.
>>
>> On 15-Nov-22 10:38 PM, Bhanuprakash Modem wrote:
>>> As many 2x tests are currently running on Pipe-A & B only, those
>>> tests will always SKIP if there is any 8K supported panel in the
>>> config. Instead of Skipping the test, add some intelligence to
>>> the subtest to identify the valid pipe/output combo to execute
>>> the subtest.
>>>
>>> V2: - Use updated helper name
>>>
>>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>>> ---
>>>   tests/i915/kms_cdclk.c | 93 +++++++++++++++++++++++-------------------
>>>   1 file changed, 51 insertions(+), 42 deletions(-)
>>>
>>> diff --git a/tests/i915/kms_cdclk.c b/tests/i915/kms_cdclk.c
>>> index 991a7c50..ce945623 100644
>>> --- a/tests/i915/kms_cdclk.c
>>> +++ b/tests/i915/kms_cdclk.c
>>> @@ -243,20 +243,17 @@ static void 
>>> test_mode_transition_on_all_outputs(data_t *data)
>>>       int debugfs_fd = data->debugfs_fd;
>>>       drmModeModeInfo *mode, *mode_hi, *mode_lo;
>>>       igt_output_t *output;
>>> -    int valid_outputs = 0;
>>>       int cdclk_ref, cdclk_new;
>>>       uint16_t width = 0, height = 0;
>>>       struct igt_fb fb;
>>>       igt_pipe_t *pipe;
>>>       igt_plane_t *plane;
>>> -    int i = 0, j = 0;
>>> +    enum pipe p, active_pipes[IGT_MAX_PIPES];
>>> +    int i = 0, active_pipe_count = 0;
>>>       do_cleanup_display(display);
>>>       igt_display_reset(display);
>>> -    for_each_connected_output(&data->display, output)
>>> -        valid_outputs++;
>>> -
>>>       for_each_connected_output(display, output) {
>>>           mode = igt_output_get_mode(output);
>>>           igt_assert(mode);
>>> @@ -269,52 +266,59 @@ static void 
>>> test_mode_transition_on_all_outputs(data_t *data)
>>>       igt_create_pattern_fb(data->drm_fd, width, height, 
>>> DRM_FORMAT_XRGB8888,
>>>                     DRM_FORMAT_MOD_LINEAR, &fb);
>>> -    i = 0;
>>> +
>>>       for_each_connected_output(display, output) {
>>> -        pipe = &display->pipes[i];
>>> -        plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>>> +        for_each_pipe(display, p) {
>>> +            mode = NULL;
>>> -        mode = NULL;
>>> +            igt_output_set_pipe(output, p);
>>> +            mode = igt_output_get_mode(output);
>>> +            igt_assert(mode);
>>> -        igt_output_set_pipe(output, i);
>>> -        mode = igt_output_get_mode(output);
>>> -        igt_assert(mode);
>>> +            mode_hi = get_highres_mode(output);
>>> +            igt_require(mode_hi != NULL);
>>> +
>>> +            igt_output_override_mode(output, mode_hi);
>>> +            if (!i915_pipe_output_combo_valid(display)) {
>>> +                igt_output_set_pipe(output, PIPE_NONE);
>>> +                continue;
>>> +            }
>>> -        mode_lo = get_lowres_mode(output);
>>> +            active_pipes[active_pipe_count++] = p;
>>> +            pipe = &display->pipes[p];
>>> +            plane = igt_pipe_get_plane_type(pipe, 
>>> DRM_PLANE_TYPE_PRIMARY);
>>> +            igt_plane_set_fb(plane, &fb);
>>> +            igt_fb_set_size(&fb, plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> +            igt_plane_set_size(plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> -        igt_output_override_mode(output, mode_lo);
>>> -        igt_plane_set_fb(plane, &fb);
>>> -        igt_fb_set_size(&fb, plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> -        igt_plane_set_size(plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> -        i++;
>>> +            break;
>>> +        }
>>>       }
>>>       igt_display_commit2(display, COMMIT_ATOMIC);
>>> -    cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>>> +    cdclk_new = get_current_cdclk_freq(debugfs_fd);
>>> -    j = 0;
>>>       for_each_connected_output(display, output) {
>>> -        pipe = &display->pipes[j];
>>> -        plane = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>>> +        for (i = 0; i < active_pipe_count; i++) {
>>> +            pipe = &display->pipes[active_pipes[i]];
>>> +            plane = igt_pipe_get_plane_type(pipe, 
>>> DRM_PLANE_TYPE_PRIMARY);
>>> -        mode = NULL;
>>> +            mode = NULL;
>>> +            igt_output_set_pipe(output, i);
>>> +            mode = igt_output_get_mode(output);
>>> +            igt_assert(mode);
>>> -        igt_output_set_pipe(output, j);
>>> -        mode = igt_output_get_mode(output);
>>> -        igt_assert(mode);
>>> -
>>> -        mode_hi = get_highres_mode(output);
>>> -        igt_require(mode_hi != NULL);
>>> +            mode_lo = get_lowres_mode(output);
>>> -        igt_output_override_mode(output, mode_hi);
>>> -        igt_plane_set_fb(plane, &fb);
>>> -        igt_fb_set_size(&fb, plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> -        igt_plane_set_size(plane, mode_hi->hdisplay, 
>>> mode_hi->vdisplay);
>>> -        j++;
>>> +            igt_output_override_mode(output, mode_lo);
>>> +            igt_plane_set_fb(plane, &fb);
>>> +            igt_fb_set_size(&fb, plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> +            igt_plane_set_size(plane, mode_lo->hdisplay, 
>>> mode_lo->vdisplay);
>>> +        }
>>>       }
>>>       igt_display_commit2(display, COMMIT_ATOMIC);
>>> -    cdclk_new = get_current_cdclk_freq(debugfs_fd);
>>> +    cdclk_ref = get_current_cdclk_freq(debugfs_fd);
>>>       igt_info("CD clock frequency %d -> %d\n", cdclk_ref, cdclk_new);
>>>       /* cdclk should bump */
>>> @@ -332,13 +336,18 @@ static void run_cdclk_test(data_t *data, 
>>> uint32_t flags)
>>>       enum pipe pipe;
>>>       for_each_pipe_with_valid_output(display, pipe, output) {
>>> -        igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), 
>>> output->name)
>>> -            if (igt_pipe_connector_valid(pipe, output)) {
>>> -                if (flags & TEST_PLANESCALING)
>>> -                    test_plane_scaling(data, pipe, output);
>>> -                if (flags & TEST_MODETRANSITION)
>>> -                    test_mode_transition(data, pipe, output);
>>> -            }
>>> +        igt_output_set_pipe(output, pipe);
>>> +        if (!i915_pipe_output_combo_valid(display)) {
>>> +            igt_output_set_pipe(output, PIPE_NONE);
>>> +            continue;
>>> +        }
>>> +
>>> +        igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), 
>>> output->name) {
>>> +            if (flags & TEST_PLANESCALING)
>>> +                test_plane_scaling(data, pipe, output);
>>> +            if (flags & TEST_MODETRANSITION)
>>> +                test_mode_transition(data, pipe, output);
>>> +        }
>>>       }
>>>   }
>>
> 

-- 
~Swati Sharma

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

end of thread, other threads:[~2023-01-04  7:04 UTC | newest]

Thread overview: 94+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-15 17:08 [igt-dev] [i-g-t v5 00/52] Add IGT support for Bigjoiner Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 01/52] lib/igt_kms: Add a helper for valid pipe/output constraint Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 02/52] lib/igt_kms: Bigjoiner check in max_bpc constraint Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner Bhanuprakash Modem
2022-12-23  6:29   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-23  8:05     ` Karthik B S
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 04/52] tests/kms_atomic: " Bhanuprakash Modem
2022-12-28 18:30   ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 05/52] tests/kms_atomic_interruptible: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 06/52] tests/kms_atomic_transition: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 07/52] tests/kms_color_helper: Helper to check Bigjoiner constraint Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 08/52] tests/kms_color: Add support for Bigjoiner Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 09/52] tests/chamelium/kms_color_chamelium: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 10/52] tests/kms_concurrent: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 11/52] tests/kms_content_protection: " Bhanuprakash Modem
2022-12-27  6:36   ` Karthik B S
2022-12-27 14:55     ` Modem, Bhanuprakash
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 12/52] tests/kms_cursor_crc: " Bhanuprakash Modem
2022-12-27  6:57   ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 13/52] tests/kms_cursor_edge_walk: " Bhanuprakash Modem
2022-12-27  6:31   ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 14/52] tests/kms_cursor_legacy: " Bhanuprakash Modem
2022-12-27 16:24   ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 15/52] tests/kms_display_modes: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 16/52] tests/kms_dp_tiled_display: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 17/52] tests/kms_flip_event_leak: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 18/52] tests/kms_invalid_mode: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 19/52] tests/kms_lease: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 20/52] tests/kms_multipipe_modeset: Find the suitable mode instead of using default Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 21/52] tests/kms_pipe_crc_basic: Add support for Bigjoiner Bhanuprakash Modem
2022-12-27  6:24   ` Thasleem, Mohammed
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 22/52] tests/kms_plane: " Bhanuprakash Modem
2022-12-15 10:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-27  6:20     ` Karthik B S
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 23/52] tests/kms_plane_alpha_blend: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 24/52] tests/kms_plane_cursor: " Bhanuprakash Modem
2022-12-27  7:21   ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 25/52] tests/kms_plane_lowres: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 26/52] tests/kms_plane_multiple: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 27/52] tests/kms_plane_scaling: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 28/52] tests/kms_prime: " Bhanuprakash Modem
2022-12-28  5:58   ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 29/52] tests/kms_properties: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 30/52] tests/kms_rmfb: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 31/52] tests/kms_rotation_crc: " Bhanuprakash Modem
2022-12-23  8:23   ` B, Jeevan
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 32/52] tests/kms_scaling_modes: " Bhanuprakash Modem
2022-12-30 17:48   ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 33/52] tests/kms_sequence: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 34/52] tests/kms_universal_plane: " Bhanuprakash Modem
2022-12-28 10:54   ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 35/52] tests/kms_vblank: " Bhanuprakash Modem
2022-12-30 18:41   ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 36/52] tests/kms_vrr: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 37/52] tests/i915/kms_big_fb: " Bhanuprakash Modem
2022-12-23  8:06   ` B, Jeevan
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 38/52] tests/i915/kms_big_joiner: Negative tests " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 39/52] tests/i915/kms_busy: Add support " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 40/52] tests/i915/kms_ccs: " Bhanuprakash Modem
2022-12-23  8:27   ` Karthik B S
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 41/52] tests/i915/kms_cdclk: " Bhanuprakash Modem
2022-12-29  9:28   ` Swati Sharma
2022-12-30  5:45     ` Modem, Bhanuprakash
2022-12-30 14:01       ` Swati Sharma
2023-01-04  7:04       ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 42/52] tests/i915/kms_draw_crc: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 43/52] tests/i915/kms_fence_pin_leak: " Bhanuprakash Modem
2022-12-26 10:58   ` Sharma, Ananya
2022-12-27  8:58   ` Sharma, Ananya
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 44/52] tests/i915/kms_flip_scaled_crc: " Bhanuprakash Modem
2022-12-28 18:43   ` Swati Sharma
2022-12-29  5:02     ` Modem, Bhanuprakash
2022-12-29  5:17   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-30 14:06     ` Swati Sharma
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 45/52] tests/i915/kms_flip_tiling: " Bhanuprakash Modem
2022-12-23  8:11   ` B, Jeevan
2022-12-23  8:36     ` Modem, Bhanuprakash
2022-12-23  8:40   ` [igt-dev] [i-g-t v6 " Bhanuprakash Modem
2022-12-26  6:09     ` B, Jeevan
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 46/52] tests/i915/kms_frontbuffer_tracking: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 47/52] tests/i915/kms_mmap_write_crc: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 48/52] tests/i915/kms_psr2_sf: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 49/52] tests/i915/kms_psr2_su: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 50/52] tests/i915/kms_psr: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 51/52] tests/i915/kms_psr_stress_test: " Bhanuprakash Modem
2022-11-15 17:08 ` [igt-dev] [i-g-t v5 52/52] tests/i915/kms_pwrite_crc: " Bhanuprakash Modem
2022-11-15 20:21 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev9) Patchwork
2022-11-16  3:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2022-12-15 12:18 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev10) Patchwork
2022-12-16 13:08 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2022-12-23  7:12 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev11) Patchwork
2022-12-23  9:29 ` [igt-dev] ✓ Fi.CI.BAT: success for Add IGT support for Bigjoiner (rev12) Patchwork
2022-12-23 10:37 ` [igt-dev] ✗ Fi.CI.IGT: failure for Add IGT support for Bigjoiner (rev11) Patchwork
2022-12-23 11:01 ` [igt-dev] ✓ Fi.CI.IGT: success for Add IGT support for Bigjoiner (rev12) Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.