diff options
author | Thomas White <taw@bitwiz.org.uk> | 2009-10-18 22:59:38 +0200 |
---|---|---|
committer | Thomas White <taw@bitwiz.org.uk> | 2010-05-23 09:51:34 +0200 |
commit | 2724eef7a03f452799a19b0ebc893eb0c75ae3fc (patch) | |
tree | 35f6cffc4ee374ac269420b15914f346e8a35100 /glamo/glamo_bo_gem.c | |
parent | 32d8292e57f3e7d9e91f47b5b6ca80c04dfae1b4 (diff) |
Add subdata function
Diffstat (limited to 'glamo/glamo_bo_gem.c')
-rw-r--r-- | glamo/glamo_bo_gem.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/glamo/glamo_bo_gem.c b/glamo/glamo_bo_gem.c index 2cd95c46..38a4436f 100644 --- a/glamo/glamo_bo_gem.c +++ b/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; +} |