summaryrefslogtreecommitdiff
path: root/tests/kms_plane.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/kms_plane.c')
-rw-r--r--tests/kms_plane.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 5aa58c41..c94eac05 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -32,6 +32,7 @@
#include "drmtest.h"
#include "igt_debugfs.h"
#include "igt_kms.h"
+#include "igt_aux.h"
typedef struct {
float red;
@@ -269,6 +270,7 @@ create_fb_for_mode__panning(data_t *data, drmModeModeInfo *mode,
enum {
TEST_PANNING_TOP_LEFT = 1 << 0,
TEST_PANNING_BOTTOM_RIGHT = 1 << 1,
+ TEST_SUSPEND_RESUME = 1 << 2,
};
static void
@@ -309,8 +311,13 @@ test_plane_panning_with_output(data_t *data,
igt_display_commit(&data->display);
+ if (flags & TEST_SUSPEND_RESUME)
+ igt_system_suspend_autoresume();
+
igt_pipe_crc_collect_crc(data->pipe_crc, &crc);
+ igt_debug_wait_for_keypress("crc");
+
if (flags & TEST_PANNING_TOP_LEFT)
igt_assert(igt_crc_equal(&test.red_crc, &crc));
else
@@ -360,6 +367,11 @@ run_tests_for_pipe_plane(data_t *data, enum pipe pipe, enum igt_plane plane)
test_plane_panning(data, pipe, plane,
TEST_PANNING_BOTTOM_RIGHT);
+ igt_subtest_f("plane-panning-bottom-right-suspend-pipe-%s-plane-%d",
+ kmstest_pipe_name(pipe), plane)
+ test_plane_panning(data, pipe, plane,
+ TEST_PANNING_BOTTOM_RIGHT |
+ TEST_SUSPEND_RESUME);
}
static void