summaryrefslogtreecommitdiff
path: root/tests/kms_flip_tiling.c
diff options
context:
space:
mode:
authorMika Kahola <mika.kahola@intel.com>2019-05-29 15:21:28 +0300
committerMika Kahola <mika.kahola@intel.com>2019-06-03 10:59:02 +0300
commit1bcc155549ac1d99207321754c9942559e54bc99 (patch)
treefc01573739ba2652e369e3878f1bf45ef118fc8c /tests/kms_flip_tiling.c
parent4108c74c3b15460de25ab989f4e2031594559dfc (diff)
tests/kms_flip_tiling: Check for mode when performing flip with Y/Yf tiling
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> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Diffstat (limited to 'tests/kms_flip_tiling.c')
-rw-r--r--tests/kms_flip_tiling.c8
1 files changed, 8 insertions, 0 deletions
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;