All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes
@ 2021-07-16 14:44 Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270() Ville Syrjala
                   ` (17 more replies)
  0 siblings, 18 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

While looking at a bunch of igts I got depressed by
the and rolled rotation vs. gen checks all over.
So I started to fix that stuff.

Also noticed a bunch of stuff in kms_big_fb which
I had to sort out.

And I tossed in my earlier kms_plane multi vs. single color
change (apart from using single colors for the crop test
since that now seems fixed). I did figure that maybe we want
single colors in the extended test, so slapped that change on
top.

Ville Syrjälä (16):
  lib/kms: Add igt_rotation_90_or_270()
  tests/kms_big_fb: Use igt_rotation_90_or_270()
  tests/kms_plane_scaling: Use igt_rotation_90_or_270()
  tests/kms_rotation_crc: Use igt_rotation_90_or_270()
  lib/kms: Add igt_plane_has_rotation()
  tests/kms_rotation_crc: Use igt_plane_has_rotation()
  tests/kms_plane_scaling: Use igt_plane_has_rotation()
  tests/kms_big_fb: Use igt_plane_has_rotation()
  tests/kms_big_fb: Use igt_has_drm_cap()
  tests/kms_big_fb: Move batch creation into lower level functions
  tests/kms_big_fb: Move format/modifier checks lower
  tests/kms_big_fb: Nuke the stride/format overrides
  tests/kms_big_fb: Nuke fliptab[]
  tests/kms_big_fb: Check whether the rotation is supposed in the async
    flip test
  tests/kms_plane: Abstract single vs. multiple crsc better
  tests/kms_plane: Use single colors during extended test

 lib/igt_kms.c             |  41 +++++++++
 lib/igt_kms.h             |  21 +++++
 tests/kms_big_fb.c        | 171 ++++++++++++++++----------------------
 tests/kms_plane.c         |  61 ++++++++------
 tests/kms_plane_scaling.c |   5 +-
 tests/kms_rotation_crc.c  |  53 +++++-------
 6 files changed, 189 insertions(+), 163 deletions(-)

-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-19  4:44   ` Karthik B S
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 02/16] tests/kms_big_fb: Use igt_rotation_90_or_270() Ville Syrjala
                   ` (16 subsequent siblings)
  17 siblings, 1 reply; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Add a helper to simplify the 90/270 vs. 0/180 rotation checks.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 lib/igt_kms.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 8cde24b7911f..45d21e42503e 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -329,6 +329,11 @@ typedef enum {
 #define IGT_ROTATION_MASK \
 	(IGT_ROTATION_0 | IGT_ROTATION_90 | IGT_ROTATION_180 | IGT_ROTATION_270)
 
+static inline bool igt_rotation_90_or_270(igt_rotation_t rotation)
+{
+	return rotation & (IGT_ROTATION_90 | IGT_ROTATION_270);
+}
+
 typedef struct igt_plane {
 	/*< private >*/
 	igt_pipe_t *pipe;
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 02/16] tests/kms_big_fb: Use igt_rotation_90_or_270()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270() Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-19  4:46   ` Karthik B S
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 03/16] tests/kms_plane_scaling: " Ville Syrjala
                   ` (15 subsequent siblings)
  17 siblings, 1 reply; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Replace the hand rolled 90/270 rotation checks with
igt_rotation_90_or_270().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index c6f374bdd073..b988a092771a 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -344,8 +344,7 @@ static bool test_plane(data_t *data)
 
 		/* Hardware limitation */
 		if (data->format == DRM_FORMAT_RGB565 &&
-		    (data->rotation == IGT_ROTATION_90 ||
-		     data->rotation == IGT_ROTATION_270)) {
+		    igt_rotation_90_or_270(data->rotation)) {
 			x &= ~1;
 			y &= ~1;
 		}
@@ -426,8 +425,7 @@ static bool test_pipe(data_t *data)
 
 	width = mode->hdisplay;
 	height = mode->vdisplay;
-	if (data->rotation == IGT_ROTATION_90 ||
-	    data->rotation == IGT_ROTATION_270)
+	if (igt_rotation_90_or_270(data->rotation))
 		igt_swap(width, height);
 
 	igt_create_color_fb(data->drm_fd, width, height,
@@ -954,8 +952,8 @@ igt_main
 					data.rotation = rotations[k].rotation | fliptab[l].flip;
 
 					// this combination will never happen.
-					if ((data.rotation & (IGT_ROTATION_90 | IGT_ROTATION_270)) ||
-						(fliptab[l].flip == IGT_REFLECT_X && modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR))
+					if (igt_rotation_90_or_270(data.rotation) ||
+					    (fliptab[l].flip == IGT_REFLECT_X && modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR))
 						continue;
 
 					igt_describe("test maximum hardware supported stride length for given bpp and modifiers.");
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 03/16] tests/kms_plane_scaling: Use igt_rotation_90_or_270()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270() Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 02/16] tests/kms_big_fb: Use igt_rotation_90_or_270() Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-19  4:46   ` Karthik B S
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 04/16] tests/kms_rotation_crc: " Ville Syrjala
                   ` (14 subsequent siblings)
  17 siblings, 1 reply; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Replace the hand rolled 90/270 rotation check with
igt_rotation_90_or_270().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_plane_scaling.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 3f47733edad2..809463a71583 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -166,7 +166,7 @@ static bool can_rotate(data_t *d, unsigned format, uint64_t tiling,
 		return true;
 
 	if (intel_display_ver(d->devid) >= 13 &&
-		(rot == IGT_ROTATION_90 || rot == IGT_ROTATION_270))
+		igt_rotation_90_or_270(rot))
 		return false;
 
 	switch (format) {
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 04/16] tests/kms_rotation_crc: Use igt_rotation_90_or_270()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (2 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 03/16] tests/kms_plane_scaling: " Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-19  4:48   ` Karthik B S
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 05/16] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
                   ` (13 subsequent siblings)
  17 siblings, 1 reply; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Replace the hand rolled 90/270 rotation checks with
igt_rotation_90_or_270().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_rotation_crc.c | 30 ++++++++++++++----------------
 1 file changed, 14 insertions(+), 16 deletions(-)

diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 1497120cd4e0..2c66cd7c4e31 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -270,7 +270,7 @@ static void prepare_fbs(data_t *data, igt_output_t *output,
 	 * For 90/270, we will use create smaller fb so that the rotated
 	 * frame can fit in
 	 */
-	if (data->rotation & (IGT_ROTATION_90 | IGT_ROTATION_270)) {
+	if (igt_rotation_90_or_270(data->rotation)) {
 		tiling = data->override_tiling ?: I915_FORMAT_MOD_Y_TILED;
 
 		igt_swap(w, h);
@@ -362,7 +362,7 @@ static void test_single_case(data_t *data, enum pipe pipe,
 	prepare_fbs(data, output, plane, rect, format);
 
 	igt_plane_set_rotation(plane, data->rotation);
-	if (data->rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
+	if (igt_rotation_90_or_270(data->rotation))
 		igt_plane_set_size(plane, data->fb.height, data->fb.width);
 
 	ret = igt_display_try_commit2(display, COMMIT_ATOMIC);
@@ -396,7 +396,7 @@ static void test_single_case(data_t *data, enum pipe pipe,
 	 */
 	if (data->fb_flip.fb_id) {
 		igt_plane_set_fb(plane, &data->fb_flip);
-		if (data->rotation == IGT_ROTATION_90 || data->rotation == IGT_ROTATION_270)
+		if (igt_rotation_90_or_270(data->rotation))
 			igt_plane_set_size(plane, data->fb.height, data->fb.width);
 
 		if (plane->type != DRM_PLANE_TYPE_PRIMARY) {
@@ -575,7 +575,7 @@ static bool setup_multiplane(data_t *data, planeinfos *planeinfo,
 		w = planeinfo[c].width & ~3;
 		h = planeinfo[c].height & ~3;
 
-		if (planeinfo[c].rotation_sw & (IGT_ROTATION_90 | IGT_ROTATION_270))
+		if (igt_rotation_90_or_270(planeinfo[c].rotation_sw))
 			igt_swap(w, h);
 
 		if (!igt_plane_has_format_mod(planeinfo[c].plane,
@@ -596,7 +596,7 @@ static bool setup_multiplane(data_t *data, planeinfos *planeinfo,
 		}
 		igt_plane_set_fb(planeinfo[c].plane, planes[c]);
 
-		if (planeinfo[c].rotation_hw & (IGT_ROTATION_90 | IGT_ROTATION_270))
+		if (igt_rotation_90_or_270(planeinfo[c].rotation_hw))
 			igt_plane_set_size(planeinfo[c].plane, h, w);
 
 		igt_plane_set_position(planeinfo[c].plane, planeinfo[c].x1,
@@ -729,20 +729,20 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
 						 * from gen11 onwards.
 						 */
 						if (p[0].format == DRM_FORMAT_RGB565 &&
-						     (planeconfigs[i].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
+						     igt_rotation_90_or_270(planeconfigs[i].rotation)
 						     && intel_display_ver(data->devid) < 11)
 							continue;
 
 						if (p[1].format == DRM_FORMAT_RGB565 &&
-						     (planeconfigs[j].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
+						     igt_rotation_90_or_270(planeconfigs[j].rotation)
 						     && intel_display_ver(data->devid) < 11)
 							continue;
 
-						if ((planeconfigs[i].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
+						if (igt_rotation_90_or_270(planeconfigs[i].rotation)
 						    && intel_display_ver(data->devid) >= 13)
 							continue;
 
-						if ((planeconfigs[j].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
+						if (igt_rotation_90_or_270(planeconfigs[j].rotation)
 						    && intel_display_ver(data->devid) >= 13)
 							continue;
 						/*
@@ -1049,12 +1049,11 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 			      plane_test_str(subtest->plane),
 			      rot_test_str(subtest->rot)) {
 			if (is_i915_device(data.gfx_fd)) {
-				igt_require(!(subtest->rot &
-                                            (IGT_ROTATION_90 | IGT_ROTATION_270)) ||
-                                            (gen >= 9 && gen < 13));
+				igt_require(!igt_rotation_90_or_270(subtest->rot) ||
+					    (gen >= 9 && gen < 13));
 			} else if (is_amdgpu_device(data.gfx_fd)) {
 				data.override_fmt = DRM_FORMAT_XRGB8888;
-				if (subtest->rot & (IGT_ROTATION_90 | IGT_ROTATION_270))
+				if (igt_rotation_90_or_270(subtest->rot))
 					data.override_tiling = AMD_FMT_MOD |
 						AMD_FMT_MOD_SET(TILE, AMD_FMT_MOD_TILE_GFX9_64K_S) |
 						AMD_FMT_MOD_SET(TILE_VERSION, AMD_FMT_MOD_TILE_VER_GFX9);
@@ -1108,9 +1107,8 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 				    (IS_CHERRYVIEW(data.devid) && reflect_x->rot == IGT_ROTATION_0
 				     && reflect_x->tiling == I915_FORMAT_MOD_X_TILED));
 			data.rotation = (IGT_REFLECT_X | reflect_x->rot);
-			igt_require(!(gen >= 13 && (data.rotation &
-						    (IGT_ROTATION_90 |
-						     IGT_ROTATION_270))));
+			igt_require(!(gen >= 13 &&
+				      igt_rotation_90_or_270(data.rotation)));
 			data.override_tiling = reflect_x->tiling;
 			test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY, false);
 		}
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 05/16] lib/kms: Add igt_plane_has_rotation()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (3 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 04/16] tests/kms_rotation_crc: " Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 06/16] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Probe the supported rotations for each plane from the kernel
This should let us eliminate tons of hand rolled gen checks all over.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 lib/igt_kms.c | 41 +++++++++++++++++++++++++++++++++++++++++
 lib/igt_kms.h | 16 ++++++++++++++++
 2 files changed, 57 insertions(+)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index c7c69b6ea0eb..944e3e411a0e 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -612,6 +612,41 @@ const char * const igt_connector_prop_names[IGT_NUM_CONNECTOR_PROPS] = {
 	[IGT_CONNECTOR_DITHERING_MODE] = "dithering mode",
 };
 
+const char * const igt_rotation_names[] = {
+	[0] = "rotate-0",
+	[1] = "rotate-90",
+	[2] = "rotate-180",
+	[3] = "rotate-270",
+	[4] = "reflect-x",
+	[5] = "reflect-y",
+};
+
+static unsigned int
+igt_plane_rotations(igt_display_t *display, igt_plane_t *plane,
+		    drmModePropertyPtr prop)
+{
+	unsigned int rotations = 0;
+
+	igt_assert_eq(prop->flags & DRM_MODE_PROP_LEGACY_TYPE,
+		      DRM_MODE_PROP_BITMASK);
+	igt_assert_eq(prop->count_values, prop->count_enums);
+
+	for (int i = 0; i < ARRAY_SIZE(igt_rotation_names); i++) {
+		for (int j = 0; j < prop->count_enums; j++) {
+			if (strcmp(igt_rotation_names[i], prop->enums[j].name))
+				continue;
+
+			/* various places assume the uabi uses specific bit values */
+			igt_assert_eq(prop->values[j], i);
+
+			rotations |= 1 << i;
+		}
+	}
+	igt_assert_neq(rotations, 0);
+
+	return rotations;
+}
+
 /*
  * Retrieve all the properies specified in props_name and store them into
  * plane->props.
@@ -640,9 +675,15 @@ igt_fill_plane_props(igt_display_t *display, igt_plane_t *plane,
 			break;
 		}
 
+		if (strcmp(prop->name, "rotation") == 0)
+			plane->rotations = igt_plane_rotations(display, plane, prop);
+
 		drmModeFreeProperty(prop);
 	}
 
+	if (!plane->rotations)
+		plane->rotations = IGT_ROTATION_0;
+
 	drmModeFreeObjectProperties(props);
 }
 
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 45d21e42503e..64d12df4fd1b 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -358,6 +358,8 @@ typedef struct igt_plane {
 		uint64_t values[IGT_NUM_COLOR_RANGES];
 	} color_range;
 
+	igt_rotation_t rotations;
+
 	uint64_t changed;
 	uint32_t props[IGT_NUM_PLANE_PROPS];
 	uint64_t values[IGT_NUM_PLANE_PROPS];
@@ -491,6 +493,20 @@ void igt_fb_set_position(struct igt_fb *fb, igt_plane_t *plane,
 void igt_fb_set_size(struct igt_fb *fb, igt_plane_t *plane,
 	uint32_t w, uint32_t h);
 
+/**
+ * igt_plane_has_rotation:
+ * @plane: Plane pointer for which rotation is to be queried
+ * @rotation: Plane rotation value (0, 90, 180, 270)
+ *
+ * Check whether @plane potentially supports the given @rotation.
+ * Note that @rotation may still rejected later due to other
+ * constraints (eg. incompatible pixel format or modifier).
+ */
+static inline bool igt_plane_has_rotation(igt_plane_t *plane, igt_rotation_t rotation)
+{
+	return (plane->rotations & rotation) == rotation;
+}
+
 void igt_wait_for_vblank(int drm_fd, int crtc_offset);
 void igt_wait_for_vblank_count(int drm_fd, int crtc_offset, int count);
 
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 06/16] tests/kms_rotation_crc: Use igt_plane_has_rotation()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (4 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 05/16] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 07/16] tests/kms_plane_scaling: " Ville Syrjala
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use igt_plane_has_rotation() instead of these annoying
hand rolled gen checks.

Also fix up the bogus CHV checks to match reality. Since
the test doesn't probe the final configuration with a
TEST_ONLY atomic commit we must still manually filter
out any case that would pass the basic rotation check but
fail later.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_rotation_crc.c | 35 ++++++++++++-----------------------
 1 file changed, 12 insertions(+), 23 deletions(-)

diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 2c66cd7c4e31..2101003d6b71 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -493,9 +493,6 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form
 		for (c = 0; c < num_rectangle_types; c++)
 			data->crc_rect[data->output_crc_in_use][c].valid = false;
 
-		if (is_i915_device(data->gfx_fd) && IS_CHERRYVIEW(data->devid) && pipe != PIPE_B)
-			continue;
-
 		/* restricting the execution to 2 pipes to reduce execution time*/
 		if (pipe_count == 2 * connected_outputs && !data->extended)
 			break;
@@ -505,6 +502,11 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form
 
 		plane = igt_output_get_plane_type(output, plane_type);
 		igt_require(igt_plane_has_prop(plane, IGT_PLANE_ROTATION));
+		igt_require(igt_plane_has_rotation(plane, data->rotation));
+		/* CHV can't rotate and reflect simultaneously */
+		igt_require(!is_i915_device(data->gfx_fd) ||
+			    !IS_CHERRYVIEW(data->devid) ||
+			    data->rotation != (IGT_ROTATION_180 | IGT_REFLECT_X));
 
 		prepare_crtc(data, output, pipe, plane, true);
 
@@ -738,13 +740,14 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
 						     && intel_display_ver(data->devid) < 11)
 							continue;
 
-						if (igt_rotation_90_or_270(planeconfigs[i].rotation)
-						    && intel_display_ver(data->devid) >= 13)
+						if (!igt_plane_has_rotation(p[0].plane,
+									    planeconfigs[i].rotation))
 							continue;
 
-						if (igt_rotation_90_or_270(planeconfigs[j].rotation)
-						    && intel_display_ver(data->devid) >= 13)
+						if (!igt_plane_has_rotation(p[1].plane,
+									    planeconfigs[j].rotation))
 							continue;
+
 						/*
 						 * if using packed formats crc's will be
 						 * same and can store them so there's
@@ -892,6 +895,7 @@ static void test_plane_rotation_exhaust_fences(data_t *data,
 	int i;
 
 	igt_require(igt_plane_has_prop(plane, IGT_PLANE_ROTATION));
+	igt_require(igt_plane_has_rotation(plane, IGT_ROTATION_0 | IGT_ROTATION_90));
 	igt_require(gem_available_fences(display->drm_fd) > 0);
 
 	prepare_crtc(data, output, pipe, plane, false);
@@ -1048,10 +1052,7 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		igt_subtest_f("%s-rotation-%s",
 			      plane_test_str(subtest->plane),
 			      rot_test_str(subtest->rot)) {
-			if (is_i915_device(data.gfx_fd)) {
-				igt_require(!igt_rotation_90_or_270(subtest->rot) ||
-					    (gen >= 9 && gen < 13));
-			} else if (is_amdgpu_device(data.gfx_fd)) {
+			if (is_amdgpu_device(data.gfx_fd)) {
 				data.override_fmt = DRM_FORMAT_XRGB8888;
 				if (igt_rotation_90_or_270(subtest->rot))
 					data.override_tiling = AMD_FMT_MOD |
@@ -1067,7 +1068,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 
 	igt_describe("Rotation test with 90 degree for a plane of gen9+ with given position");
 	igt_subtest_f("sprite-rotation-90-pos-100-0") {
-		igt_require(gen >=9 && gen < 13);
 		data.rotation = IGT_ROTATION_90;
 		data.pos_x = 100,
 		data.pos_y = 0;
@@ -1082,7 +1082,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		  * so apart from this, any other gen11+ pixel format
 		  * can be used which doesn't support 90/270 degree
 		  * rotation */
-		igt_require(gen >=9 && gen < 13);
 		data.rotation = IGT_ROTATION_90;
 		data.override_fmt = gen < 11 ? DRM_FORMAT_RGB565 : DRM_FORMAT_Y212;
 		test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY, true);
@@ -1091,7 +1090,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 
 	igt_describe("Checking unsupported tiling for gen9+ with 90 degree of rotation");
 	igt_subtest_f("bad-tiling") {
-		igt_require(gen >=9 && gen < 13);
 		data.rotation = IGT_ROTATION_90;
 		data.override_tiling = I915_FORMAT_MOD_X_TILED;
 		test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY, true);
@@ -1103,12 +1101,7 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		igt_subtest_f("primary-%s-reflect-x-%s",
 			      tiling_test_str(reflect_x->tiling),
 			      rot_test_str(reflect_x->rot)) {
-			igt_require(gen >= 10 ||
-				    (IS_CHERRYVIEW(data.devid) && reflect_x->rot == IGT_ROTATION_0
-				     && reflect_x->tiling == I915_FORMAT_MOD_X_TILED));
 			data.rotation = (IGT_REFLECT_X | reflect_x->rot);
-			igt_require(!(gen >= 13 &&
-				      igt_rotation_90_or_270(data.rotation)));
 			data.override_tiling = reflect_x->tiling;
 			test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY, false);
 		}
@@ -1116,7 +1109,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 
 	igt_describe("Rotation test on both planes by making them fully visible");
 	igt_subtest_f("multiplane-rotation") {
-		igt_require(gen >= 9);
 		cleanup_crtc(&data);
 		data.planepos[0].origo = p_top | p_left;
 		data.planepos[0].x = .2f;
@@ -1130,7 +1122,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 	igt_describe("Rotation test on both planes by cropping left/top corner of primary plane and"
 			"right/top corner of sprite plane");
 	igt_subtest_f("multiplane-rotation-cropping-top") {
-		igt_require(gen >= 9);
 		cleanup_crtc(&data);
 		data.planepos[0].origo = p_top | p_left;
 		data.planepos[0].x = -.05f;
@@ -1144,7 +1135,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 	igt_describe("Rotation test on both planes by cropping left/bottom corner of primary plane"
 			"and right/bottom corner of sprite plane");
 	igt_subtest_f("multiplane-rotation-cropping-bottom") {
-		igt_require(gen >= 9);
 		cleanup_crtc(&data);
 		data.planepos[0].origo = p_bottom | p_left;
 		data.planepos[0].x = -.05f;
@@ -1164,7 +1154,6 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
 		enum pipe pipe;
 		igt_output_t *output;
 
-		igt_require(gen >= 9 && gen < 13);
 		igt_display_require_output(&data.display);
 
 		for_each_pipe_with_valid_output(&data.display, pipe, output) {
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 07/16] tests/kms_plane_scaling: Use igt_plane_has_rotation()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (5 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 06/16] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 08/16] tests/kms_big_fb: " Ville Syrjala
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Replace the hand rolled gen check with igt_plane_has_rotation().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_plane_scaling.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 809463a71583..4c517a4326d7 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -165,10 +165,6 @@ static bool can_rotate(data_t *d, unsigned format, uint64_t tiling,
 	if (!is_i915_device(d->drm_fd))
 		return true;
 
-	if (intel_display_ver(d->devid) >= 13 &&
-		igt_rotation_90_or_270(rot))
-		return false;
-
 	switch (format) {
 	case DRM_FORMAT_RGB565:
 		if (intel_display_ver(d->devid) >= 11)
@@ -272,6 +268,7 @@ static void test_scaler_with_rotation_pipe(data_t *d, enum pipe pipe,
 
 				if (test_format(d, &tested_formats, format) &&
 				    igt_plane_has_format_mod(plane, format, tiling) &&
+				    igt_plane_has_rotation(plane, rot) &&
 				    can_rotate(d, format, tiling, rot) &&
 				    can_scale(d, format))
 					check_scaling_pipe_plane_rot(d, plane, format,
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 08/16] tests/kms_big_fb: Use igt_plane_has_rotation()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (6 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 07/16] tests/kms_plane_scaling: " Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 09/16] tests/kms_big_fb: Use igt_has_drm_cap() Ville Syrjala
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Use igt_plane_has_rotation() instead of the manual
"if there's no rotation prop -> only 0 dgree is supported"
conclusion.

And let's also get rid of the atomic vs. 0/270 degree rotation
check. I think I added this to avoid the test failing since
we can't do the TEST_ONLY probe withoiut atomic. With the
unsupported rotations filtered out ahead of time we should
never get into that situation.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index b988a092771a..092cbc6846fe 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -323,14 +323,7 @@ static bool test_plane(data_t *data)
 	if (!igt_plane_has_format_mod(plane, data->format, data->modifier))
 		return false;
 
-	if (data->rotation != IGT_ROTATION_0 &&
-	    !igt_plane_has_prop(plane, IGT_PLANE_ROTATION))
-		return false;
-
-	/* FIXME need atomic on i965/g4x */
-	if (data->rotation != IGT_ROTATION_0 &&
-	    data->rotation != IGT_ROTATION_180 &&
-	    !data->display.is_atomic)
+	if (!igt_plane_has_rotation(plane, data->rotation))
 		return false;
 
 	if (igt_plane_has_prop(plane, IGT_PLANE_ROTATION))
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 09/16] tests/kms_big_fb: Use igt_has_drm_cap()
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (7 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 08/16] tests/kms_big_fb: " Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 10/16] tests/kms_big_fb: Move batch creation into lower level functions Ville Syrjala
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Replace the hand rolled cap check with igt_has_drm_cap().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 092cbc6846fe..308227c9113a 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -57,7 +57,6 @@ typedef struct {
 	double planeclearrgb[3];
 	uint32_t format_override;
 	uint32_t stride_override;
-	uint32_t async_flip_support;
 } data_t;
 
 static struct intel_buf *init_buf(data_t *data,
@@ -800,7 +799,6 @@ igt_main
 {
 	igt_fixture {
 		drmModeResPtr res;
-		struct drm_get_cap cap = { .capability = DRM_CAP_ASYNC_PAGE_FLIP };
 
 		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
 
@@ -851,9 +849,6 @@ igt_main
 
 		data.max_hw_stride_test = false;
 		data.async_flip_test = false;
-
-		igt_ioctl(data.drm_fd, DRM_IOCTL_GET_CAP, &cap);
-		data.async_flip_support = cap.value;
 	}
 
 	/*
@@ -983,7 +978,7 @@ igt_main
 							igt_require(data.format == DRM_FORMAT_C8 ||
 								igt_fb_supported_format(data.format));
 							igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
-							igt_require_f(data.async_flip_support, "Async Flip is not supported\n");
+							igt_require(igt_has_drm_cap(data.drm_fd, DRM_CAP_ASYNC_PAGE_FLIP));
 							data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
 							test_scanout(&data);
 					}
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 10/16] tests/kms_big_fb: Move batch creation into lower level functions
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (8 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 09/16] tests/kms_big_fb: Use igt_has_drm_cap() Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 11/16] tests/kms_big_fb: Move format/modifier checks lower Ville Syrjala
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

At some point the back creation from moved form the fixture
into each subtest, on account of something going bad between
subtests (not really sure what that was). But when the hw stride
tests were added they stuffed the batch back into the fixture,
and indeed I get a segfault when running this stuff. So let's move
all the batch stuff to the lowe level functions that actually need
it.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 308227c9113a..9e98ed3f9edc 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -410,6 +410,8 @@ static bool test_pipe(data_t *data)
 				   IGT_CRTC_GAMMA_LUT))
 		return false;
 
+	data->ibb = intel_bb_create(data->drm_fd, 4096);
+
 	mode = igt_output_get_mode(data->output);
 
 	data->width = mode->hdisplay;
@@ -470,6 +472,8 @@ static bool test_pipe(data_t *data)
 
 	igt_remove_fb(data->drm_fd, &data->small_fb);
 
+	intel_bb_destroy(data->ibb);
+
 	return ret;
 }
 
@@ -492,6 +496,8 @@ max_hw_stride_async_flip_test(data_t *data)
 	igt_require_f(igt_display_try_commit2(&data->display, COMMIT_ATOMIC) == 0,
 		      "rotation/flip not supported\n");
 
+	data->ibb = intel_bb_create(data->drm_fd, 4096);
+
 	setup_fb(data, &data->big_fb, data->big_fb_width, data->big_fb_height,
 		 data->format, data->modifier, data->hw_stride);
 	generate_pattern(data, &data->big_fb, 640, 480);
@@ -559,6 +565,9 @@ max_hw_stride_async_flip_test(data_t *data)
 	igt_remove_fb(data->drm_fd, &data->big_fb);
 	igt_remove_fb(data->drm_fd, &data->big_fb_flip[0]);
 	igt_remove_fb(data->drm_fd, &data->big_fb_flip[1]);
+
+	intel_bb_destroy(data->ibb);
+
 	return true;
 }
 
@@ -841,7 +850,6 @@ igt_main
 			data.render_copy = igt_get_render_copyfunc(data.devid);
 
 		data.bops = buf_ops_create(data.drm_fd);
-		data.ibb = intel_bb_create(data.drm_fd, 4096);
 
 		data.planeclearrgb[0] = 0.0;
 		data.planeclearrgb[1] = 0.0;
@@ -862,9 +870,7 @@ igt_main
 		igt_subtest_f("%s-addfb-size-overflow",
 			      modifiers[i].name) {
 			data.modifier = modifiers[i].modifier;
-			data.ibb = intel_bb_create(data.drm_fd, 4096);
 			test_size_overflow(&data);
-			intel_bb_destroy(data.ibb);
 		}
 	}
 
@@ -873,9 +879,7 @@ igt_main
 		igt_subtest_f("%s-addfb-size-offset-overflow",
 			      modifiers[i].name) {
 			data.modifier = modifiers[i].modifier;
-			data.ibb = intel_bb_create(data.drm_fd, 4096);
 			test_size_offset_overflow(&data);
-			intel_bb_destroy(data.ibb);
 		}
 	}
 
@@ -883,9 +887,7 @@ igt_main
 	for (int i = 0; i < ARRAY_SIZE(modifiers); i++) {
 		igt_subtest_f("%s-addfb", modifiers[i].name) {
 			data.modifier = modifiers[i].modifier;
-			data.ibb = intel_bb_create(data.drm_fd, 4096);
 			test_addfb(&data);
-			intel_bb_destroy(data.ibb);
 		}
 	}
 
@@ -905,9 +907,7 @@ igt_main
 					igt_require(data.format == DRM_FORMAT_C8 ||
 						    igt_fb_supported_format(data.format));
 					igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
-					data.ibb = intel_bb_create(data.drm_fd, 4096);
 					test_scanout(&data);
-					intel_bb_destroy(data.ibb);
 				}
 			}
 
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 11/16] tests/kms_big_fb: Move format/modifier checks lower
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (9 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 10/16] tests/kms_big_fb: Move batch creation into lower level functions Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 12/16] tests/kms_big_fb: Nuke the stride/format overrides Ville Syrjala
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

No reason to keep repeating the same format checks multiple
times. Just move them into test_scanout().

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 9e98ed3f9edc..0022f2ad264b 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -575,6 +575,11 @@ static void test_scanout(data_t *data)
 {
 	igt_output_t *output;
 
+	igt_require(data->format == DRM_FORMAT_C8 ||
+		    igt_fb_supported_format(data->format));
+
+	igt_require(igt_display_has_format_mod(&data->display, data->format, data->modifier));
+
 	if (data->max_hw_stride_test) {
 		data->big_fb_width = data->max_hw_fb_width;
 		data->big_fb_height = 0;
@@ -903,12 +908,8 @@ igt_main
 				igt_describe("Sanity check if addfb ioctl works correctly for given "
 						"combination of modifier formats and rotation");
 				igt_subtest_f("%s-%dbpp-rotate-%d", modifiers[i].name,
-					      formats[j].bpp, rotations[k].angle) {
-					igt_require(data.format == DRM_FORMAT_C8 ||
-						    igt_fb_supported_format(data.format));
-					igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
+					      formats[j].bpp, rotations[k].angle)
 					test_scanout(&data);
-				}
 			}
 
 			igt_fixture
@@ -961,9 +962,6 @@ igt_main
 							data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
 						}
 
-						igt_require(data.format == DRM_FORMAT_C8 ||
-							igt_fb_supported_format(data.format));
-						igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
 						test_scanout(&data);
 					}
 
@@ -975,9 +973,6 @@ igt_main
 					igt_describe("test async flip on maximum hardware supported stride length for given bpp and modifiers.");
 					igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d%s-async-flip", modifiers[i].name,
 						formats[j].bpp, rotations[k].angle, fliptab[l].flipname) {
-							igt_require(data.format == DRM_FORMAT_C8 ||
-								igt_fb_supported_format(data.format));
-							igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
 							igt_require(igt_has_drm_cap(data.drm_fd, DRM_CAP_ASYNC_PAGE_FLIP));
 							data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
 							test_scanout(&data);
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 12/16] tests/kms_big_fb: Nuke the stride/format overrides
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (10 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 11/16] tests/kms_big_fb: Move format/modifier checks lower Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 13/16] tests/kms_big_fb: Nuke fliptab[] Ville Syrjala
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

format_override/stride_override are never set. Nuke them.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 15 +--------------
 1 file changed, 1 insertion(+), 14 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 0022f2ad264b..6be3062bd335 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -55,8 +55,6 @@ typedef struct {
 	int hw_stride;
 	int max_hw_fb_width;
 	double planeclearrgb[3];
-	uint32_t format_override;
-	uint32_t stride_override;
 } data_t;
 
 static struct intel_buf *init_buf(data_t *data,
@@ -949,18 +947,7 @@ igt_main
 					igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d%s", modifiers[i].name,
 						formats[j].bpp, rotations[k].angle, fliptab[l].flipname) {
 						igt_require(intel_display_ver(intel_get_drm_devid(data.drm_fd)) >= 5);
-						if (data.format_override != 0) {
-							igt_info("using format override fourcc %.4s\n", (char *)&data.format_override);
-							data.format = data.format_override;
-						}
-						if (data.stride_override != 0) {
-							igt_info("using FB width override %.d\n", data.stride_override);
-							data.hw_stride = data.stride_override;
-							data.max_hw_fb_width = data.stride_override;
-
-						} else {
-							data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
-						}
+						data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
 
 						test_scanout(&data);
 					}
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 13/16] tests/kms_big_fb: Nuke fliptab[]
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (11 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 12/16] tests/kms_big_fb: Nuke the stride/format overrides Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 14/16] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test Ville Syrjala
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Let's just stuff the full transformation into rotations[]
and get rid of fliptab[] and yet another nested loop.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 104 +++++++++++++++++++++++----------------------
 1 file changed, 54 insertions(+), 50 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 6be3062bd335..4c120c602ed9 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -798,15 +798,17 @@ static const struct {
 	{ IGT_ROTATION_90, 90, },
 	{ IGT_ROTATION_180, 180, },
 	{ IGT_ROTATION_270, 270, },
+	{ IGT_ROTATION_0 | IGT_REFLECT_X, 0, },
+	{ IGT_ROTATION_90 | IGT_REFLECT_X, 90, },
+	{ IGT_ROTATION_180 | IGT_REFLECT_X, 180, },
+	{ IGT_ROTATION_270 | IGT_REFLECT_X, 270, },
 };
 
-static const struct {
-	igt_rotation_t flip;
-	const char *flipname;
-} fliptab[] = {
-	{ 0, "" },
-	{ IGT_REFLECT_X, "-hflip" },
-};
+static const char *rotation_flip_str(igt_rotation_t rotation)
+{
+	return rotation & IGT_REFLECT_X ? "-hflip" : "";
+}
+
 igt_main
 {
 	igt_fixture {
@@ -905,8 +907,9 @@ igt_main
 
 				igt_describe("Sanity check if addfb ioctl works correctly for given "
 						"combination of modifier formats and rotation");
-				igt_subtest_f("%s-%dbpp-rotate-%d", modifiers[i].name,
-					      formats[j].bpp, rotations[k].angle)
+				igt_subtest_f("%s-%dbpp-rotate-%d%s", modifiers[i].name,
+					      formats[j].bpp, rotations[k].angle,
+					      rotation_flip_str(rotations[k].rotation))
 					test_scanout(&data);
 			}
 
@@ -922,54 +925,55 @@ igt_main
 
 		set_max_hw_stride(&data);
 
-		for (int l = 0; l < ARRAY_SIZE(fliptab); l++) {
-			for (int j = 0; j < ARRAY_SIZE(formats); j++) {
-				/*
-				* try only those formats which can show full length.
-				* Here 32K is used to have CI test results consistent
-				* for all platforms, 32K is smallest number possbily
-				* coming to data.hw_stride from above set_max_hw_stride()
-				*/
-				if (32768 / (formats[j].bpp >> 3) > 8192)
+		for (int j = 0; j < ARRAY_SIZE(formats); j++) {
+			/*
+			 * try only those formats which can show full length.
+			 * Here 32K is used to have CI test results consistent
+			 * for all platforms, 32K is smallest number possbily
+			 * coming to data.hw_stride from above set_max_hw_stride()
+			 */
+			if (32768 / (formats[j].bpp >> 3) > 8192)
+				continue;
+
+			data.format = formats[j].format;
+
+			for (int k = 0; k < ARRAY_SIZE(rotations); k++) {
+				data.rotation = rotations[k].rotation;
+
+				// this combination will never happen.
+				if (igt_rotation_90_or_270(data.rotation) ||
+				    (data.rotation & IGT_REFLECT_X &&
+				     modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR))
 					continue;
 
-				data.format = formats[j].format;
+				igt_describe("test maximum hardware supported stride length for given bpp and modifiers.");
+				igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d%s", modifiers[i].name,
+					      formats[j].bpp, rotations[k].angle,
+					      rotation_flip_str(rotations[k].rotation)) {
+					igt_require(intel_display_ver(intel_get_drm_devid(data.drm_fd)) >= 5);
+					data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
 
-				for (int k = 0; k < ARRAY_SIZE(rotations); k++) {
-					data.rotation = rotations[k].rotation | fliptab[l].flip;
-
-					// this combination will never happen.
-					if (igt_rotation_90_or_270(data.rotation) ||
-					    (fliptab[l].flip == IGT_REFLECT_X && modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR))
-						continue;
-
-					igt_describe("test maximum hardware supported stride length for given bpp and modifiers.");
-					igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d%s", modifiers[i].name,
-						formats[j].bpp, rotations[k].angle, fliptab[l].flipname) {
-						igt_require(intel_display_ver(intel_get_drm_devid(data.drm_fd)) >= 5);
-						data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
-
-						test_scanout(&data);
-					}
+					test_scanout(&data);
+				}
 
-					// async flip doesn't support linear fbs.
-					if (modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR)
-						continue;
+				// async flip doesn't support linear fbs.
+				if (modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR)
+					continue;
 
-					data.async_flip_test = true;
-					igt_describe("test async flip on maximum hardware supported stride length for given bpp and modifiers.");
-					igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d%s-async-flip", modifiers[i].name,
-						formats[j].bpp, rotations[k].angle, fliptab[l].flipname) {
-							igt_require(igt_has_drm_cap(data.drm_fd, DRM_CAP_ASYNC_PAGE_FLIP));
-							data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
-							test_scanout(&data);
-					}
-					data.async_flip_test = false;
+				data.async_flip_test = true;
+				igt_describe("test async flip on maximum hardware supported stride length for given bpp and modifiers.");
+				igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d%s-async-flip", modifiers[i].name,
+					      formats[j].bpp, rotations[k].angle,
+					      rotation_flip_str(rotations[k].rotation)) {
+					igt_require(igt_has_drm_cap(data.drm_fd, DRM_CAP_ASYNC_PAGE_FLIP));
+					data.max_hw_fb_width = min(data.hw_stride / (formats[j].bpp >> 3), data.max_fb_width);
+					test_scanout(&data);
 				}
-
-				igt_fixture
-					cleanup_fb(&data);
+				data.async_flip_test = false;
 			}
+
+			igt_fixture
+				cleanup_fb(&data);
 		}
 	}
 	data.max_hw_stride_test = false;
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 14/16] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (12 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 13/16] tests/kms_big_fb: Nuke fliptab[] Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 15/16] tests/kms_plane: Abstract single vs. multiple crsc better Ville Syrjala
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Don't corrupt the plane state with some totally unsupported
rotation. Doing so causes subseuqenct subtests to just fail
on account of that bad rotation state leaking between the
subtests.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_big_fb.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index 4c120c602ed9..c8e169cf8377 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -489,6 +489,7 @@ max_hw_stride_async_flip_test(data_t *data)
 
 	primary = igt_output_get_plane_type(data->output, DRM_PLANE_TYPE_PRIMARY);
 
+	igt_require(igt_plane_has_rotation(primary, data->rotation));
 	igt_plane_set_rotation(primary, data->rotation);
 
 	igt_require_f(igt_display_try_commit2(&data->display, COMMIT_ATOMIC) == 0,
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 15/16] tests/kms_plane: Abstract single vs. multiple crsc better
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (13 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 14/16] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 16/16] tests/kms_plane: Use single colors during extended test Ville Syrjala
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Add a single point where we decide whether to use single vs.
multiple colors, rather than just assuming planar==single colors
and packed==multiple colors.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_plane.c | 61 ++++++++++++++++++++++++++---------------------
 1 file changed, 34 insertions(+), 27 deletions(-)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 77b13a33ed49..760df5d7d334 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -574,7 +574,7 @@ static void capture_crc(data_t *data, unsigned int vblank, igt_crc_t *crc)
 		      crc->frame, vblank);
 }
 
-static void capture_format_crcs_packed(data_t *data, enum pipe pipe,
+static void capture_format_crcs_single(data_t *data, enum pipe pipe,
 				       igt_plane_t *plane,
 				       uint32_t format, uint64_t modifier,
 				       int width, int height,
@@ -596,13 +596,13 @@ static void capture_format_crcs_packed(data_t *data, enum pipe pipe,
 	igt_pipe_crc_get_current(data->drm_fd, data->pipe_crc, &crc[0]);
 }
 
-static void capture_format_crcs_planar(data_t *data, enum pipe pipe,
-				       igt_plane_t *plane,
-				       uint32_t format, uint64_t modifier,
-				       int width, int height,
-				       enum igt_color_encoding encoding,
-				       enum igt_color_range range,
-				       igt_crc_t crc[], struct igt_fb *fb)
+static void capture_format_crcs_multiple(data_t *data, enum pipe pipe,
+					 igt_plane_t *plane,
+					 uint32_t format, uint64_t modifier,
+					 int width, int height,
+					 enum igt_color_encoding encoding,
+					 enum igt_color_range range,
+					 igt_crc_t crc[], struct igt_fb *fb)
 {
 	unsigned int vblank[ARRAY_SIZE(colors_extended)];
 	struct drm_event_vblank ev;
@@ -719,6 +719,11 @@ restart_round:
 	capture_crc(data, vblank[i - 1], &crc[i - 1]);
 }
 
+static bool use_multiple_colors(data_t *data, uint32_t format)
+{
+	return igt_format_is_yuv_semiplanar(format);
+}
+
 static bool test_format_plane_colors(data_t *data, enum pipe pipe,
 				     igt_plane_t *plane,
 				     uint32_t format, uint64_t modifier,
@@ -733,17 +738,17 @@ static bool test_format_plane_colors(data_t *data, enum pipe pipe,
 	int crc_mismatch_count = 0;
 	bool result = true;
 	int i, total_crcs = 1;
-	bool planar = igt_format_is_yuv_semiplanar(format);
 
-	if (planar) {
-		capture_format_crcs_planar(data, pipe, plane, format, modifier,
-					   width, height, encoding, range, crc,
-					   fb);
+	if (use_multiple_colors(data, format)) {
+		capture_format_crcs_multiple(data, pipe, plane, format, modifier,
+					     width, height, encoding, range, crc,
+					     fb);
 		total_crcs = data->num_colors;
-	} else
-		capture_format_crcs_packed(data, pipe, plane, format, modifier,
+	} else {
+		capture_format_crcs_single(data, pipe, plane, format, modifier,
 					   width, height, encoding, range, crc,
 					   fb);
+	}
 
 	for (i = 0; i < total_crcs; i++) {
 		if (!igt_check_crc_equal(&crc[i], &ref_crc[i])) {
@@ -833,9 +838,11 @@ static bool test_format_plane_yuv(data_t *data, enum pipe pipe,
 	return result;
 }
 
-enum crc_set { PACKED_CRC_SET,
-	       PLANAR_CRC_SET,
-	       MAX_CRC_SET };
+enum crc_set {
+	SINGLE_CRC_SET,
+	MULTIPLE_CRC_SET,
+	MAX_CRC_SET,
+};
 
 struct format_mod {
 	uint64_t modifier;
@@ -913,22 +920,22 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
 		igt_remove_fb(data->drm_fd, &test_fb);
 	}
 
-	capture_format_crcs_packed(data, pipe, plane, ref.format, ref.modifier,
+	capture_format_crcs_single(data, pipe, plane, ref.format, ref.modifier,
 				   width, height, IGT_COLOR_YCBCR_BT709,
 				   IGT_COLOR_YCBCR_LIMITED_RANGE,
-				   ref_crc[PACKED_CRC_SET], &fb);
+				   ref_crc[SINGLE_CRC_SET], &fb);
 
-	capture_format_crcs_planar(data, pipe, plane, ref.format, ref.modifier,
-				   width, height, IGT_COLOR_YCBCR_BT709,
-				   IGT_COLOR_YCBCR_LIMITED_RANGE,
-				   ref_crc[PLANAR_CRC_SET], &fb);
+	capture_format_crcs_multiple(data, pipe, plane, ref.format, ref.modifier,
+				     width, height, IGT_COLOR_YCBCR_BT709,
+				     IGT_COLOR_YCBCR_LIMITED_RANGE,
+				     ref_crc[MULTIPLE_CRC_SET], &fb);
 
 	/*
 	 * Make sure we have some difference between the colors. This
 	 * at least avoids claiming success when everything is just
 	 * black all the time (eg. if the plane is never even on).
 	 */
-	igt_require(num_unique_crcs(ref_crc[PLANAR_CRC_SET], data->num_colors) > 1);
+	igt_require(num_unique_crcs(ref_crc[MULTIPLE_CRC_SET], data->num_colors) > 1);
 
 	for (int i = 0; i < plane->format_mod_count; i++) {
 		struct format_mod f = {
@@ -965,8 +972,8 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
 				continue;
 		}
 
-		crcset = ref_crc[(igt_format_is_yuv_semiplanar(f.format)
-				 ? PLANAR_CRC_SET : PACKED_CRC_SET)];
+		crcset = ref_crc[use_multiple_colors(data, f.format) ?
+				 MULTIPLE_CRC_SET : SINGLE_CRC_SET];
 
 		if (igt_format_is_yuv(f.format))
 			result &= test_format_plane_yuv(data, pipe, plane,
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t 16/16] tests/kms_plane: Use single colors during extended test
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (14 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 15/16] tests/kms_plane: Abstract single vs. multiple crsc better Ville Syrjala
@ 2021-07-16 14:44 ` Ville Syrjala
  2021-07-16 15:38 ` [igt-dev] ✓ Fi.CI.BAT: success for kms: Various cleanups and fixes Patchwork
  2021-07-16 19:22 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  17 siblings, 0 replies; 23+ messages in thread
From: Ville Syrjala @ 2021-07-16 14:44 UTC (permalink / raw)
  To: igt-dev

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Sometimes it's nice to checks which colors are actually different.
So let's make the extended test always use single colors.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 tests/kms_plane.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 760df5d7d334..f1a94b2c54c4 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -721,7 +721,7 @@ restart_round:
 
 static bool use_multiple_colors(data_t *data, uint32_t format)
 {
-	return igt_format_is_yuv_semiplanar(format);
+	return data->extended || igt_format_is_yuv_semiplanar(format);
 }
 
 static bool test_format_plane_colors(data_t *data, enum pipe pipe,
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.BAT: success for kms: Various cleanups and fixes
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (15 preceding siblings ...)
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 16/16] tests/kms_plane: Use single colors during extended test Ville Syrjala
@ 2021-07-16 15:38 ` Patchwork
  2021-07-16 19:22 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  17 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2021-07-16 15:38 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: igt-dev


[-- Attachment #1.1: Type: text/plain, Size: 5526 bytes --]

== Series Details ==

Series: kms: Various cleanups and fixes
URL   : https://patchwork.freedesktop.org/series/92656/
State : success

== Summary ==

CI Bug Log - changes from IGT_6143 -> IGTPW_6031
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

  * igt@runner@aborted:
    - fi-bdw-5557u:       NOTRUN -> [FAIL][1] ([i915#1602] / [i915#2029])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/fi-bdw-5557u/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@hangcheck:
    - {fi-hsw-gt1}:       [DMESG-WARN][2] ([i915#3303]) -> [PASS][3]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/fi-hsw-gt1/igt@i915_selftest@live@hangcheck.html
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/fi-hsw-gt1/igt@i915_selftest@live@hangcheck.html

  
#### Warnings ####

  * igt@i915_pm_rpm@basic-rte:
    - fi-kbl-guc:         [SKIP][4] ([fdo#109271]) -> [FAIL][5] ([i915#579])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/fi-kbl-guc/igt@i915_pm_rpm@basic-rte.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/fi-kbl-guc/igt@i915_pm_rpm@basic-rte.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
  [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
  [i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029
  [i915#3303]: https://gitlab.freedesktop.org/drm/intel/issues/3303
  [i915#579]: https://gitlab.freedesktop.org/drm/intel/issues/579


Participating hosts (40 -> 35)
------------------------------

  Missing    (5): fi-ilk-m540 fi-hsw-4200u fi-bsw-n3050 fi-bsw-cyan fi-bdw-samus 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6143 -> IGTPW_6031

  CI-20190529: 20190529
  CI_DRM_10345: 8c6a974b932fbaa798102b4713ceedf3b04227d9 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_6031: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/index.html
  IGT_6143: cd649eee0f74fa6ee71de18ff59b5ae39fd62159 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git



== Testlist changes ==

+igt@kms_big_fb@linear-8bpp-rotate-0-hflip
+igt@kms_big_fb@linear-8bpp-rotate-90-hflip
+igt@kms_big_fb@linear-8bpp-rotate-180-hflip
+igt@kms_big_fb@linear-8bpp-rotate-270-hflip
+igt@kms_big_fb@linear-16bpp-rotate-0-hflip
+igt@kms_big_fb@linear-16bpp-rotate-90-hflip
+igt@kms_big_fb@linear-16bpp-rotate-180-hflip
+igt@kms_big_fb@linear-16bpp-rotate-270-hflip
+igt@kms_big_fb@linear-32bpp-rotate-0-hflip
+igt@kms_big_fb@linear-32bpp-rotate-90-hflip
+igt@kms_big_fb@linear-32bpp-rotate-180-hflip
+igt@kms_big_fb@linear-32bpp-rotate-270-hflip
+igt@kms_big_fb@linear-64bpp-rotate-0-hflip
+igt@kms_big_fb@linear-64bpp-rotate-90-hflip
+igt@kms_big_fb@linear-64bpp-rotate-180-hflip
+igt@kms_big_fb@linear-64bpp-rotate-270-hflip
+igt@kms_big_fb@x-tiled-8bpp-rotate-0-hflip
+igt@kms_big_fb@x-tiled-8bpp-rotate-90-hflip
+igt@kms_big_fb@x-tiled-8bpp-rotate-180-hflip
+igt@kms_big_fb@x-tiled-8bpp-rotate-270-hflip
+igt@kms_big_fb@x-tiled-16bpp-rotate-0-hflip
+igt@kms_big_fb@x-tiled-16bpp-rotate-90-hflip
+igt@kms_big_fb@x-tiled-16bpp-rotate-180-hflip
+igt@kms_big_fb@x-tiled-16bpp-rotate-270-hflip
+igt@kms_big_fb@x-tiled-32bpp-rotate-0-hflip
+igt@kms_big_fb@x-tiled-32bpp-rotate-90-hflip
+igt@kms_big_fb@x-tiled-32bpp-rotate-180-hflip
+igt@kms_big_fb@x-tiled-32bpp-rotate-270-hflip
+igt@kms_big_fb@x-tiled-64bpp-rotate-0-hflip
+igt@kms_big_fb@x-tiled-64bpp-rotate-90-hflip
+igt@kms_big_fb@x-tiled-64bpp-rotate-180-hflip
+igt@kms_big_fb@x-tiled-64bpp-rotate-270-hflip
+igt@kms_big_fb@yf-tiled-8bpp-rotate-0-hflip
+igt@kms_big_fb@yf-tiled-8bpp-rotate-90-hflip
+igt@kms_big_fb@yf-tiled-8bpp-rotate-180-hflip
+igt@kms_big_fb@yf-tiled-8bpp-rotate-270-hflip
+igt@kms_big_fb@yf-tiled-16bpp-rotate-0-hflip
+igt@kms_big_fb@yf-tiled-16bpp-rotate-90-hflip
+igt@kms_big_fb@yf-tiled-16bpp-rotate-180-hflip
+igt@kms_big_fb@yf-tiled-16bpp-rotate-270-hflip
+igt@kms_big_fb@yf-tiled-32bpp-rotate-0-hflip
+igt@kms_big_fb@yf-tiled-32bpp-rotate-90-hflip
+igt@kms_big_fb@yf-tiled-32bpp-rotate-180-hflip
+igt@kms_big_fb@yf-tiled-32bpp-rotate-270-hflip
+igt@kms_big_fb@yf-tiled-64bpp-rotate-0-hflip
+igt@kms_big_fb@yf-tiled-64bpp-rotate-90-hflip
+igt@kms_big_fb@yf-tiled-64bpp-rotate-180-hflip
+igt@kms_big_fb@yf-tiled-64bpp-rotate-270-hflip
+igt@kms_big_fb@y-tiled-8bpp-rotate-0-hflip
+igt@kms_big_fb@y-tiled-8bpp-rotate-90-hflip
+igt@kms_big_fb@y-tiled-8bpp-rotate-180-hflip
+igt@kms_big_fb@y-tiled-8bpp-rotate-270-hflip
+igt@kms_big_fb@y-tiled-16bpp-rotate-0-hflip
+igt@kms_big_fb@y-tiled-16bpp-rotate-90-hflip
+igt@kms_big_fb@y-tiled-16bpp-rotate-180-hflip
+igt@kms_big_fb@y-tiled-16bpp-rotate-270-hflip
+igt@kms_big_fb@y-tiled-32bpp-rotate-0-hflip
+igt@kms_big_fb@y-tiled-32bpp-rotate-90-hflip
+igt@kms_big_fb@y-tiled-32bpp-rotate-180-hflip
+igt@kms_big_fb@y-tiled-32bpp-rotate-270-hflip
+igt@kms_big_fb@y-tiled-64bpp-rotate-0-hflip
+igt@kms_big_fb@y-tiled-64bpp-rotate-90-hflip
+igt@kms_big_fb@y-tiled-64bpp-rotate-180-hflip
+igt@kms_big_fb@y-tiled-64bpp-rotate-270-hflip

== Logs ==

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

[-- Attachment #1.2: Type: text/html, Size: 6553 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ Fi.CI.IGT: failure for kms: Various cleanups and fixes
  2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
                   ` (16 preceding siblings ...)
  2021-07-16 15:38 ` [igt-dev] ✓ Fi.CI.BAT: success for kms: Various cleanups and fixes Patchwork
@ 2021-07-16 19:22 ` Patchwork
  17 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2021-07-16 19:22 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: igt-dev


[-- Attachment #1.1: Type: text/plain, Size: 30244 bytes --]

== Series Details ==

Series: kms: Various cleanups and fixes
URL   : https://patchwork.freedesktop.org/series/92656/
State : failure

== Summary ==

CI Bug Log - changes from IGT_6143_full -> IGTPW_6031_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_6031_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_6031_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_6031/index.html

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

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

### IGT changes ###

#### Possible regressions ####

  * {igt@kms_big_fb@linear-32bpp-rotate-270-hflip} (NEW):
    - shard-tglb:         NOTRUN -> [SKIP][1] +44 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb2/igt@kms_big_fb@linear-32bpp-rotate-270-hflip.html

  * {igt@kms_big_fb@x-tiled-64bpp-rotate-90-hflip} (NEW):
    - shard-iclb:         NOTRUN -> [SKIP][2] +35 similar issues
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb5/igt@kms_big_fb@x-tiled-64bpp-rotate-90-hflip.html

  * {igt@kms_big_fb@y-tiled-16bpp-rotate-180-hflip} (NEW):
    - shard-iclb:         NOTRUN -> [DMESG-WARN][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_big_fb@y-tiled-16bpp-rotate-180-hflip.html

  
#### Warnings ####

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-270:
    - shard-iclb:         [SKIP][4] ([fdo#110723]) -> [SKIP][5] +12 similar issues
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-iclb8/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-90:
    - shard-tglb:         [SKIP][6] ([fdo#111615]) -> [SKIP][7] +27 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-tglb5/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb1/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html

  
New tests
---------

  New tests have been introduced between IGT_6143_full and IGTPW_6031_full:

### New IGT tests (64) ###

  * igt@kms_big_fb@linear-16bpp-rotate-0-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.02, 0.21] s

  * igt@kms_big_fb@linear-16bpp-rotate-180-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.01, 0.22] s

  * igt@kms_big_fb@linear-16bpp-rotate-270-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.02, 0.17] s

  * igt@kms_big_fb@linear-16bpp-rotate-90-hflip:
    - Statuses : 4 skip(s)
    - Exec time: [0.02, 0.20] s

  * igt@kms_big_fb@linear-32bpp-rotate-0-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.03, 0.20] s

  * igt@kms_big_fb@linear-32bpp-rotate-180-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.01, 0.22] s

  * igt@kms_big_fb@linear-32bpp-rotate-270-hflip:
    - Statuses : 4 skip(s)
    - Exec time: [0.01, 0.21] s

  * igt@kms_big_fb@linear-32bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.03, 0.21] s

  * igt@kms_big_fb@linear-64bpp-rotate-0-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.06, 0.46] s

  * igt@kms_big_fb@linear-64bpp-rotate-180-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.06, 0.44] s

  * igt@kms_big_fb@linear-64bpp-rotate-270-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.07, 0.45] s

  * igt@kms_big_fb@linear-64bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.05, 0.45] s

  * igt@kms_big_fb@linear-8bpp-rotate-0-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.03, 0.24] s

  * igt@kms_big_fb@linear-8bpp-rotate-180-hflip:
    - Statuses : 4 skip(s)
    - Exec time: [0.02, 0.24] s

  * igt@kms_big_fb@linear-8bpp-rotate-270-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.03, 0.23] s

  * igt@kms_big_fb@linear-8bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.02, 0.23] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-0-hflip:
    - Statuses : 1 pass(s) 3 skip(s)
    - Exec time: [0.02, 1.34] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-180-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.02, 1.77] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-270-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.01, 0.17] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.02, 0.19] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.01, 2.36] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-180-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.02, 2.53] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-270-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.01, 0.22] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.01, 0.22] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.07, 3.79] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-180-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.06, 3.74] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-270-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.07, 0.45] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.06, 0.45] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 4 skip(s)
    - Exec time: [0.03, 1.53] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-180-hflip:
    - Statuses : 2 pass(s) 4 skip(s)
    - Exec time: [0.03, 1.56] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.02, 0.27] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.04, 0.25] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 2 skip(s)
    - Exec time: [0.0, 1.79] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-180-hflip:
    - Statuses : 1 dmesg-warn(s) 1 pass(s) 3 skip(s)
    - Exec time: [0.0, 2.09] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-270-hflip:
    - Statuses : 1 pass(s) 2 skip(s)
    - Exec time: [0.0, 1.88] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-90-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.0, 2.08] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.05, 2.33] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-180-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.0, 2.49] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-270-hflip:
    - Statuses : 2 pass(s) 2 skip(s)
    - Exec time: [0.13, 2.31] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-90-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.0, 2.29] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 4 skip(s)
    - Exec time: [0.0, 3.40] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-180-hflip:
    - Statuses : 2 pass(s) 2 skip(s)
    - Exec time: [0.0, 3.36] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-270-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.0, 0.48] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.0, 0.49] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-0-hflip:
    - Statuses : 2 pass(s) 3 skip(s)
    - Exec time: [0.0, 1.53] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-180-hflip:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-270-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.0, 0.25] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-90-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.0, 0.23] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-0-hflip:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 1.72] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-180-hflip:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 1.68] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-270-hflip:
    - Statuses : 1 pass(s) 5 skip(s)
    - Exec time: [0.0, 1.74] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-90-hflip:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 2.05] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-0-hflip:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 1.97] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-180-hflip:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 2.46] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-270-hflip:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 2.27] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-90-hflip:
    - Statuses : 1 pass(s) 5 skip(s)
    - Exec time: [0.0, 2.32] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-0-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-180-hflip:
    - Statuses : 4 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-270-hflip:
    - Statuses : 5 skip(s)
    - Exec time: [0.00] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-90-hflip:
    - Statuses : 4 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-0-hflip:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-180-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-270-hflip:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-90-hflip:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_persistence@legacy-engines-mixed:
    - shard-snb:          NOTRUN -> [SKIP][8] ([fdo#109271] / [i915#1099]) +5 similar issues
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-snb6/igt@gem_ctx_persistence@legacy-engines-mixed.html

  * igt@gem_eio@in-flight-contexts-immediate:
    - shard-tglb:         [PASS][9] -> [TIMEOUT][10] ([i915#3063]) +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-tglb6/igt@gem_eio@in-flight-contexts-immediate.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb3/igt@gem_eio@in-flight-contexts-immediate.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-glk:          [PASS][11] -> [FAIL][12] ([i915#2846])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-glk2/igt@gem_exec_fair@basic-deadline.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-glk5/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
    - shard-glk:          [PASS][13] -> [FAIL][14] ([i915#2842]) +1 similar issue
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-glk5/igt@gem_exec_fair@basic-none-vip@rcs0.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-glk9/igt@gem_exec_fair@basic-none-vip@rcs0.html

  * igt@gem_exec_fair@basic-pace@bcs0:
    - shard-tglb:         [PASS][15] -> [FAIL][16] ([i915#2842]) +2 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-tglb3/igt@gem_exec_fair@basic-pace@bcs0.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb5/igt@gem_exec_fair@basic-pace@bcs0.html

  * igt@gem_exec_fair@basic-pace@rcs0:
    - shard-kbl:          [PASS][17] -> [FAIL][18] ([i915#2842])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-kbl1/igt@gem_exec_fair@basic-pace@rcs0.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl3/igt@gem_exec_fair@basic-pace@rcs0.html

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

  * igt@gem_exec_flush@basic-batch-kernel-default-cmd:
    - shard-iclb:         NOTRUN -> [SKIP][20] ([fdo#109313])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb3/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
    - shard-tglb:         NOTRUN -> [SKIP][21] ([fdo#109313])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb7/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html

  * igt@gem_exec_reloc@basic-wide-active@bcs0:
    - shard-apl:          NOTRUN -> [FAIL][22] ([i915#3633]) +3 similar issues
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl6/igt@gem_exec_reloc@basic-wide-active@bcs0.html

  * igt@gem_exec_suspend@basic-s3:
    - shard-apl:          NOTRUN -> [DMESG-WARN][23] ([i915#180])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl1/igt@gem_exec_suspend@basic-s3.html

  * igt@gem_exec_whisper@basic-fds-forked:
    - shard-glk:          [PASS][24] -> [DMESG-WARN][25] ([i915#118] / [i915#95]) +1 similar issue
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-glk4/igt@gem_exec_whisper@basic-fds-forked.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-glk9/igt@gem_exec_whisper@basic-fds-forked.html

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

  * igt@gem_pread@exhaustion:
    - shard-snb:          NOTRUN -> [WARN][27] ([i915#2658])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-snb6/igt@gem_pread@exhaustion.html

  * igt@gem_render_copy@y-tiled-to-vebox-linear:
    - shard-iclb:         NOTRUN -> [SKIP][28] ([i915#768]) +2 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@gem_render_copy@y-tiled-to-vebox-linear.html

  * igt@gem_userptr_blits@dmabuf-sync:
    - shard-apl:          NOTRUN -> [SKIP][29] ([fdo#109271] / [i915#3323])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl8/igt@gem_userptr_blits@dmabuf-sync.html

  * igt@gem_userptr_blits@input-checking:
    - shard-snb:          NOTRUN -> [DMESG-WARN][30] ([i915#3002])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-snb7/igt@gem_userptr_blits@input-checking.html

  * igt@gen3_render_linear_blits:
    - shard-iclb:         NOTRUN -> [SKIP][31] ([fdo#109289]) +3 similar issues
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb5/igt@gen3_render_linear_blits.html

  * igt@gen9_exec_parse@basic-rejected:
    - shard-iclb:         NOTRUN -> [SKIP][32] ([fdo#112306]) +1 similar issue
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb4/igt@gen9_exec_parse@basic-rejected.html

  * igt@gen9_exec_parse@basic-rejected-ctx-param:
    - shard-tglb:         NOTRUN -> [SKIP][33] ([fdo#112306])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb1/igt@gen9_exec_parse@basic-rejected-ctx-param.html

  * igt@gen9_exec_parse@batch-invalid-length:
    - shard-snb:          NOTRUN -> [SKIP][34] ([fdo#109271]) +499 similar issues
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-snb2/igt@gen9_exec_parse@batch-invalid-length.html

  * igt@gen9_exec_parse@bb-large:
    - shard-iclb:         NOTRUN -> [SKIP][35] ([i915#2527])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@gen9_exec_parse@bb-large.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90:
    - shard-tglb:         NOTRUN -> [SKIP][36] ([fdo#111614]) +2 similar issues
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb6/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-16bpp-rotate-0:
    - shard-glk:          [PASS][37] -> [FAIL][38] ([i915#3331])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-glk6/igt@kms_big_fb@y-tiled-16bpp-rotate-0.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-glk6/igt@kms_big_fb@y-tiled-16bpp-rotate-0.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-90:
    - shard-iclb:         NOTRUN -> [SKIP][39] ([fdo#110725] / [fdo#111614]) +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb4/igt@kms_big_fb@y-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip:
    - shard-apl:          NOTRUN -> [SKIP][40] ([fdo#109271] / [i915#3777]) +2 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl6/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip.html

  * {igt@kms_big_fb@yf-tiled-64bpp-rotate-90-hflip} (NEW):
    - shard-glk:          NOTRUN -> [SKIP][41] ([fdo#109271]) +80 similar issues
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-glk6/igt@kms_big_fb@yf-tiled-64bpp-rotate-90-hflip.html

  * igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][42] ([i915#3689]) +9 similar issues
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb5/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_ccs.html

  * igt@kms_cdclk@mode-transition:
    - shard-apl:          NOTRUN -> [SKIP][43] ([fdo#109271]) +306 similar issues
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl6/igt@kms_cdclk@mode-transition.html

  * igt@kms_chamelium@dp-crc-multiple:
    - shard-tglb:         NOTRUN -> [SKIP][44] ([fdo#109284] / [fdo#111827]) +5 similar issues
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb6/igt@kms_chamelium@dp-crc-multiple.html

  * igt@kms_chamelium@dp-hpd-storm:
    - shard-iclb:         NOTRUN -> [SKIP][45] ([fdo#109284] / [fdo#111827]) +8 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb4/igt@kms_chamelium@dp-hpd-storm.html

  * igt@kms_chamelium@hdmi-aspect-ratio:
    - shard-glk:          NOTRUN -> [SKIP][46] ([fdo#109271] / [fdo#111827]) +2 similar issues
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-glk5/igt@kms_chamelium@hdmi-aspect-ratio.html

  * igt@kms_chamelium@vga-hpd-without-ddc:
    - shard-snb:          NOTRUN -> [SKIP][47] ([fdo#109271] / [fdo#111827]) +21 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-snb7/igt@kms_chamelium@vga-hpd-without-ddc.html

  * igt@kms_color_chamelium@pipe-a-ctm-limited-range:
    - shard-apl:          NOTRUN -> [SKIP][48] ([fdo#109271] / [fdo#111827]) +21 similar issues
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl1/igt@kms_color_chamelium@pipe-a-ctm-limited-range.html

  * igt@kms_color_chamelium@pipe-b-ctm-0-5:
    - shard-kbl:          NOTRUN -> [SKIP][49] ([fdo#109271] / [fdo#111827]) +5 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl6/igt@kms_color_chamelium@pipe-b-ctm-0-5.html

  * igt@kms_color_chamelium@pipe-d-ctm-red-to-blue:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([fdo#109278] / [fdo#109284] / [fdo#111827])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html

  * igt@kms_content_protection@lic:
    - shard-apl:          NOTRUN -> [TIMEOUT][51] ([i915#1319]) +3 similar issues
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl7/igt@kms_content_protection@lic.html

  * igt@kms_content_protection@type1:
    - shard-iclb:         NOTRUN -> [SKIP][52] ([fdo#109300] / [fdo#111066]) +1 similar issue
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_content_protection@type1.html

  * igt@kms_content_protection@uevent:
    - shard-kbl:          NOTRUN -> [FAIL][53] ([i915#2105])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl7/igt@kms_content_protection@uevent.html

  * igt@kms_cursor_crc@pipe-b-cursor-512x512-onscreen:
    - shard-iclb:         NOTRUN -> [SKIP][54] ([fdo#109278] / [fdo#109279]) +2 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb2/igt@kms_cursor_crc@pipe-b-cursor-512x512-onscreen.html

  * igt@kms_cursor_crc@pipe-c-cursor-32x32-offscreen:
    - shard-tglb:         NOTRUN -> [SKIP][55] ([i915#3319]) +2 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb3/igt@kms_cursor_crc@pipe-c-cursor-32x32-offscreen.html

  * igt@kms_cursor_crc@pipe-c-cursor-512x170-rapid-movement:
    - shard-tglb:         NOTRUN -> [SKIP][56] ([i915#3359])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb7/igt@kms_cursor_crc@pipe-c-cursor-512x170-rapid-movement.html

  * igt@kms_cursor_crc@pipe-c-cursor-512x512-random:
    - shard-tglb:         NOTRUN -> [SKIP][57] ([fdo#109279] / [i915#3359]) +3 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb6/igt@kms_cursor_crc@pipe-c-cursor-512x512-random.html

  * igt@kms_cursor_crc@pipe-d-cursor-256x256-onscreen:
    - shard-kbl:          NOTRUN -> [SKIP][58] ([fdo#109271]) +114 similar issues
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl6/igt@kms_cursor_crc@pipe-d-cursor-256x256-onscreen.html

  * igt@kms_cursor_crc@pipe-d-cursor-32x10-offscreen:
    - shard-iclb:         NOTRUN -> [SKIP][59] ([fdo#109278]) +29 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb2/igt@kms_cursor_crc@pipe-d-cursor-32x10-offscreen.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
    - shard-iclb:         NOTRUN -> [SKIP][60] ([fdo#109274] / [fdo#109278]) +1 similar issue
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb8/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-apl:          [PASS][61] -> [INCOMPLETE][62] ([i915#180] / [i915#1982])
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-apl6/igt@kms_fbcon_fbt@fbc-suspend.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl2/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@2x-flip-vs-suspend:
    - shard-iclb:         NOTRUN -> [SKIP][63] ([fdo#109274]) +4 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb2/igt@kms_flip@2x-flip-vs-suspend.html

  * igt@kms_flip@flip-vs-suspend@c-dp1:
    - shard-kbl:          [PASS][64] -> [DMESG-WARN][65] ([i915#180]) +5 similar issues
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-kbl6/igt@kms_flip@flip-vs-suspend@c-dp1.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl3/igt@kms_flip@flip-vs-suspend@c-dp1.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs:
    - shard-kbl:          NOTRUN -> [SKIP][66] ([fdo#109271] / [i915#2672])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render:
    - shard-tglb:         NOTRUN -> [SKIP][67] ([fdo#111825]) +18 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt:
    - shard-iclb:         NOTRUN -> [SKIP][68] ([fdo#109280]) +21 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb8/igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt.html

  * igt@kms_hdr@static-toggle:
    - shard-iclb:         NOTRUN -> [SKIP][69] ([i915#1187])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_hdr@static-toggle.html
    - shard-tglb:         NOTRUN -> [SKIP][70] ([i915#1187])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb6/igt@kms_hdr@static-toggle.html

  * igt@kms_invalid_dotclock:
    - shard-tglb:         NOTRUN -> [SKIP][71] ([fdo#110577])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb3/igt@kms_invalid_dotclock.html
    - shard-iclb:         NOTRUN -> [SKIP][72] ([fdo#109310])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb5/igt@kms_invalid_dotclock.html

  * igt@kms_pipe_crc_basic@hang-read-crc-pipe-d:
    - shard-apl:          NOTRUN -> [SKIP][73] ([fdo#109271] / [i915#533]) +1 similar issue
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl7/igt@kms_pipe_crc_basic@hang-read-crc-pipe-d.html

  * igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes:
    - shard-apl:          [PASS][74] -> [DMESG-WARN][75] ([i915#180]) +1 similar issue
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-apl6/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl8/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes.html

  * igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb:
    - shard-apl:          NOTRUN -> [FAIL][76] ([i915#265])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl7/igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb.html

  * igt@kms_plane_alpha_blend@pipe-a-coverage-vs-premult-vs-constant:
    - shard-iclb:         [PASS][77] -> [SKIP][78] ([fdo#109278])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-iclb3/igt@kms_plane_alpha_blend@pipe-a-coverage-vs-premult-vs-constant.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb2/igt@kms_plane_alpha_blend@pipe-a-coverage-vs-premult-vs-constant.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-opaque-fb:
    - shard-apl:          NOTRUN -> [FAIL][79] ([fdo#108145] / [i915#265]) +1 similar issue
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl8/igt@kms_plane_alpha_blend@pipe-b-alpha-opaque-fb.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb:
    - shard-kbl:          NOTRUN -> [FAIL][80] ([i915#265])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl1/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html

  * igt@kms_plane_lowres@pipe-a-tiling-x:
    - shard-iclb:         NOTRUN -> [SKIP][81] ([i915#3536]) +1 similar issue
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb5/igt@kms_plane_lowres@pipe-a-tiling-x.html

  * igt@kms_plane_lowres@pipe-b-tiling-none:
    - shard-tglb:         NOTRUN -> [SKIP][82] ([i915#3536])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb6/igt@kms_plane_lowres@pipe-b-tiling-none.html

  * igt@kms_plane_multiple@atomic-pipe-c-tiling-y:
    - shard-iclb:         [PASS][83] -> [FAIL][84] ([i915#1779])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-iclb5/igt@kms_plane_multiple@atomic-pipe-c-tiling-y.html
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_plane_multiple@atomic-pipe-c-tiling-y.html

  * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-2:
    - shard-apl:          NOTRUN -> [SKIP][85] ([fdo#109271] / [i915#658]) +5 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl8/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-2.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-2:
    - shard-kbl:          NOTRUN -> [SKIP][86] ([fdo#109271] / [i915#658])
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl1/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-2.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3:
    - shard-iclb:         NOTRUN -> [SKIP][87] ([i915#658]) +1 similar issue
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb5/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html
    - shard-tglb:         NOTRUN -> [SKIP][88] ([i915#2920]) +1 similar issue
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb5/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html

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

  * igt@kms_psr@psr2_primary_page_flip:
    - shard-tglb:         NOTRUN -> [FAIL][90] ([i915#132] / [i915#3467])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb2/igt@kms_psr@psr2_primary_page_flip.html

  * igt@kms_psr@psr2_sprite_plane_move:
    - shard-iclb:         [PASS][91] -> [SKIP][92] ([fdo#109441]) +1 similar issue
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6143/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb1/igt@kms_psr@psr2_sprite_plane_move.html

  * igt@kms_writeback@writeback-check-output:
    - shard-kbl:          NOTRUN -> [SKIP][93] ([fdo#109271] / [i915#2437])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-kbl1/igt@kms_writeback@writeback-check-output.html

  * igt@kms_writeback@writeback-invalid-parameters:
    - shard-apl:          NOTRUN -> [SKIP][94] ([fdo#109271] / [i915#2437])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-apl7/igt@kms_writeback@writeback-invalid-parameters.html
    - shard-iclb:         NOTRUN -> [SKIP][95] ([i915#2437])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb8/igt@kms_writeback@writeback-invalid-parameters.html

  * igt@nouveau_crc@ctx-flip-threshold-reset-after-capture:
    - shard-iclb:         NOTRUN -> [SKIP][96] ([i915#2530]) +1 similar issue
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-iclb7/igt@nouveau_crc@ctx-flip-threshold-reset-after-capture.html

  * igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame:
    - shard-tglb:         NOTRUN -> [SKIP][97] ([i915#2530]) +1 similar issue
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6031/shard-tglb5/igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame.html

  * igt@nouveau_crc@pipe-d-source-outp-complete:
    - shard-iclb:

== Logs ==

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

[-- Attachment #1.2: Type: text/html, Size: 35119 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270()
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270() Ville Syrjala
@ 2021-07-19  4:44   ` Karthik B S
  0 siblings, 0 replies; 23+ messages in thread
From: Karthik B S @ 2021-07-19  4:44 UTC (permalink / raw)
  To: igt-dev

On 7/16/2021 8:14 PM, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Add a helper to simplify the 90/270 vs. 0/180 rotation checks.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
> ---
>   lib/igt_kms.h | 5 +++++
>   1 file changed, 5 insertions(+)
>
> diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> index 8cde24b7911f..45d21e42503e 100644
> --- a/lib/igt_kms.h
> +++ b/lib/igt_kms.h
> @@ -329,6 +329,11 @@ typedef enum {
>   #define IGT_ROTATION_MASK \
>   	(IGT_ROTATION_0 | IGT_ROTATION_90 | IGT_ROTATION_180 | IGT_ROTATION_270)
>   
> +static inline bool igt_rotation_90_or_270(igt_rotation_t rotation)
> +{
> +	return rotation & (IGT_ROTATION_90 | IGT_ROTATION_270);
> +}
> +
>   typedef struct igt_plane {
>   	/*< private >*/
>   	igt_pipe_t *pipe;


_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 02/16] tests/kms_big_fb: Use igt_rotation_90_or_270()
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 02/16] tests/kms_big_fb: Use igt_rotation_90_or_270() Ville Syrjala
@ 2021-07-19  4:46   ` Karthik B S
  0 siblings, 0 replies; 23+ messages in thread
From: Karthik B S @ 2021-07-19  4:46 UTC (permalink / raw)
  To: igt-dev

On 7/16/2021 8:14 PM, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Replace the hand rolled 90/270 rotation checks with
> igt_rotation_90_or_270().
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
> ---
>   tests/kms_big_fb.c | 10 ++++------
>   1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
> index c6f374bdd073..b988a092771a 100644
> --- a/tests/kms_big_fb.c
> +++ b/tests/kms_big_fb.c
> @@ -344,8 +344,7 @@ static bool test_plane(data_t *data)
>   
>   		/* Hardware limitation */
>   		if (data->format == DRM_FORMAT_RGB565 &&
> -		    (data->rotation == IGT_ROTATION_90 ||
> -		     data->rotation == IGT_ROTATION_270)) {
> +		    igt_rotation_90_or_270(data->rotation)) {
>   			x &= ~1;
>   			y &= ~1;
>   		}
> @@ -426,8 +425,7 @@ static bool test_pipe(data_t *data)
>   
>   	width = mode->hdisplay;
>   	height = mode->vdisplay;
> -	if (data->rotation == IGT_ROTATION_90 ||
> -	    data->rotation == IGT_ROTATION_270)
> +	if (igt_rotation_90_or_270(data->rotation))
>   		igt_swap(width, height);
>   
>   	igt_create_color_fb(data->drm_fd, width, height,
> @@ -954,8 +952,8 @@ igt_main
>   					data.rotation = rotations[k].rotation | fliptab[l].flip;
>   
>   					// this combination will never happen.
> -					if ((data.rotation & (IGT_ROTATION_90 | IGT_ROTATION_270)) ||
> -						(fliptab[l].flip == IGT_REFLECT_X && modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR))
> +					if (igt_rotation_90_or_270(data.rotation) ||
> +					    (fliptab[l].flip == IGT_REFLECT_X && modifiers[i].modifier == DRM_FORMAT_MOD_LINEAR))
>   						continue;
>   
>   					igt_describe("test maximum hardware supported stride length for given bpp and modifiers.");


_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 03/16] tests/kms_plane_scaling: Use igt_rotation_90_or_270()
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 03/16] tests/kms_plane_scaling: " Ville Syrjala
@ 2021-07-19  4:46   ` Karthik B S
  0 siblings, 0 replies; 23+ messages in thread
From: Karthik B S @ 2021-07-19  4:46 UTC (permalink / raw)
  To: igt-dev

On 7/16/2021 8:14 PM, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Replace the hand rolled 90/270 rotation check with
> igt_rotation_90_or_270().
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
> ---
>   tests/kms_plane_scaling.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
> index 3f47733edad2..809463a71583 100644
> --- a/tests/kms_plane_scaling.c
> +++ b/tests/kms_plane_scaling.c
> @@ -166,7 +166,7 @@ static bool can_rotate(data_t *d, unsigned format, uint64_t tiling,
>   		return true;
>   
>   	if (intel_display_ver(d->devid) >= 13 &&
> -		(rot == IGT_ROTATION_90 || rot == IGT_ROTATION_270))
> +		igt_rotation_90_or_270(rot))
>   		return false;
>   
>   	switch (format) {


_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t 04/16] tests/kms_rotation_crc: Use igt_rotation_90_or_270()
  2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 04/16] tests/kms_rotation_crc: " Ville Syrjala
@ 2021-07-19  4:48   ` Karthik B S
  0 siblings, 0 replies; 23+ messages in thread
From: Karthik B S @ 2021-07-19  4:48 UTC (permalink / raw)
  To: Ville Syrjala, igt-dev

On 7/16/2021 8:14 PM, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Replace the hand rolled 90/270 rotation checks with
> igt_rotation_90_or_270().
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Karthik B S <karthik.b.s@intel.com>
> ---
>   tests/kms_rotation_crc.c | 30 ++++++++++++++----------------
>   1 file changed, 14 insertions(+), 16 deletions(-)
>
> diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
> index 1497120cd4e0..2c66cd7c4e31 100644
> --- a/tests/kms_rotation_crc.c
> +++ b/tests/kms_rotation_crc.c
> @@ -270,7 +270,7 @@ static void prepare_fbs(data_t *data, igt_output_t *output,
>   	 * For 90/270, we will use create smaller fb so that the rotated
>   	 * frame can fit in
>   	 */
> -	if (data->rotation & (IGT_ROTATION_90 | IGT_ROTATION_270)) {
> +	if (igt_rotation_90_or_270(data->rotation)) {
>   		tiling = data->override_tiling ?: I915_FORMAT_MOD_Y_TILED;
>   
>   		igt_swap(w, h);
> @@ -362,7 +362,7 @@ static void test_single_case(data_t *data, enum pipe pipe,
>   	prepare_fbs(data, output, plane, rect, format);
>   
>   	igt_plane_set_rotation(plane, data->rotation);
> -	if (data->rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +	if (igt_rotation_90_or_270(data->rotation))
>   		igt_plane_set_size(plane, data->fb.height, data->fb.width);
>   
>   	ret = igt_display_try_commit2(display, COMMIT_ATOMIC);
> @@ -396,7 +396,7 @@ static void test_single_case(data_t *data, enum pipe pipe,
>   	 */
>   	if (data->fb_flip.fb_id) {
>   		igt_plane_set_fb(plane, &data->fb_flip);
> -		if (data->rotation == IGT_ROTATION_90 || data->rotation == IGT_ROTATION_270)
> +		if (igt_rotation_90_or_270(data->rotation))
>   			igt_plane_set_size(plane, data->fb.height, data->fb.width);
>   
>   		if (plane->type != DRM_PLANE_TYPE_PRIMARY) {
> @@ -575,7 +575,7 @@ static bool setup_multiplane(data_t *data, planeinfos *planeinfo,
>   		w = planeinfo[c].width & ~3;
>   		h = planeinfo[c].height & ~3;
>   
> -		if (planeinfo[c].rotation_sw & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +		if (igt_rotation_90_or_270(planeinfo[c].rotation_sw))
>   			igt_swap(w, h);
>   
>   		if (!igt_plane_has_format_mod(planeinfo[c].plane,
> @@ -596,7 +596,7 @@ static bool setup_multiplane(data_t *data, planeinfos *planeinfo,
>   		}
>   		igt_plane_set_fb(planeinfo[c].plane, planes[c]);
>   
> -		if (planeinfo[c].rotation_hw & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +		if (igt_rotation_90_or_270(planeinfo[c].rotation_hw))
>   			igt_plane_set_size(planeinfo[c].plane, h, w);
>   
>   		igt_plane_set_position(planeinfo[c].plane, planeinfo[c].x1,
> @@ -729,20 +729,20 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
>   						 * from gen11 onwards.
>   						 */
>   						if (p[0].format == DRM_FORMAT_RGB565 &&
> -						     (planeconfigs[i].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +						     igt_rotation_90_or_270(planeconfigs[i].rotation)
>   						     && intel_display_ver(data->devid) < 11)
>   							continue;
>   
>   						if (p[1].format == DRM_FORMAT_RGB565 &&
> -						     (planeconfigs[j].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +						     igt_rotation_90_or_270(planeconfigs[j].rotation)
>   						     && intel_display_ver(data->devid) < 11)
>   							continue;
>   
> -						if ((planeconfigs[i].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +						if (igt_rotation_90_or_270(planeconfigs[i].rotation)
>   						    && intel_display_ver(data->devid) >= 13)
>   							continue;
>   
> -						if ((planeconfigs[j].rotation & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +						if (igt_rotation_90_or_270(planeconfigs[j].rotation)
>   						    && intel_display_ver(data->devid) >= 13)
>   							continue;
>   						/*
> @@ -1049,12 +1049,11 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
>   			      plane_test_str(subtest->plane),
>   			      rot_test_str(subtest->rot)) {
>   			if (is_i915_device(data.gfx_fd)) {
> -				igt_require(!(subtest->rot &
> -                                            (IGT_ROTATION_90 | IGT_ROTATION_270)) ||
> -                                            (gen >= 9 && gen < 13));
> +				igt_require(!igt_rotation_90_or_270(subtest->rot) ||
> +					    (gen >= 9 && gen < 13));
>   			} else if (is_amdgpu_device(data.gfx_fd)) {
>   				data.override_fmt = DRM_FORMAT_XRGB8888;
> -				if (subtest->rot & (IGT_ROTATION_90 | IGT_ROTATION_270))
> +				if (igt_rotation_90_or_270(subtest->rot))
>   					data.override_tiling = AMD_FMT_MOD |
>   						AMD_FMT_MOD_SET(TILE, AMD_FMT_MOD_TILE_GFX9_64K_S) |
>   						AMD_FMT_MOD_SET(TILE_VERSION, AMD_FMT_MOD_TILE_VER_GFX9);
> @@ -1108,9 +1107,8 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
>   				    (IS_CHERRYVIEW(data.devid) && reflect_x->rot == IGT_ROTATION_0
>   				     && reflect_x->tiling == I915_FORMAT_MOD_X_TILED));
>   			data.rotation = (IGT_REFLECT_X | reflect_x->rot);
> -			igt_require(!(gen >= 13 && (data.rotation &
> -						    (IGT_ROTATION_90 |
> -						     IGT_ROTATION_270))));
> +			igt_require(!(gen >= 13 &&
> +				      igt_rotation_90_or_270(data.rotation)));
>   			data.override_tiling = reflect_x->tiling;
>   			test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY, false);
>   		}


_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2021-07-19  4:48 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-16 14:44 [igt-dev] [PATCH i-g-t 00/16] kms: Various cleanups and fixes Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 01/16] lib/kms: Add igt_rotation_90_or_270() Ville Syrjala
2021-07-19  4:44   ` Karthik B S
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 02/16] tests/kms_big_fb: Use igt_rotation_90_or_270() Ville Syrjala
2021-07-19  4:46   ` Karthik B S
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 03/16] tests/kms_plane_scaling: " Ville Syrjala
2021-07-19  4:46   ` Karthik B S
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 04/16] tests/kms_rotation_crc: " Ville Syrjala
2021-07-19  4:48   ` Karthik B S
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 05/16] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 06/16] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 07/16] tests/kms_plane_scaling: " Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 08/16] tests/kms_big_fb: " Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 09/16] tests/kms_big_fb: Use igt_has_drm_cap() Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 10/16] tests/kms_big_fb: Move batch creation into lower level functions Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 11/16] tests/kms_big_fb: Move format/modifier checks lower Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 12/16] tests/kms_big_fb: Nuke the stride/format overrides Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 13/16] tests/kms_big_fb: Nuke fliptab[] Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 14/16] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 15/16] tests/kms_plane: Abstract single vs. multiple crsc better Ville Syrjala
2021-07-16 14:44 ` [igt-dev] [PATCH i-g-t 16/16] tests/kms_plane: Use single colors during extended test Ville Syrjala
2021-07-16 15:38 ` [igt-dev] ✓ Fi.CI.BAT: success for kms: Various cleanups and fixes Patchwork
2021-07-16 19:22 ` [igt-dev] ✗ Fi.CI.IGT: failure " 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.