diff options
author | Paulo Zanoni <paulo.r.zanoni@intel.com> | 2015-05-06 15:23:51 -0300 |
---|---|---|
committer | Paulo Zanoni <paulo.r.zanoni@intel.com> | 2015-05-14 10:02:07 -0300 |
commit | 641d535a03ada74a3088309609a16c79076e6ccc (patch) | |
tree | 80a15832f4676c8a1c962a1b105cf4a0ef7fad70 | |
parent | 3db5762384a9495241c1e80ce315a2092e83686a (diff) |
lib/debugfs: wait_for_keypress("crc") when collecting CRC
Let's just steal the "crc" namespace and add this by default to
igt_pipe_crc_collect_crc() instead of adding more calls to other
tests. If tests want special waits on just some of their collect_crc()
calls, they can use another name instead of "crc".
This is very useful when developing, especially when the CRC we get is
wrong: we want to look at the screen to see what's going on before we
can think about how to fix the problem. So let's add this to the lib
instead of adding this to every single test I need to debug.
v2: Add some documentation (Daniel).
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
-rw-r--r-- | lib/igt_debugfs.c | 6 | ||||
-rw-r--r-- | tests/kms_draw_crc.c | 3 | ||||
-rw-r--r-- | tests/kms_plane.c | 2 |
3 files changed, 6 insertions, 5 deletions
diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c index e7b69dea..7319f2b1 100644 --- a/lib/igt_debugfs.c +++ b/lib/igt_debugfs.c @@ -35,6 +35,7 @@ #include <i915_drm.h> #include "drmtest.h" +#include "igt_aux.h" #include "igt_kms.h" #include "igt_debugfs.h" @@ -509,9 +510,14 @@ static void crc_sanity_checks(igt_crc_t *crc) * * This function takes care of the pipe_crc book-keeping, it will start/stop * the collection of the CRC. + * + * This function also calls the interactive debug with the "crc" domain, so you + * can make use of this feature to actually see the screen that is being CRC'd. */ void igt_pipe_crc_collect_crc(igt_pipe_crc_t *pipe_crc, igt_crc_t *out_crc) { + igt_debug_wait_for_keypress("crc"); + igt_pipe_crc_start(pipe_crc); read_one_crc(pipe_crc, out_crc); igt_pipe_crc_stop(pipe_crc); diff --git a/tests/kms_draw_crc.c b/tests/kms_draw_crc.c index 1630cc2c..9fcf997e 100644 --- a/tests/kms_draw_crc.c +++ b/tests/kms_draw_crc.c @@ -102,7 +102,6 @@ static void get_method_crc(enum igt_draw_method method, uint64_t tiling, &ms.connector_id, 1, ms.mode); igt_assert(rc == 0); - igt_debug_wait_for_keypress("crc"); igt_pipe_crc_collect_crc(pipe_crc, crc); kmstest_unset_all_crtcs(drm_fd, drm_res); @@ -144,7 +143,6 @@ static void get_fill_crc(uint64_t tiling, igt_crc_t *crc) &ms.connector_id, 1, ms.mode); igt_assert(rc == 0); - igt_debug_wait_for_keypress("crc"); igt_pipe_crc_collect_crc(pipe_crc, crc); kmstest_unset_all_crtcs(drm_fd, drm_res); @@ -171,7 +169,6 @@ static void fill_fb_subtest(void) &ms.connector_id, 1, ms.mode); igt_assert(rc == 0); - igt_debug_wait_for_keypress("crc"); igt_pipe_crc_collect_crc(pipe_crc, &base_crc); get_fill_crc(LOCAL_DRM_FORMAT_MOD_NONE, &crc); diff --git a/tests/kms_plane.c b/tests/kms_plane.c index dc83a89a..741d0b41 100644 --- a/tests/kms_plane.c +++ b/tests/kms_plane.c @@ -330,8 +330,6 @@ test_plane_panning_with_output(data_t *data, igt_pipe_crc_collect_crc(data->pipe_crc, &crc); - igt_debug_wait_for_keypress("crc"); - if (flags & TEST_PANNING_TOP_LEFT) igt_assert_crc_equal(&test.red_crc, &crc); else |