[PATCH i-g-t v2 1/2] tests/intel/kms_big_fb: Intel display version 20 onwards doesn't do hflip with tile4

Pranay Samala pranay.samala at intel.com
Fri Nov 22 05:33:59 UTC 2024


Intel display version 20 onwards, Tile4 no longer can be used with
horizontal flip.

Bspec: 69853

v2: Fix the shadowing global declaration warn (Jeevan)

Signed-off-by: Pranay Samala <pranay.samala at intel.com>
---
 tests/intel/kms_big_fb.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/tests/intel/kms_big_fb.c b/tests/intel/kms_big_fb.c
index 7da3d12d4..67ab85852 100644
--- a/tests/intel/kms_big_fb.c
+++ b/tests/intel/kms_big_fb.c
@@ -965,6 +965,19 @@ static const struct {
 	{ 0, "" },
 	{ IGT_REFLECT_X, "-hflip" },
 };
+
+static bool test_requirements(data_t *input_data, int l)
+{
+	/* Intel display version 20 onwards cannot do reflect-x with tile4 */
+	if (!(!is_intel_device(input_data->drm_fd) ||
+	      intel_display_ver(intel_get_drm_devid(input_data->drm_fd)) < 20 ||
+	      !(fliptab[l].flip == IGT_REFLECT_X &&
+	      input_data->modifier == I915_FORMAT_MOD_4_TILED)))
+		return false;
+
+	return true;
+}
+
 igt_main
 {
 	igt_fixture {
@@ -1123,6 +1136,8 @@ 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_f(test_requirements(&data, l),
+								      "Can't use reflect-x with Tile4 on intel display version 20+\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.34.1



More information about the igt-dev mailing list