[Intel-gfx] [PATCH i-g-t v3 1/2] tests/debugfs_test: Try to light all outputs to increase chances of finding fails, v3.
Chris Wilson
chris at chris-wilson.co.uk
Thu Oct 12 14:05:23 UTC 2017
Quoting Maarten Lankhorst (2017-10-12 11:47:54)
> Make sure read_all_entries has all outputs possible enabled, but also
> add a test that runs with all outputs disabled.
>
> This will maximize coverage of debugfs reading, and allows the test not
> to be dependent on fbcon for setup.
>
> Changes since v1:
> - Put framebuffers on all primary planes, to get a crc from i915_sink_src_eDP1.
Sure that isn't a problem in our pipe_crc dumper?
> Changes since v2:
> - Use igt_output_get_plane_type, not igt_output_get_plane.
>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk> #v1
> ---
> tests/debugfs_test.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 50 insertions(+)
>
> diff --git a/tests/debugfs_test.c b/tests/debugfs_test.c
> index 5e7805e1559e..c4f43a65b61b 100644
> --- a/tests/debugfs_test.c
> +++ b/tests/debugfs_test.c
> @@ -78,15 +78,64 @@ static void read_and_discard_sysfs_entries(int path_fd)
> igt_main
> {
> 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_subtest("read_all_entries") {
> + /* try to light all pipes */
> + for_each_pipe(&display, pipe) {
> + igt_output_t *output;
> +
> + for_each_valid_output_on_pipe(&display, pipe, output) {
> + igt_plane_t *primary;
> + drmModeModeInfo *mode;
> +
> + if (output->pending_pipe != PIPE_NONE)
> + continue;
> +
> + igt_output_set_pipe(output, pipe);
> + primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> + mode = igt_output_get_mode(output);
> + igt_create_pattern_fb(display.drm_fd,
> + mode->hdisplay, mode->vdisplay,
> + DRM_FORMAT_XRGB8888,
> + LOCAL_DRM_FORMAT_MOD_NONE, &fb[pipe]);
> +
/* Set a valid fb as some debugfs like to inspect it on a active pipe */
> + igt_plane_set_fb(primary, &fb[pipe]);
> + break;
> + }
> + }
> +
> + igt_display_commit2(&display, display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
> +
> + read_and_discard_sysfs_entries(debugfs);
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
-Chris
More information about the Intel-gfx
mailing list