diff options
author | Maarten Lankhorst <maarten.lankhorst@linux.intel.com> | 2017-01-05 14:02:46 +0100 |
---|---|---|
committer | Maarten Lankhorst <maarten.lankhorst@linux.intel.com> | 2017-01-05 14:21:48 +0100 |
commit | 9c45933358a919ecfd1cac4e70e527de9aac51b1 (patch) | |
tree | b18d1b31c55975c31fbb805e276143bbaf687fa9 /tests/kms_vblank.c | |
parent | 74724476981c7258aa9b3cb96298bcf8a50c854a (diff) |
kms_vblank: Stop looking at output->valid.
Use the proper iterator macros to prevent ever having an invalid config.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Diffstat (limited to 'tests/kms_vblank.c')
-rw-r--r-- | tests/kms_vblank.c | 44 |
1 files changed, 16 insertions, 28 deletions
diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c index 9bc492968..122fbc8f6 100644 --- a/tests/kms_vblank.c +++ b/tests/kms_vblank.c @@ -59,7 +59,7 @@ static double elapsed(const struct timespec *start, return (1e6*(end->tv_sec - start->tv_sec) + (end->tv_nsec - start->tv_nsec)/1000)/loop; } -static bool prepare_crtc(data_t *data, int fd, igt_output_t *output) +static void prepare_crtc(data_t *data, int fd, igt_output_t *output) { drmModeModeInfo *mode; igt_display_t *display = &data->display; @@ -67,13 +67,6 @@ static bool prepare_crtc(data_t *data, int fd, igt_output_t *output) /* select the pipe we want to use */ igt_output_set_pipe(output, data->pipe); - igt_display_commit(display); - - if (!output->valid) { - igt_output_set_pipe(output, PIPE_ANY); - igt_display_commit(display); - return false; - } /* create and set the primary plane fb */ mode = igt_output_get_mode(output); @@ -89,8 +82,6 @@ static bool prepare_crtc(data_t *data, int fd, igt_output_t *output) igt_display_commit(display); igt_wait_for_vblank(fd, data->pipe); - - return true; } static void cleanup_crtc(data_t *data, int fd, igt_output_t *output) @@ -114,30 +105,27 @@ static void run_test(data_t *data, int fd, void (*testfunc)(data_t *, int)) enum pipe p; unsigned int valid_tests = 0; - for_each_connected_output(display, output) { - for_each_pipe(display, p) { - data->pipe = p; + for_each_pipe_with_valid_output(display, p, output) { + data->pipe = p; - if (!prepare_crtc(data, fd, output)) - continue; + prepare_crtc(data, fd, output); - valid_tests++; + valid_tests++; - igt_info("Beginning %s on pipe %s, connector %s\n", - igt_subtest_name(), - kmstest_pipe_name(data->pipe), - igt_output_name(output)); + igt_info("Beginning %s on pipe %s, connector %s\n", + igt_subtest_name(), + kmstest_pipe_name(data->pipe), + igt_output_name(output)); - testfunc(data, fd); + testfunc(data, fd); - igt_info("\n%s on pipe %s, connector %s: PASSED\n\n", - igt_subtest_name(), - kmstest_pipe_name(data->pipe), - igt_output_name(output)); + igt_info("\n%s on pipe %s, connector %s: PASSED\n\n", + igt_subtest_name(), + kmstest_pipe_name(data->pipe), + igt_output_name(output)); - /* cleanup what prepare_crtc() has done */ - cleanup_crtc(data, fd, output); - } + /* cleanup what prepare_crtc() has done */ + cleanup_crtc(data, fd, output); } igt_require_f(valid_tests, "no valid crtc/connector combinations found\n"); |