summaryrefslogtreecommitdiff
path: root/tests/kms_flip_tiling.c
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2016-07-05 12:53:05 +0200
committerMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2016-07-26 14:49:59 +0200
commit5af520a1a0aec04b020ad808fdb90de49bd0e27b (patch)
tree37c3309cc7e9304b5b44bcffc0f7191d70d1497e /tests/kms_flip_tiling.c
parent0794ebefe1b9a1590f218b4055a83685ad8cb7eb (diff)
tests/kms: Clean up more users of unassigned pipes.
Use for_each_pipe_with_valid_output instead. This may increase test time slightly on the affected tests, because now outputs will be tested on every pipe instead of the first pipe. This will increase test coverage to all usable pipes though, so it shouldn't be an issue. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
Diffstat (limited to 'tests/kms_flip_tiling.c')
-rw-r--r--tests/kms_flip_tiling.c50
1 files changed, 29 insertions, 21 deletions
diff --git a/tests/kms_flip_tiling.c b/tests/kms_flip_tiling.c
index f58e65be..cd2f510f 100644
--- a/tests/kms_flip_tiling.c
+++ b/tests/kms_flip_tiling.c
@@ -80,16 +80,15 @@ static void wait_for_pageflip(int fd)
}
static void
-test_flip_tiling(data_t *data, igt_output_t *output, uint64_t tiling[2])
+test_flip_tiling(data_t *data, enum pipe pipe, igt_output_t *output, uint64_t tiling[2])
{
drmModeModeInfo *mode;
igt_plane_t *primary;
struct igt_fb fb[2];
igt_pipe_crc_t *pipe_crc;
igt_crc_t reference_crc, crc;
- int fb_id, pipe, ret, width;
+ int fb_id, ret, width;
- pipe = output->config.pipe;
pipe_crc = pipe_crc_new(pipe);
igt_output_set_pipe(output, pipe);
@@ -184,31 +183,34 @@ igt_main
igt_subtest_f("flip-changes-tiling") {
uint64_t tiling[2] = { LOCAL_I915_FORMAT_MOD_X_TILED,
LOCAL_DRM_FORMAT_MOD_NONE };
+ enum pipe pipe;
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_subtest_f("flip-changes-tiling-Y") {
uint64_t tiling[2] = { LOCAL_I915_FORMAT_MOD_Y_TILED,
LOCAL_DRM_FORMAT_MOD_NONE };
+ enum pipe pipe;
igt_require_fb_modifiers(data.drm_fd);
igt_require(data.gen >= 9);
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_subtest_f("flip-changes-tiling-Yf") {
uint64_t tiling[2] = { LOCAL_I915_FORMAT_MOD_Yf_TILED,
LOCAL_DRM_FORMAT_MOD_NONE };
+ enum pipe pipe;
igt_require_fb_modifiers(data.drm_fd);
igt_require(data.gen >= 9);
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
/*
@@ -222,31 +224,34 @@ igt_main
igt_subtest_f("flip-X-tiled") {
uint64_t tiling[2] = { LOCAL_I915_FORMAT_MOD_X_TILED,
LOCAL_I915_FORMAT_MOD_X_TILED };
+ enum pipe pipe;
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_subtest_f("flip-Y-tiled") {
uint64_t tiling[2] = { LOCAL_I915_FORMAT_MOD_Y_TILED,
LOCAL_I915_FORMAT_MOD_Y_TILED };
+ enum pipe pipe;
igt_require_fb_modifiers(data.drm_fd);
igt_require(data.gen >= 9);
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_subtest_f("flip-Yf-tiled") {
uint64_t tiling[2] = { LOCAL_I915_FORMAT_MOD_Yf_TILED,
LOCAL_I915_FORMAT_MOD_Yf_TILED };
+ enum pipe pipe;
igt_require_fb_modifiers(data.drm_fd);
igt_require(data.gen >= 9);
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
/*
@@ -260,31 +265,34 @@ igt_main
igt_subtest_f("flip-to-X-tiled") {
uint64_t tiling[2] = { LOCAL_DRM_FORMAT_MOD_NONE,
LOCAL_I915_FORMAT_MOD_X_TILED };
+ enum pipe pipe;
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_subtest_f("flip-to-Y-tiled") {
uint64_t tiling[2] = { LOCAL_DRM_FORMAT_MOD_NONE,
LOCAL_I915_FORMAT_MOD_Y_TILED };
+ enum pipe pipe;
igt_require_fb_modifiers(data.drm_fd);
igt_require(data.gen >= 9);
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_subtest_f("flip-to-Yf-tiled") {
uint64_t tiling[2] = { LOCAL_DRM_FORMAT_MOD_NONE,
LOCAL_I915_FORMAT_MOD_Yf_TILED };
+ enum pipe pipe;
igt_require_fb_modifiers(data.drm_fd);
igt_require(data.gen >= 9);
- for_each_connected_output(&data.display, output)
- test_flip_tiling(&data, output, tiling);
+ for_each_pipe_with_valid_output(&data.display, pipe, output)
+ test_flip_tiling(&data, pipe, output, tiling);
}
igt_fixture {