summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/drm/intel/gem/intel_be_device.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/winsys/drm/intel/gem/intel_be_device.h')
-rw-r--r--src/gallium/winsys/drm/intel/gem/intel_be_device.h46
1 files changed, 20 insertions, 26 deletions
diff --git a/src/gallium/winsys/drm/intel/gem/intel_be_device.h b/src/gallium/winsys/drm/intel/gem/intel_be_device.h
index c397048f8c..15916b0b10 100644
--- a/src/gallium/winsys/drm/intel/gem/intel_be_device.h
+++ b/src/gallium/winsys/drm/intel/gem/intel_be_device.h
@@ -57,45 +57,39 @@ struct intel_be_buffer {
unsigned flink;
};
-/*
- * Wrapper for driver get_texture_buffer functions.
- */
-boolean
-intel_be_get_texture_buffer(struct drm_api *api,
- struct pipe_texture *texture,
- struct pipe_buffer **buffer,
- unsigned *stride);
-
/**
- * Create a be buffer from a drm bo handle.
- *
- * Takes a reference.
+ * Create a texture from a shared drm handle.
*/
-struct pipe_buffer *
-intel_be_buffer_from_handle(struct drm_api *api,
- struct pipe_screen *screen,
- const char* name, unsigned handle);
+struct pipe_texture *
+intel_be_texture_from_shared_handle(struct drm_api *api,
+ struct pipe_screen *screen,
+ struct pipe_texture *templ,
+ const char* name,
+ unsigned pitch,
+ unsigned handle);
/**
- * Gets a handle from a buffer.
+ * Gets a shared handle from a texture.
*
- * If buffer is destroyed handle may become invalid.
+ * If texture is destroyed handle may become invalid.
*/
boolean
-intel_be_handle_from_buffer(struct drm_api *api,
- struct pipe_screen *screen,
- struct pipe_buffer *buffer,
- unsigned *handle);
+intel_be_shared_handle_from_texture(struct drm_api *api,
+ struct pipe_screen *screen,
+ struct pipe_texture *texture,
+ unsigned *pitch,
+ unsigned *handle);
/**
- * Gets the global handle from a buffer.
+ * Gets the local handle from a texture. As used by KMS.
*
- * If buffer is destroyed handle may become invalid.
+ * If texture is destroyed handle may become invalid.
*/
boolean
-intel_be_global_handle_from_buffer(struct drm_api *api,
+intel_be_local_handle_from_texture(struct drm_api *api,
struct pipe_screen *screen,
- struct pipe_buffer *buffer,
+ struct pipe_texture *texture,
+ unsigned *pitch,
unsigned *handle);
static INLINE struct intel_be_buffer *