From 26a6f411ad9c1200a54e7f0542b0f8f4ecb9ce06 Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Thu, 22 Nov 2018 10:36:56 +0100 Subject: tests/debugfs: use igt_display_require Need to extract into a test subgroup to make sure we only skip the tests that need display support. v2: Chris pointed out that "read-all-entries" was the original non-kms tests, and we don't want to skip that if there's no output. Make a seperate test for this. Also, that kind of where libraries magically second-guess what the test might have wanted when it supplies an invalid request is exactly why I want to fix the igt_display_init API regression. v3: Actually squash in the hunk that was supposed to do v2 into this patch (Antonio). Cc: Antonio Argenziano Cc: Chris Wilson Reviewed-by: Maarten Lankhorst Acked-By: Antonio Argenziano Signed-off-by: Daniel Vetter --- tests/debugfs_test.c | 42 ++++++++++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 14 deletions(-) (limited to 'tests/debugfs_test.c') diff --git a/tests/debugfs_test.c b/tests/debugfs_test.c index 2e87e442..6a87d90a 100644 --- a/tests/debugfs_test.c +++ b/tests/debugfs_test.c @@ -87,25 +87,16 @@ static void read_and_discard_sysfs_entries(int path_fd, int indent) closedir(dir); } -igt_main +static void kms_tests(int fd, int debugfs) { - int fd = -1, debugfs; igt_display_t display; struct igt_fb fb[IGT_MAX_PIPES]; enum pipe pipe; - igt_skip_on_simulation(); - - igt_fixture { - fd = drm_open_driver_master(DRIVER_INTEL); - igt_require_gem(fd); - debugfs = igt_debugfs_dir(fd); - - kmstest_set_vt_graphics_mode(); - igt_display_init(&display, fd); - } + igt_fixture + igt_display_require(&display, fd); - igt_subtest("read_all_entries") { + igt_subtest("read_all_entries_display_on") { /* try to light all pipes */ for_each_pipe(&display, pipe) { igt_output_t *output; @@ -152,6 +143,30 @@ igt_main read_and_discard_sysfs_entries(debugfs, 0); } + igt_fixture + igt_display_fini(&display); +} + +igt_main +{ + int fd = -1, debugfs; + + igt_skip_on_simulation(); + + igt_fixture { + fd = drm_open_driver_master(DRIVER_INTEL); + igt_require_gem(fd); + debugfs = igt_debugfs_dir(fd); + + kmstest_set_vt_graphics_mode(); + } + + igt_subtest("read_all_entries") + read_and_discard_sysfs_entries(debugfs, 0); + + igt_subtest_group + kms_tests(fd, debugfs); + igt_subtest("emon_crash") { int i; /* @@ -174,7 +189,6 @@ igt_main } igt_fixture { - igt_display_fini(&display); close(debugfs); close(fd); } -- cgit v1.2.3