summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel/intel_regions.c
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2010-06-06 20:39:19 -0400
committerKristian Høgsberg <krh@bitplanet.net>2010-08-25 09:17:48 -0400
commitf301932dba4cc75e810e0c051e39247128a899fc (patch)
treeeffae4e2888cff4d6d7bbcf8d8471cfba0bf3c27 /src/mesa/drivers/dri/intel/intel_regions.c
parent9087ba128089ed0dc00e6eb38f37126fb7557d3b (diff)
intel: Support EGL_MESA_image_drm
Diffstat (limited to 'src/mesa/drivers/dri/intel/intel_regions.c')
-rw-r--r--src/mesa/drivers/dri/intel/intel_regions.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_regions.c b/src/mesa/drivers/dri/intel/intel_regions.c
index 57ffe611d1..e87e29462c 100644
--- a/src/mesa/drivers/dri/intel/intel_regions.c
+++ b/src/mesa/drivers/dri/intel/intel_regions.c
@@ -192,6 +192,22 @@ intel_region_alloc(struct intel_screen *screen,
aligned_pitch / cpp, tiling, buffer);
}
+GLboolean
+intel_region_flink(struct intel_region *region, uint32_t *name)
+{
+ if (region->name == 0) {
+ if (drm_intel_bo_flink(region->buffer, &region->name))
+ return GL_FALSE;
+
+ _mesa_HashInsert(region->screen->named_regions,
+ region->name, region);
+ }
+
+ *name = region->name;
+
+ return GL_TRUE;
+}
+
struct intel_region *
intel_region_alloc_for_handle(struct intel_screen *screen,
GLuint cpp,