From: Paulo Zanoni <paulo.r.zan...@intel.com>

Instead of its hardcoded implementation.

Signed-off-by: Paulo Zanoni <paulo.r.zan...@intel.com>
---
 tests/kms_fbc_crc.c | 29 +++++++----------------------
 1 file changed, 7 insertions(+), 22 deletions(-)

diff --git a/tests/kms_fbc_crc.c b/tests/kms_fbc_crc.c
index d81f4a2..f1888c4 100644
--- a/tests/kms_fbc_crc.c
+++ b/tests/kms_fbc_crc.c
@@ -215,7 +215,7 @@ static void test_crc(data_t *data, enum test_mode mode)
 {
        uint32_t crtc_id = data->output->config.crtc->crtc_id;
        igt_pipe_crc_t *pipe_crc = data->pipe_crc;
-       igt_crc_t *crcs = NULL;
+       igt_crc_t crc;
        uint32_t handle = data->handle[0];
 
        igt_assert(fbc_enabled(data));
@@ -271,14 +271,11 @@ static void test_crc(data_t *data, enum test_mode mode)
        igt_wait_for_vblank(data->drm_fd, data->pipe);
        igt_wait_for_vblank(data->drm_fd, data->pipe);
 
-       igt_pipe_crc_start(pipe_crc);
-       igt_pipe_crc_get_crcs(pipe_crc, 1, &crcs);
-       igt_pipe_crc_stop(pipe_crc);
+       igt_pipe_crc_collect_crc(pipe_crc, &crc);
        if (mode == TEST_PAGE_FLIP)
-               igt_assert_crc_equal(&crcs[0], &data->ref_crc[1]);
+               igt_assert_crc_equal(&crc, &data->ref_crc[1]);
        else
                ;/* FIXME: missing reference CRCs */
-       free(crcs);
 
        /*
         * Allow time for FBC to kick in again if it
@@ -286,14 +283,11 @@ static void test_crc(data_t *data, enum test_mode mode)
         */
        igt_assert(wait_for_fbc_enabled(data));
 
-       igt_pipe_crc_start(pipe_crc);
-       igt_pipe_crc_get_crcs(pipe_crc, 1, &crcs);
-       igt_pipe_crc_stop(pipe_crc);
+       igt_pipe_crc_collect_crc(pipe_crc, &crc);
        if (mode == TEST_PAGE_FLIP)
-               igt_assert_crc_equal(&crcs[0], &data->ref_crc[1]);
+               igt_assert_crc_equal(&crc, &data->ref_crc[1]);
        else
                ;/* FIXME: missing reference CRCs */
-       free(crcs);
 }
 
 static bool prepare_crtc(data_t *data)
@@ -320,7 +314,6 @@ static bool prepare_test(data_t *data, enum test_mode 
test_mode)
        igt_output_t *output = data->output;
        drmModeModeInfo *mode;
        igt_pipe_crc_t *pipe_crc;
-       igt_crc_t *crcs = NULL;
 
        data->primary = igt_output_get_plane(data->output, IGT_PLANE_PRIMARY);
        mode = igt_output_get_mode(data->output);
@@ -367,11 +360,7 @@ static bool prepare_test(data_t *data, enum test_mode 
test_mode)
        igt_wait_for_vblank(data->drm_fd, data->pipe);
 
        /* get reference crc for fb[1] */
-       igt_pipe_crc_start(pipe_crc);
-       igt_pipe_crc_get_crcs(pipe_crc, 1, &crcs);
-       data->ref_crc[1] = crcs[0];
-       igt_pipe_crc_stop(pipe_crc);
-       free(crcs);
+       igt_pipe_crc_collect_crc(pipe_crc, &data->ref_crc[1]);
 
        if (test_mode == TEST_CONTEXT || test_mode == 
TEST_PAGE_FLIP_AND_CONTEXT) {
                data->ctx[0] = drm_intel_gem_context_create(data->bufmgr);
@@ -406,11 +395,7 @@ static bool prepare_test(data_t *data, enum test_mode 
test_mode)
        igt_wait_for_vblank(data->drm_fd, data->pipe);
 
        /* get reference crc for fb[0] */
-       igt_pipe_crc_start(pipe_crc);
-       igt_pipe_crc_get_crcs(pipe_crc, 1, &crcs);
-       data->ref_crc[0] = crcs[0];
-       igt_pipe_crc_stop(pipe_crc);
-       free(crcs);
+       igt_pipe_crc_collect_crc(pipe_crc, &data->ref_crc[0]);
 
        return true;
 }
-- 
2.1.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to