diff options
author | Jason Ekstrand <[email protected]> | 2017-04-10 18:36:42 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2017-08-15 19:08:26 -0700 |
commit | 55bce22d8d98342ce071b7286ce07f31430f772a (patch) | |
tree | 2a6fc2247e11ac3250ede79060eab9f1d6cbd793 /src/intel/vulkan/anv_private.h | |
parent | f41a0e4b0daefbe1de281a089bf6f139bd347881 (diff) |
anv: Use DRM sync objects for external semaphores when available
Reviewed-by: Lionel Landwerlin <[email protected]>
Diffstat (limited to 'src/intel/vulkan/anv_private.h')
-rw-r--r-- | src/intel/vulkan/anv_private.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index b451fa509a6..de7463797a4 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -653,6 +653,7 @@ struct anv_physical_device { int cmd_parser_version; bool has_exec_async; bool has_exec_fence; + bool has_syncobj; uint32_t eu_total; uint32_t subslice_total; @@ -1742,6 +1743,7 @@ enum anv_semaphore_type { ANV_SEMAPHORE_TYPE_DUMMY, ANV_SEMAPHORE_TYPE_BO, ANV_SEMAPHORE_TYPE_SYNC_FILE, + ANV_SEMAPHORE_TYPE_DRM_SYNCOBJ, }; struct anv_semaphore_impl { @@ -1760,6 +1762,12 @@ struct anv_semaphore_impl { * created or because it has been used for a wait, fd will be -1. */ int fd; + + /* Sync object handle when type == AKV_SEMAPHORE_TYPE_DRM_SYNCOBJ. + * Unlike GEM BOs, DRM sync objects aren't deduplicated by the kernel on + * import so we don't need to bother with a userspace cache. + */ + uint32_t syncobj; }; }; |