lib/drmtest: extract gem_set_domain and gem_sync

gem_sync just does a gtt sync by using set_domain(GTT, GTT).

Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Daniel Vetter
2012-01-10 16:05:34 +01:00
parent a7a80c2c2f
commit 673e6b220a
10 changed files with 27 additions and 83 deletions
+19
View File
@@ -169,3 +169,22 @@ void gem_read(int fd, uint32_t handle, uint32_t offset, void *buf, uint32_t leng
assert(ret == 0);
}
void gem_set_domain(int fd, uint32_t handle,
uint32_t read_domains, uint32_t write_domain)
{
struct drm_i915_gem_set_domain set_domain;
int ret;
set_domain.handle = handle;
set_domain.read_domains = read_domains;
set_domain.write_domain = write_domain;
ret = drmIoctl(fd, DRM_IOCTL_I915_GEM_SET_DOMAIN, &set_domain);
assert(ret == 0);
}
void gem_sync(int fd, uint32_t handle)
{
gem_set_domain(fd, handle, I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
}
+3
View File
@@ -41,3 +41,6 @@ void gem_set_tiling(int fd, uint32_t handle, int tiling, int stride);
void gem_close(int fd, uint32_t handle);
void gem_write(int fd, uint32_t handle, uint32_t offset, const void *buf, uint32_t size);
void gem_read(int fd, uint32_t handle, uint32_t offset, void *buf, uint32_t size);
void gem_set_domain(int fd, uint32_t handle,
uint32_t read_domains, uint32_t write_domain);
void gem_sync(int fd, uint32_t handle);