summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRodrigo Vivi <rodrigo.vivi@intel.com>2015-03-13 12:11:54 -0400
committerRodrigo Vivi <rodrigo.vivi@intel.com>2015-04-16 11:08:37 -0700
commitc35247596033c8bd2fd4d834f3941a7075aa84c8 (patch)
treebc0ffa78ff1781362f65ae414dea23bca6be244b
parent782d5e7a032d1a34ef7f45970a5d8025ec47aece (diff)
test/kms_psr_sink_crc: Add dpms off/on tests.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
-rw-r--r--tests/kms_psr_sink_crc.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/kms_psr_sink_crc.c b/tests/kms_psr_sink_crc.c
index a2960427..928552fb 100644
--- a/tests/kms_psr_sink_crc.c
+++ b/tests/kms_psr_sink_crc.c
@@ -525,6 +525,15 @@ static void setup_test_plane(data_t *data)
igt_display_commit(&data->display);
}
+static void dpms_off_on(data_t data)
+{
+ kmstest_set_connector_dpms(data.drm_fd, data.output->config.connector,
+ DRM_MODE_DPMS_OFF);
+ sleep(1);
+ kmstest_set_connector_dpms(data.drm_fd, data.output->config.connector,
+ DRM_MODE_DPMS_ON);
+}
+
static int opt_handler(int opt, int opt_index)
{
switch (opt) {
@@ -600,6 +609,30 @@ int main(int argc, char *argv[])
}
}
+ igt_subtest_f("dpms_off_psr_active") {
+ data.test_plane = PRIMARY;
+ data.op = RENDER;
+ setup_test_plane(&data);
+ igt_assert(wait_psr_entry(&data));
+
+ dpms_off_on(data);
+
+ run_test(&data);
+ test_cleanup(&data);
+ }
+
+ igt_subtest_f("dpms_off_psr_exit") {
+ data.test_plane = SPRITE;
+ data.op = PLANE_ONOFF;
+ setup_test_plane(&data);
+
+ dpms_off_on(data);
+
+ igt_assert(wait_psr_entry(&data));
+ run_test(&data);
+ test_cleanup(&data);
+ }
+
igt_fixture {
drm_intel_bufmgr_destroy(data.bufmgr);
display_fini(&data);