summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/rbug/rbug_screen.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2016-08-21 12:24:59 +0200
committerMarek Olšák <[email protected]>2016-08-25 14:09:48 +0200
commit9daaa6f5a66ab6cc99c6f0af37fc1007ab3d09af (patch)
tree47e62319d0ddea75f93bccf52305133e2e0be5f3 /src/gallium/drivers/rbug/rbug_screen.c
parentb662c70aeab6a92751514f30719c13a6de253b40 (diff)
gallium: add a pipe_context parameter to resource_get_handle
radeonsi needs to do some operations (DCC decompression) for OpenGL-OpenCL interop and this is the only way to make it coherent with the current context. It can optionally be set to NULL. Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/drivers/rbug/rbug_screen.c')
-rw-r--r--src/gallium/drivers/rbug/rbug_screen.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gallium/drivers/rbug/rbug_screen.c b/src/gallium/drivers/rbug/rbug_screen.c
index 8d216691fdb..3742c103306 100644
--- a/src/gallium/drivers/rbug/rbug_screen.c
+++ b/src/gallium/drivers/rbug/rbug_screen.c
@@ -176,16 +176,19 @@ rbug_screen_resource_from_handle(struct pipe_screen *_screen,
static boolean
rbug_screen_resource_get_handle(struct pipe_screen *_screen,
+ struct pipe_context *_pipe,
struct pipe_resource *_resource,
struct winsys_handle *handle,
unsigned usage)
{
struct rbug_screen *rb_screen = rbug_screen(_screen);
+ struct rbug_context *rb_pipe = rbug_context(_pipe);
struct rbug_resource *rb_resource = rbug_resource(_resource);
struct pipe_screen *screen = rb_screen->screen;
struct pipe_resource *resource = rb_resource->resource;
- return screen->resource_get_handle(screen, resource, handle, usage);
+ return screen->resource_get_handle(screen, rb_pipe ? rb_pipe->pipe : NULL,
+ resource, handle, usage);
}