summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaulo Zanoni <paulo.r.zanoni@intel.com>2015-05-06 15:23:51 -0300
committerPaulo Zanoni <paulo.r.zanoni@intel.com>2015-05-14 10:02:07 -0300
commit641d535a03ada74a3088309609a16c79076e6ccc (patch)
tree80a15832f4676c8a1c962a1b105cf4a0ef7fad70
parent3db5762384a9495241c1e80ce315a2092e83686a (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.c6
-rw-r--r--tests/kms_draw_crc.c3
-rw-r--r--tests/kms_plane.c2
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