diff options
author | Paulo Zanoni <paulo.r.zanoni@intel.com> | 2015-05-07 13:50:17 -0300 |
---|---|---|
committer | Paulo Zanoni <paulo.r.zanoni@intel.com> | 2015-05-14 10:02:07 -0300 |
commit | 31906084dea4f3570fea3a0a377a18665be14ba9 (patch) | |
tree | 68d5fb49e1b9434ec0fb6575eb9398354bb44250 /tests | |
parent | b3faeb16fe455497e93846979f21ca08d598d0fe (diff) |
tests/kms_fbc_crc: extract fill_mmap_{cpu,gtt}()
Just like we have fill_render() and fill_blt(). I'm also going to use
fill_mmap_gtt() for the code that generates the reference CRCs.
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/kms_fbc_crc.c | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/tests/kms_fbc_crc.c b/tests/kms_fbc_crc.c index a66aa510..b52ac29a 100644 --- a/tests/kms_fbc_crc.c +++ b/tests/kms_fbc_crc.c @@ -190,6 +190,29 @@ static void fill_render(data_t *data, uint32_t handle, gem_bo_busy(data->drm_fd, handle); } +static void fill_mmap_cpu(data_t *data, uint32_t handle, unsigned char color) +{ + void *ptr; + + ptr = gem_mmap__cpu(data->drm_fd, handle, 0, 4096, PROT_WRITE); + gem_set_domain(data->drm_fd, handle, I915_GEM_DOMAIN_CPU, + I915_GEM_DOMAIN_CPU); + memset(ptr, color, 4); + munmap(ptr, 4096); + gem_sw_finish(data->drm_fd, handle); +} + +static void fill_mmap_gtt(data_t *data, uint32_t handle, unsigned char color) +{ + void *ptr; + + ptr = gem_mmap__gtt(data->drm_fd, handle, 4096, PROT_WRITE); + gem_set_domain(data->drm_fd, handle, I915_GEM_DOMAIN_GTT, + I915_GEM_DOMAIN_GTT); + memset(ptr, color, 4); + munmap(ptr, 4096); +} + static bool fbc_enabled(data_t *data) { FILE *status; @@ -237,24 +260,16 @@ static void test_crc(data_t *data, enum test_mode mode) } switch (mode) { - void *ptr; drm_intel_context *context = NULL; case TEST_PAGE_FLIP: break; case TEST_MMAP_CPU: case TEST_PAGE_FLIP_AND_MMAP_CPU: - ptr = gem_mmap__cpu(data->drm_fd, handle, 0, 4096, PROT_WRITE); - gem_set_domain(data->drm_fd, handle, I915_GEM_DOMAIN_CPU, I915_GEM_DOMAIN_CPU); - memset(ptr, 0xff, 4); - munmap(ptr, 4096); - gem_sw_finish(data->drm_fd, handle); + fill_mmap_cpu(data, handle, 0xff); break; case TEST_MMAP_GTT: case TEST_PAGE_FLIP_AND_MMAP_GTT: - ptr = gem_mmap__gtt(data->drm_fd, handle, 4096, PROT_WRITE); - gem_set_domain(data->drm_fd, handle, I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT); - memset(ptr, 0xff, 4); - munmap(ptr, 4096); + fill_mmap_gtt(data, handle, 0xff); break; case TEST_BLT: case TEST_PAGE_FLIP_AND_BLT: |