diff options
author | Thomas White <taw@bitwiz.org.uk> | 2009-10-18 22:59:38 +0200 |
---|---|---|
committer | Thomas White <taw@bitwiz.org.uk> | 2009-10-18 22:59:38 +0200 |
commit | 3ae8fbd47632e3a0ad3ccf5af49c2e21c336122a (patch) | |
tree | 9e558cdf7eee775a1d4e88e6e7b5b4f430a450dd /libdrm/glamo/glamo_bo_gem.c | |
parent | 877438dd1b92a5e70fd211564f9398a2103661dc (diff) |
Add subdata function
Diffstat (limited to 'libdrm/glamo/glamo_bo_gem.c')
-rw-r--r-- | libdrm/glamo/glamo_bo_gem.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libdrm/glamo/glamo_bo_gem.c b/libdrm/glamo/glamo_bo_gem.c index 2cd95c46..38a4436f 100644 --- a/libdrm/glamo/glamo_bo_gem.c +++ b/libdrm/glamo/glamo_bo_gem.c @@ -316,3 +316,21 @@ int glamo_gem_name_buffer(struct glamo_bo *bo, uint32_t *name) *name = flink.name; return 0; } + +int glamo_bo_subdata(struct glamo_bo *bo, unsigned long offset, + unsigned long size, const void *data) +{ + int ret; + + if (size == 0 || data == NULL) + return 0; + + ret = bo_map(bo, 1); + if ( ret ) return ret; + + memcpy((unsigned char *)bo->virtual + offset, data, size); + + bo_unmap(bo); + + return 0; +} |