aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorAndres Rodriguez <[email protected]>2017-10-26 22:42:08 -0400
committerAndres Rodriguez <[email protected]>2018-01-30 15:13:49 -0500
commitcc9762d74d33898f56cfcbd9ab386364a19df6dc (patch)
treed10843af6d1b7d224a55a908b4b677265d18d50a /src/gallium/drivers
parent29b9bd0539ed21805228bdd0933e543eec16c670 (diff)
winsys/amdgpu: add support for syncobj signaling v3
Add the ability to signal a syncobj when a cs completes execution. v2: corresponding changes for gallium fence->semaphore rename v3: s/semaphore/fence for pipe objects Signed-off-by: Andres Rodriguez <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/radeon/radeon_winsys.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeon/radeon_winsys.h b/src/gallium/drivers/radeon/radeon_winsys.h
index 8a69a2b4982..238c921341d 100644
--- a/src/gallium/drivers/radeon/radeon_winsys.h
+++ b/src/gallium/drivers/radeon/radeon_winsys.h
@@ -583,6 +583,12 @@ struct radeon_winsys {
struct pipe_fence_handle *fence);
/**
+ * Signal a syncobj when the CS finishes execution.
+ */
+ void (*cs_add_syncobj_signal)(struct radeon_winsys_cs *cs,
+ struct pipe_fence_handle *fence);
+
+ /**
* Wait for the fence and return true if the fence has been signalled.
* The timeout of 0 will only return the status.
* The timeout of PIPE_TIMEOUT_INFINITE will always wait until the fence
@@ -599,6 +605,12 @@ struct radeon_winsys {
struct pipe_fence_handle *src);
/**
+ * Create a new fence object corresponding to the given syncobj fd.
+ */
+ struct pipe_fence_handle *(*fence_import_syncobj)(struct radeon_winsys *ws,
+ int fd);
+
+ /**
* Create a new fence object corresponding to the given sync_file.
*/
struct pipe_fence_handle *(*fence_import_sync_file)(struct radeon_winsys *ws,