tests/kms_fbc_crc: Reset display state between subtests

If a subtest fails it'll leave the display in a state that may prevent
the next subtest from working. So reset the display state between
subtests.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
This commit is contained in:
Ville Syrjälä 2014-05-13 14:49:53 +03:00
parent 54f8f5d13e
commit abc262bf47

View File

@ -442,6 +442,19 @@ static void finish_crtc(data_t *data, enum test_mode mode)
igt_remove_fb(data->drm_fd, &data->fb[1]);
}
static void reset_display(data_t *data)
{
igt_display_t *display = &data->display;
for_each_connected_output(display, data->output) {
if (data->output->valid) {
data->primary = igt_output_get_plane(data->output, IGT_PLANE_PRIMARY);
igt_plane_set_fb(data->primary, NULL);
}
igt_output_set_pipe(data->output, PIPE_ANY);
}
}
static void run_test(data_t *data, enum test_mode mode)
{
igt_display_t *display = &data->display;
@ -453,6 +466,8 @@ static void run_test(data_t *data, enum test_mode mode)
drm_intel_gem_context_destroy(ctx);
}
reset_display(data);
for_each_connected_output(display, data->output) {
for (data->pipe = 0; data->pipe < igt_display_get_n_pipes(display); data->pipe++) {
if (!prepare_crtc(data))