From b1d91d0228db999145405e529952ca49bab7f706 Mon Sep 17 00:00:00 2001 From: Tvrtko Ursulin Date: Wed, 10 Apr 2019 12:41:15 +0100 Subject: tests/prime_vgem/basic-fence-flip: Probe display resolution Some displays might not support hardcoded 1024x768. Signed-off-by: Tvrtko Ursulin Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109294 Reviewed-by: Mika Kahola --- tests/prime_vgem.c | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c index 94632452..09e3373b 100644 --- a/tests/prime_vgem.c +++ b/tests/prime_vgem.c @@ -741,16 +741,30 @@ static void flip_to_vgem(int i915, int vgem, static void test_flip(int i915, int vgem, unsigned hang) { - struct vgem_bo bo[2]; + drmModeModeInfo *mode = NULL; uint32_t fb_id[2], handle[2], crtc_id; + igt_display_t display; + igt_output_t *output; + struct vgem_bo bo[2]; + enum pipe pipe; + + igt_display_require(&display, i915); + igt_display_require_output(&display); + + for_each_pipe_with_valid_output(&display, pipe, output) { + mode = igt_output_get_mode(output); + break; + } + + igt_assert(mode); for (int i = 0; i < 2; i++) { uint32_t strides[4] = {}; uint32_t offsets[4] = {}; int fd; - bo[i].width = 1024; - bo[i].height = 768; + bo[i].width = mode->hdisplay; + bo[i].height = mode->vdisplay; bo[i].bpp = 32; vgem_create(vgem, &bo[i]); -- cgit v1.2.3