summaryrefslogtreecommitdiffstats
path: root/src/gbm/main/gbmint.h
diff options
context:
space:
mode:
authorRob Herring <[email protected]>2016-05-03 21:02:47 -0500
committerEmil Velikov <[email protected]>2016-05-23 12:07:46 +0100
commit8aeb6d768b4285f600d09f38d0b406adf46c251d (patch)
treec4ad438adb7e6862da2b8dbc77a3963a9188f073 /src/gbm/main/gbmint.h
parent1f4869a2089c6172feff382e177d74ac68c241a7 (diff)
gbm: Add map/unmap functions
This adds map and unmap functions to GBM utilizing the DRIimage extension mapImage/unmapImage functions or existing internal mapping for dumb buffers. Unlike prior attempts, this version provides a region to map and usage flags for the mapping. The operation follows the same semantics as the gallium transfer_map() function. This was tested with GBM based gralloc on Android. Signed-off-by: Rob Herring <[email protected]> [Emil Velikov: drop no longer relevant hunk from commit message.] Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/gbm/main/gbmint.h')
-rw-r--r--src/gbm/main/gbmint.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gbm/main/gbmint.h b/src/gbm/main/gbmint.h
index 155eb12b06b..914e2c1749a 100644
--- a/src/gbm/main/gbmint.h
+++ b/src/gbm/main/gbmint.h
@@ -68,6 +68,12 @@ struct gbm_device {
uint32_t usage);
struct gbm_bo *(*bo_import)(struct gbm_device *gbm, uint32_t type,
void *buffer, uint32_t usage);
+ void *(*bo_map)(struct gbm_bo *bo,
+ uint32_t x, uint32_t y,
+ uint32_t width, uint32_t height,
+ uint32_t flags, uint32_t *stride,
+ void **map_data);
+ void (*bo_unmap)(struct gbm_bo *bo, void *map_data);
int (*bo_write)(struct gbm_bo *bo, const void *buf, size_t data);
int (*bo_get_fd)(struct gbm_bo *bo);
void (*bo_destroy)(struct gbm_bo *bo);