[igt-dev] [PATCH i-g-t] tests/kms_flip_tiling: Check for mode when performing flip with Y/Yf tiling

Mika Kahola
2019-05-29T12:43:25Z

Kernel doesn't support Y or Yf tiling for interlaced modes. In kms_flip_tiling test case
we are missing such a check. Let's add a requirement that whenever we try to do flip with Y/Yf
tiling, we ensure that we have non-interlaced mode selected.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110772

Signed-off-by: Mika Kahola <mika.kahola@intel.com>
---
tests/kms_flip_tiling.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/tests/kms_flip_tiling.c b/tests/kms_flip_tiling.c
index d1e6687f..582af53c 100644
--- a/tests/kms_flip_tiling.c
+++ b/tests/kms_flip_tiling.c
@@ -75,6 +75,14 @@ test_flip_tiling(data_t *data, enum pipe pipe, igt_output_t *output, uint64_t ti
igt_output_set_pipe(output, pipe);

mode = igt_output_get_mode(output);
+
+ /* Interlaced modes don't support Y/Yf tiling */
+ if (tiling[0] == LOCAL_I915_FORMAT_MOD_Y_TILED ||
+ tiling[0] == LOCAL_I915_FORMAT_MOD_Yf_TILED ||
+ tiling[1] == LOCAL_I915_FORMAT_MOD_Y_TILED ||
+ tiling[1] == LOCAL_I915_FORMAT_MOD_Yf_TILED)
+ igt_require(!(mode->flags & DRM_MODE_FLAG_INTERLACE));
+
primary = igt_output_get_plane(output, 0);

width = mode->hdisplay;
--
2.17.1