All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess
@ 2021-09-02 16:44 Ville Syrjala
  2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 01/11] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
                   ` (12 more replies)
  0 siblings, 13 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:44 UTC (permalink / raw)
  To: igt-dev

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

Reposting of igt_plane_has_rotation() + a few other remaining
bits and bobs from the previous series. The main idea here is
to remove most of the hardcoded platform checks for supported
rotations. Sadly not quite 100% due to a few exceptional cases.

I left out the kms_big_fb fliptab[] nukage for the moment so that
the CI results will be less noisy.

Ville Syrjälä (11):
  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: 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             | 16 ++++++++++
 tests/kms_big_fb.c        | 67 +++++++++++----------------------------
 tests/kms_plane.c         | 61 +++++++++++++++++++----------------
 tests/kms_plane_scaling.c |  5 +--
 tests/kms_rotation_crc.c  | 35 +++++++-------------
 6 files changed, 123 insertions(+), 102 deletions(-)

-- 
2.31.1

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

* [igt-dev] [PATCH i-g-t 01/11] lib/kms: Add igt_plane_has_rotation()
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
@ 2021-09-02 16:44 ` Ville Syrjala
  2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 02/11] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16: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 cc38f5a25334..6b0639f628b9 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 ed598f164a59..b6cbf937166f 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

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

* [igt-dev] [PATCH i-g-t 02/11] tests/kms_rotation_crc: Use igt_plane_has_rotation()
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
  2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 01/11] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
@ 2021-09-02 16:44 ` Ville Syrjala
  2021-09-09 14:59   ` [igt-dev] [PATCH i-g-t v2 02/12] " Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 03/11] tests/kms_plane_scaling: " Ville Syrjala
                   ` (10 subsequent siblings)
  12 siblings, 1 reply; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16: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

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

* [igt-dev] [PATCH i-g-t 03/11] tests/kms_plane_scaling: Use igt_plane_has_rotation()
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
  2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 01/11] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
  2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 02/11] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 04/11] tests/kms_big_fb: " Ville Syrjala
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 04/11] tests/kms_big_fb: Use igt_plane_has_rotation()
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (2 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 03/11] tests/kms_plane_scaling: " Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 05/11] tests/kms_big_fb: Use igt_has_drm_cap() Ville Syrjala
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 05/11] tests/kms_big_fb: Use igt_has_drm_cap()
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (3 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 04/11] tests/kms_big_fb: " Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 06/11] tests/kms_big_fb: Move batch creation into lower level functions Ville Syrjala
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 06/11] tests/kms_big_fb: Move batch creation into lower level functions
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (4 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 05/11] tests/kms_big_fb: Use igt_has_drm_cap() Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 07/11] tests/kms_big_fb: Move format/modifier checks lower Ville Syrjala
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 07/11] tests/kms_big_fb: Move format/modifier checks lower
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (5 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 06/11] tests/kms_big_fb: Move batch creation into lower level functions Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 08/11] tests/kms_big_fb: Nuke the stride/format overrides Ville Syrjala
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 08/11] tests/kms_big_fb: Nuke the stride/format overrides
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (6 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 07/11] tests/kms_big_fb: Move format/modifier checks lower Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 09/11] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test Ville Syrjala
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 09/11] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (7 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 08/11] tests/kms_big_fb: Nuke the stride/format overrides Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 10/11] tests/kms_plane: Abstract single vs. multiple crsc better Ville Syrjala
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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 6be3062bd335..d38c24a70d2b 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

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

* [igt-dev] [PATCH i-g-t 10/11] tests/kms_plane: Abstract single vs. multiple crsc better
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (8 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 09/11] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 11/11] tests/kms_plane: Use single colors during extended test Ville Syrjala
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] [PATCH i-g-t 11/11] tests/kms_plane: Use single colors during extended test
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (9 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 10/11] tests/kms_plane: Abstract single vs. multiple crsc better Ville Syrjala
@ 2021-09-02 16:45 ` Ville Syrjala
  2021-09-02 17:48 ` [igt-dev] ✓ Fi.CI.BAT: success for kms: Clean up the supported rotations mess Patchwork
  2021-09-02 21:43 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  12 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-02 16:45 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

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

* [igt-dev] ✓ Fi.CI.BAT: success for kms: Clean up the supported rotations mess
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (10 preceding siblings ...)
  2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 11/11] tests/kms_plane: Use single colors during extended test Ville Syrjala
@ 2021-09-02 17:48 ` Patchwork
  2021-09-02 21:43 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  12 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2021-09-02 17:48 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: igt-dev

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

== Series Details ==

Series: kms: Clean up the supported rotations mess
URL   : https://patchwork.freedesktop.org/series/94293/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_10548 -> IGTPW_6191
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s3:
    - fi-tgl-1115g4:      [PASS][1] -> [FAIL][2] ([i915#1888])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/fi-tgl-1115g4/igt@gem_exec_suspend@basic-s3.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/fi-tgl-1115g4/igt@gem_exec_suspend@basic-s3.html

  * igt@i915_pm_rpm@module-reload:
    - fi-tgl-y:           [PASS][3] -> [DMESG-WARN][4] ([i915#1982] / [i915#2411])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/fi-tgl-y/igt@i915_pm_rpm@module-reload.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/fi-tgl-y/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live@gt_lrc:
    - fi-rkl-guc:         [PASS][5] -> [DMESG-WARN][6] ([i915#3958])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html

  * igt@i915_selftest@live@hangcheck:
    - fi-snb-2600:        [PASS][7] -> [INCOMPLETE][8] ([i915#3921])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/fi-snb-2600/igt@i915_selftest@live@hangcheck.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/fi-snb-2600/igt@i915_selftest@live@hangcheck.html

  
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
  [i915#3921]: https://gitlab.freedesktop.org/drm/intel/issues/3921
  [i915#3958]: https://gitlab.freedesktop.org/drm/intel/issues/3958


Participating hosts (48 -> 39)
------------------------------

  Missing    (9): fi-ilk-m540 bat-adls-5 fi-hsw-4200u bat-dg1-5 fi-bsw-cyan fi-cfl-guc bat-adlp-4 fi-bdw-samus bat-jsl-1 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6197 -> IGTPW_6191

  CI-20190529: 20190529
  CI_DRM_10548: 50be9d6f82904be755ea5b04efbd6c5e19e2d945 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_6191: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/index.html
  IGT_6197: 40888f97a6ad219f4ed48a1830d0ef3c9617d006 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✗ Fi.CI.IGT: failure for kms: Clean up the supported rotations mess
  2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
                   ` (11 preceding siblings ...)
  2021-09-02 17:48 ` [igt-dev] ✓ Fi.CI.BAT: success for kms: Clean up the supported rotations mess Patchwork
@ 2021-09-02 21:43 ` Patchwork
  12 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2021-09-02 21:43 UTC (permalink / raw)
  To: Ville Syrjala; +Cc: igt-dev

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

== Series Details ==

Series: kms: Clean up the supported rotations mess
URL   : https://patchwork.freedesktop.org/series/94293/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_10548_full -> IGTPW_6191_full
====================================================

Summary
-------

  **FAILURE**

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

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-0:
    - shard-tglb:         NOTRUN -> [SKIP][1] +2 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb7/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html
    - shard-iclb:         NOTRUN -> [SKIP][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb3/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html

  
#### Warnings ####

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-270:
    - shard-iclb:         [SKIP][3] ([fdo#110723]) -> [SKIP][4] +13 similar issues
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb4/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb5/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html

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

  * igt@kms_rotation_crc@multiplane-rotation:
    - shard-snb:          [SKIP][7] ([fdo#109271]) -> [FAIL][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-snb5/igt@kms_rotation_crc@multiplane-rotation.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-snb6/igt@kms_rotation_crc@multiplane-rotation.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@feature_discovery@chamelium:
    - shard-tglb:         NOTRUN -> [SKIP][9] ([fdo#111827])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb6/igt@feature_discovery@chamelium.html

  * igt@gem_ctx_persistence@smoketest:
    - shard-snb:          NOTRUN -> [SKIP][10] ([fdo#109271] / [i915#1099]) +4 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-snb5/igt@gem_ctx_persistence@smoketest.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-kbl:          [PASS][11] -> [FAIL][12] ([i915#2846])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-kbl3/igt@gem_exec_fair@basic-deadline.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl3/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-rrul@rcs0:
    - shard-glk:          NOTRUN -> [FAIL][13] ([i915#2842])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk8/igt@gem_exec_fair@basic-none-rrul@rcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [PASS][14] -> [FAIL][15] ([i915#2842])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk7/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk2/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_fair@basic-pace@bcs0:
    - shard-iclb:         [PASS][16] -> [FAIL][17] ([i915#2842])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb4/igt@gem_exec_fair@basic-pace@bcs0.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@gem_exec_fair@basic-pace@bcs0.html

  * igt@gem_exec_fair@basic-pace@vecs0:
    - shard-tglb:         [PASS][18] -> [FAIL][19] ([i915#2842])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-tglb6/igt@gem_exec_fair@basic-pace@vecs0.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@gem_exec_fair@basic-pace@vecs0.html

  * igt@gem_mmap_gtt@cpuset-big-copy-odd:
    - shard-iclb:         [PASS][20] -> [FAIL][21] ([i915#307])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb4/igt@gem_mmap_gtt@cpuset-big-copy-odd.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb5/igt@gem_mmap_gtt@cpuset-big-copy-odd.html

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

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

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

  * igt@gen3_render_tiledy_blits:
    - shard-tglb:         NOTRUN -> [SKIP][25] ([fdo#109289]) +2 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb7/igt@gen3_render_tiledy_blits.html

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

  * igt@gen9_exec_parse@bb-oversize:
    - shard-tglb:         NOTRUN -> [SKIP][27] ([i915#2856]) +1 similar issue
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@gen9_exec_parse@bb-oversize.html

  * igt@gen9_exec_parse@unaligned-access:
    - shard-iclb:         NOTRUN -> [SKIP][28] ([i915#2856]) +2 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb5/igt@gen9_exec_parse@unaligned-access.html

  * igt@i915_pm_rc6_residency@rc6-fence:
    - shard-tglb:         NOTRUN -> [WARN][29] ([i915#2681])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb1/igt@i915_pm_rc6_residency@rc6-fence.html

  * igt@i915_pm_rpm@pc8-residency:
    - shard-tglb:         NOTRUN -> [SKIP][30] ([fdo#109506] / [i915#2411])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb8/igt@i915_pm_rpm@pc8-residency.html

  * igt@i915_suspend@forcewake:
    - shard-apl:          [PASS][31] -> [DMESG-WARN][32] ([i915#180])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-apl3/igt@i915_suspend@forcewake.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl3/igt@i915_suspend@forcewake.html

  * igt@kms_atomic@plane-primary-overlay-mutable-zpos:
    - shard-tglb:         NOTRUN -> [SKIP][33] ([i915#404])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb2/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
    - shard-iclb:         NOTRUN -> [SKIP][34] ([i915#404])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html

  * igt@kms_big_fb@linear-32bpp-rotate-180:
    - shard-glk:          NOTRUN -> [DMESG-WARN][35] ([i915#118] / [i915#95]) +1 similar issue
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk8/igt@kms_big_fb@linear-32bpp-rotate-180.html

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-hflip:
    - shard-glk:          NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#3777])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk8/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-hflip.html

  * igt@kms_big_fb@y-tiled-32bpp-rotate-0:
    - shard-glk:          [PASS][37] -> [DMESG-WARN][38] ([i915#118] / [i915#95]) +2 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk6/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk7/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html

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

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

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0:
    - shard-apl:          NOTRUN -> [SKIP][42] ([fdo#109271]) +298 similar issues
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl1/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html

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

  * igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_mc_ccs:
    - shard-kbl:          NOTRUN -> [SKIP][44] ([fdo#109271] / [i915#3886]) +3 similar issues
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl4/igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][45] ([fdo#109278] / [i915#3886]) +6 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb2/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html

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

  * igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][47] ([fdo#109271] / [i915#3886]) +13 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl6/igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][48] ([i915#3689]) +9 similar issues
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_gen12_mc_ccs.html

  * igt@kms_chamelium@hdmi-cmp-planar-formats:
    - shard-iclb:         NOTRUN -> [SKIP][49] ([fdo#109284] / [fdo#111827]) +3 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb6/igt@kms_chamelium@hdmi-cmp-planar-formats.html

  * igt@kms_chamelium@hdmi-edid-change-during-suspend:
    - shard-apl:          NOTRUN -> [SKIP][50] ([fdo#109271] / [fdo#111827]) +27 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl1/igt@kms_chamelium@hdmi-edid-change-during-suspend.html

  * igt@kms_chamelium@vga-edid-read:
    - shard-glk:          NOTRUN -> [SKIP][51] ([fdo#109271] / [fdo#111827]) +8 similar issues
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk2/igt@kms_chamelium@vga-edid-read.html

  * igt@kms_color_chamelium@pipe-b-ctm-negative:
    - shard-tglb:         NOTRUN -> [SKIP][52] ([fdo#109284] / [fdo#111827]) +6 similar issues
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@kms_color_chamelium@pipe-b-ctm-negative.html

  * igt@kms_color_chamelium@pipe-c-ctm-negative:
    - shard-kbl:          NOTRUN -> [SKIP][53] ([fdo#109271] / [fdo#111827]) +3 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl7/igt@kms_color_chamelium@pipe-c-ctm-negative.html

  * igt@kms_color_chamelium@pipe-d-ctm-0-5:
    - shard-snb:          NOTRUN -> [SKIP][54] ([fdo#109271] / [fdo#111827]) +23 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-snb6/igt@kms_color_chamelium@pipe-d-ctm-0-5.html

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

  * igt@kms_content_protection@mei_interface:
    - shard-iclb:         NOTRUN -> [SKIP][56] ([fdo#109300] / [fdo#111066])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb8/igt@kms_content_protection@mei_interface.html

  * igt@kms_cursor_crc@pipe-a-cursor-512x512-onscreen:
    - shard-tglb:         NOTRUN -> [SKIP][57] ([fdo#109279] / [i915#3359]) +3 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@kms_cursor_crc@pipe-a-cursor-512x512-onscreen.html
    - shard-iclb:         NOTRUN -> [SKIP][58] ([fdo#109278] / [fdo#109279]) +2 similar issues
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@kms_cursor_crc@pipe-a-cursor-512x512-onscreen.html

  * igt@kms_cursor_crc@pipe-a-cursor-suspend:
    - shard-kbl:          [PASS][59] -> [DMESG-WARN][60] ([i915#180]) +2 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-kbl2/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl7/igt@kms_cursor_crc@pipe-a-cursor-suspend.html

  * igt@kms_cursor_crc@pipe-b-cursor-32x32-sliding:
    - shard-tglb:         NOTRUN -> [SKIP][61] ([i915#3319]) +1 similar issue
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb5/igt@kms_cursor_crc@pipe-b-cursor-32x32-sliding.html

  * igt@kms_cursor_crc@pipe-b-cursor-size-change:
    - shard-glk:          [PASS][62] -> [FAIL][63] ([i915#3444])
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk6/igt@kms_cursor_crc@pipe-b-cursor-size-change.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk9/igt@kms_cursor_crc@pipe-b-cursor-size-change.html

  * igt@kms_cursor_crc@pipe-c-cursor-suspend:
    - shard-apl:          NOTRUN -> [DMESG-WARN][64] ([i915#180])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl8/igt@kms_cursor_crc@pipe-c-cursor-suspend.html

  * igt@kms_cursor_crc@pipe-d-cursor-max-size-sliding:
    - shard-tglb:         NOTRUN -> [SKIP][65] ([i915#3359]) +2 similar issues
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb1/igt@kms_cursor_crc@pipe-d-cursor-max-size-sliding.html

  * igt@kms_cursor_crc@pipe-d-cursor-size-change:
    - shard-tglb:         [PASS][66] -> [FAIL][67] ([i915#2124])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-tglb7/igt@kms_cursor_crc@pipe-d-cursor-size-change.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb7/igt@kms_cursor_crc@pipe-d-cursor-size-change.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-legacy:
    - shard-iclb:         NOTRUN -> [SKIP][68] ([fdo#109274] / [fdo#109278])
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb4/igt@kms_cursor_legacy@cursorb-vs-flipb-legacy.html

  * igt@kms_cursor_legacy@pipe-d-single-bo:
    - shard-glk:          NOTRUN -> [SKIP][69] ([fdo#109271] / [i915#533]) +1 similar issue
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk7/igt@kms_cursor_legacy@pipe-d-single-bo.html

  * igt@kms_cursor_legacy@pipe-d-single-move:
    - shard-iclb:         NOTRUN -> [SKIP][70] ([fdo#109278]) +27 similar issues
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@kms_cursor_legacy@pipe-d-single-move.html

  * igt@kms_dsc@basic-dsc-enable@edp-1-pipe-c:
    - shard-iclb:         NOTRUN -> [DMESG-WARN][71] ([i915#1226]) +2 similar issues
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb2/igt@kms_dsc@basic-dsc-enable@edp-1-pipe-c.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
    - shard-iclb:         NOTRUN -> [SKIP][72] ([fdo#109274]) +1 similar issue
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb8/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html

  * igt@kms_flip@2x-plain-flip-ts-check@ac-hdmi-a1-hdmi-a2:
    - shard-glk:          [PASS][73] -> [FAIL][74] ([i915#2122])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk3/igt@kms_flip@2x-plain-flip-ts-check@ac-hdmi-a1-hdmi-a2.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk1/igt@kms_flip@2x-plain-flip-ts-check@ac-hdmi-a1-hdmi-a2.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs:
    - shard-apl:          NOTRUN -> [SKIP][75] ([fdo#109271] / [i915#2672])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu:
    - shard-glk:          NOTRUN -> [SKIP][76] ([fdo#109271]) +105 similar issues
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk1/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt:
    - shard-tglb:         NOTRUN -> [SKIP][77] ([fdo#111825]) +22 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-plflip-blt:
    - shard-iclb:         NOTRUN -> [SKIP][78] ([fdo#109280]) +19 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb4/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-plflip-blt.html

  * igt@kms_hdr@static-swap:
    - shard-tglb:         NOTRUN -> [SKIP][79] ([i915#1187])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb5/igt@kms_hdr@static-swap.html
    - shard-iclb:         NOTRUN -> [SKIP][80] ([i915#1187])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb6/igt@kms_hdr@static-swap.html

  * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d:
    - shard-apl:          NOTRUN -> [SKIP][81] ([fdo#109271] / [i915#533]) +2 similar issues
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl3/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html

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

  * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping:
    - shard-apl:          NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#2733])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl8/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html

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

  * igt@kms_psr2_sf@plane-move-sf-dmg-area-0:
    - shard-tglb:         NOTRUN -> [SKIP][85] ([i915#2920]) +1 similar issue
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb6/igt@kms_psr2_sf@plane-move-sf-dmg-area-0.html

  * igt@kms_psr2_sf@plane-move-sf-dmg-area-2:
    - shard-glk:          NOTRUN -> [SKIP][86] ([fdo#109271] / [i915#658]) +3 similar issues
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk6/igt@kms_psr2_sf@plane-move-sf-dmg-area-2.html

  * igt@kms_psr2_sf@plane-move-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_6191/shard-iclb1/igt@kms_psr2_sf@plane-move-sf-dmg-area-3.html
    - shard-kbl:          NOTRUN -> [SKIP][88] ([fdo#109271] / [i915#658])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl3/igt@kms_psr2_sf@plane-move-sf-dmg-area-3.html

  * igt@kms_psr2_su@frontbuffer:
    - shard-iclb:         [PASS][89] -> [SKIP][90] ([fdo#109642] / [fdo#111068] / [i915#658])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb2/igt@kms_psr2_su@frontbuffer.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb8/igt@kms_psr2_su@frontbuffer.html

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

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-tglb:         NOTRUN -> [FAIL][93] ([i915#132] / [i915#3467])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@kms_psr@psr2_cursor_plane_onoff.html
    - shard-iclb:         NOTRUN -> [SKIP][94] ([fdo#109441])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@kms_psr@psr2_cursor_plane_onoff.html

  * igt@kms_writeback@writeback-check-output:
    - shard-apl:          NOTRUN -> [SKIP][95] ([fdo#109271] / [i915#2437]) +1 similar issue
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl1/igt@kms_writeback@writeback-check-output.html
    - shard-iclb:         NOTRUN -> [SKIP][96] ([i915#2437])
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@kms_writeback@writeback-check-output.html
    - shard-kbl:          NOTRUN -> [SKIP][97] ([fdo#109271] / [i915#2437])
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl3/igt@kms_writeback@writeback-check-output.html
    - shard-tglb:         NOTRUN -> [SKIP][98] ([i915#2437])
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@kms_writeback@writeback-check-output.html
    - shard-glk:          NOTRUN -> [SKIP][99] ([fdo#109271] / [i915#2437])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk1/igt@kms_writeback@writeback-check-output.html

  * igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame:
    - shard-tglb:         NOTRUN -> [SKIP][100] ([i915#2530])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb6/igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame.html
    - shard-iclb:         NOTRUN -> [SKIP][101] ([i915#2530])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb6/igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame.html

  * igt@perf@unprivileged-single-ctx-counters:
    - shard-iclb:         NOTRUN -> [SKIP][102] ([fdo#109289]) +2 similar issues
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb5/igt@perf@unprivileged-single-ctx-counters.html

  * igt@prime_nv_pcopy@test2:
    - shard-kbl:          NOTRUN -> [SKIP][103] ([fdo#109271]) +82 similar issues
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl6/igt@prime_nv_pcopy@test2.html
    - shard-iclb:         NOTRUN -> [SKIP][104] ([fdo#109291]) +2 similar issues
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb5/igt@prime_nv_pcopy@test2.html

  * igt@prime_nv_pcopy@test3_2:
    - shard-tglb:         NOTRUN -> [SKIP][105] ([fdo#109291]) +4 similar issues
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-tglb3/igt@prime_nv_pcopy@test3_2.html

  * igt@sysfs_clients@fair-0:
    - shard-glk:          NOTRUN -> [SKIP][106] ([fdo#109271] / [i915#2994])
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk3/igt@sysfs_clients@fair-0.html

  * igt@sysfs_clients@fair-7:
    - shard-apl:          NOTRUN -> [SKIP][107] ([fdo#109271] / [i915#2994]) +5 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl3/igt@sysfs_clients@fair-7.html

  
#### Possible fixes ####

  * igt@feature_discovery@psr2:
    - shard-iclb:         [SKIP][108] ([i915#658]) -> [PASS][109]
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb4/igt@feature_discovery@psr2.html
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb2/igt@feature_discovery@psr2.html

  * igt@gem_ctx_isolation@preservation-s3@vcs0:
    - shard-kbl:          [DMESG-WARN][110] ([i915#180]) -> [PASS][111] +3 similar issues
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-kbl7/igt@gem_ctx_isolation@preservation-s3@vcs0.html
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl2/igt@gem_ctx_isolation@preservation-s3@vcs0.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
    - shard-kbl:          [FAIL][112] ([i915#2842]) -> [PASS][113] +1 similar issue
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-kbl4/igt@gem_exec_fair@basic-none-vip@rcs0.html
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl3/igt@gem_exec_fair@basic-none-vip@rcs0.html

  * igt@gem_mmap_gtt@cpuset-big-copy-xy:
    - shard-iclb:         [FAIL][114] ([i915#307]) -> [PASS][115]
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb5/igt@gem_mmap_gtt@cpuset-big-copy-xy.html
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@gem_mmap_gtt@cpuset-big-copy-xy.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-180:
    - shard-glk:          [DMESG-WARN][116] ([i915#118] / [i915#95]) -> [PASS][117]
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk3/igt@kms_big_fb@x-tiled-32bpp-rotate-180.html
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk6/igt@kms_big_fb@x-tiled-32bpp-rotate-180.html

  * igt@kms_cursor_crc@pipe-a-cursor-alpha-opaque:
    - shard-kbl:          [FAIL][118] ([i915#3444]) -> [PASS][119]
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-alpha-opaque.html
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-alpha-opaque.html
    - shard-glk:          [FAIL][120] ([i915#3444]) -> [PASS][121]
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk5/igt@kms_cursor_crc@pipe-a-cursor-alpha-opaque.html
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk2/igt@kms_cursor_crc@pipe-a-cursor-alpha-opaque.html

  * igt@kms_cursor_crc@pipe-b-cursor-size-change:
    - shard-snb:          [FAIL][122] ([i915#4024]) -> [PASS][123] +1 similar issue
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-snb5/igt@kms_cursor_crc@pipe-b-cursor-size-change.html
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-snb6/igt@kms_cursor_crc@pipe-b-cursor-size-change.html

  * igt@kms_flip@flip-vs-suspend@c-dp1:
    - shard-apl:          [DMESG-WARN][124] ([i915#180]) -> [PASS][125] +1 similar issue
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-apl8/igt@kms_flip@flip-vs-suspend@c-dp1.html
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-apl8/igt@kms_flip@flip-vs-suspend@c-dp1.html

  * igt@kms_vblank@pipe-a-ts-continuation-modeset-hang:
    - shard-kbl:          [SKIP][126] ([fdo#109271]) -> [PASS][127] +1 similar issue
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-modeset-hang.html
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-kbl7/igt@kms_vblank@pipe-a-ts-continuation-modeset-hang.html
    - shard-glk:          [SKIP][128] ([fdo#109271]) -> [PASS][129]
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-glk4/igt@kms_vblank@pipe-a-ts-continuation-modeset-hang.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-glk2/igt@kms_vblank@pipe-a-ts-continuation-modeset-hang.html

  
#### Warnings ####

  * igt@gem_exec_fair@basic-none-rrul@rcs0:
    - shard-iclb:         [FAIL][130] ([i915#2852]) -> [FAIL][131] ([i915#2842])
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb3/igt@gem_exec_fair@basic-none-rrul@rcs0.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb4/igt@gem_exec_fair@basic-none-rrul@rcs0.html

  * igt@i915_pm_rc6_residency@rc6-fence:
    - shard-iclb:         [WARN][132] ([i915#1804] / [i915#2684]) -> [WARN][133] ([i915#2684])
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb6/igt@i915_pm_rc6_residency@rc6-fence.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb1/igt@i915_pm_rc6_residency@rc6-fence.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3:
    - shard-iclb:         [SKIP][134] ([i915#658]) -> [SKIP][135] ([i915#2920])
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10548/shard-iclb8/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6191/shard-iclb2/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-3:
    - shard-iclb:         [SKIP][136] ([i915#2920]) -> [SKIP][137] ([i915#658])
   [136]: https://intel-g

== Logs ==

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

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

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

* [igt-dev] [PATCH i-g-t v2 02/12] tests/kms_rotation_crc: Use igt_plane_has_rotation()
  2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 02/11] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
@ 2021-09-09 14:59   ` Ville Syrjala
  0 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjala @ 2021-09-09 14:59 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.

v2: Keep the gen9+ checks for the multiplane tests since they
    want a non-fullscreen primary plane

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

diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 2c66cd7c4e31..11401a6d00ad 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);
 		}
@@ -1164,7 +1157,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

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

end of thread, other threads:[~2021-09-09 14:59 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-02 16:44 [igt-dev] [PATCH i-g-t 00/11] kms: Clean up the supported rotations mess Ville Syrjala
2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 01/11] lib/kms: Add igt_plane_has_rotation() Ville Syrjala
2021-09-02 16:44 ` [igt-dev] [PATCH i-g-t 02/11] tests/kms_rotation_crc: Use igt_plane_has_rotation() Ville Syrjala
2021-09-09 14:59   ` [igt-dev] [PATCH i-g-t v2 02/12] " Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 03/11] tests/kms_plane_scaling: " Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 04/11] tests/kms_big_fb: " Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 05/11] tests/kms_big_fb: Use igt_has_drm_cap() Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 06/11] tests/kms_big_fb: Move batch creation into lower level functions Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 07/11] tests/kms_big_fb: Move format/modifier checks lower Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 08/11] tests/kms_big_fb: Nuke the stride/format overrides Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 09/11] tests/kms_big_fb: Check whether the rotation is supposed in the async flip test Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 10/11] tests/kms_plane: Abstract single vs. multiple crsc better Ville Syrjala
2021-09-02 16:45 ` [igt-dev] [PATCH i-g-t 11/11] tests/kms_plane: Use single colors during extended test Ville Syrjala
2021-09-02 17:48 ` [igt-dev] ✓ Fi.CI.BAT: success for kms: Clean up the supported rotations mess Patchwork
2021-09-02 21:43 ` [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.