diff options
author | Ben Widawsky <benjamin.widawsky@intel.com> | 2013-10-09 08:41:52 -0700 |
---|---|---|
committer | Ben Widawsky <benjamin.widawsky@intel.com> | 2013-11-06 09:34:35 -0800 |
commit | eb89ce7a7e3c54961025f19093ef79fd677a94b6 (patch) | |
tree | 3f74a045652a944405766834f70046e2a805c215 /tests/gem_exec_blt.c | |
parent | 91f9e19fcd8df9cd23f54b92db83ecfffcaf47bf (diff) |
tests/bdw: gem_exec_blt
support gen8 style blits
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Diffstat (limited to 'tests/gem_exec_blt.c')
-rw-r--r-- | tests/gem_exec_blt.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/gem_exec_blt.c b/tests/gem_exec_blt.c index 8c455b89..e0e29972 100644 --- a/tests/gem_exec_blt.c +++ b/tests/gem_exec_blt.c @@ -50,7 +50,8 @@ #define BLT_SRC_TILED (1<<15) #define BLT_DST_TILED (1<<11) -static int gem_linear_blt(uint32_t *batch, +static int gem_linear_blt(int fd, + uint32_t *batch, uint32_t src, uint32_t dst, uint32_t length, @@ -75,6 +76,8 @@ static int gem_linear_blt(uint32_t *batch, reloc->write_domain = I915_GEM_DOMAIN_RENDER; reloc->presumed_offset = 0; reloc++; + if (intel_gen(intel_get_drm_devid(fd)) >= 8) + b[i++] = 0; /* FIXME */ b[i++] = 0; b[i++] = 16*1024; @@ -86,6 +89,8 @@ static int gem_linear_blt(uint32_t *batch, reloc->write_domain = 0; reloc->presumed_offset = 0; reloc++; + if (intel_gen(intel_get_drm_devid(fd)) >= 8) + b[i++] = 0; /* FIXME */ b += i; length -= height * 16*1024; @@ -105,6 +110,8 @@ static int gem_linear_blt(uint32_t *batch, reloc->write_domain = I915_GEM_DOMAIN_RENDER; reloc->presumed_offset = 0; reloc++; + if (intel_gen(intel_get_drm_devid(fd)) >= 8) + b[i++] = 0; /* FIXME */ b[i++] = height << 16; b[i++] = 16*1024; @@ -116,6 +123,8 @@ static int gem_linear_blt(uint32_t *batch, reloc->write_domain = 0; reloc->presumed_offset = 0; reloc++; + if (intel_gen(intel_get_drm_devid(fd)) >= 8) + b[i++] = 0; /* FIXME */ b += i; } @@ -168,7 +177,7 @@ static void run(int object_size) src = gem_create(fd, object_size); dst = gem_create(fd, object_size); - len = gem_linear_blt(buf, src, dst, object_size, reloc); + len = gem_linear_blt(fd, buf, src, dst, object_size, reloc); gem_write(fd, handle, 0, buf, len); exec[0].handle = src; |