[Mesa-dev] [PATCH v2 0/9] anv: Implement VK_KHR_external_semaphore
Jason Ekstrand
jason at jlekstrand.net
Fri Aug 4 01:25:19 UTC 2017
This patch series implements support for VK_KHR_external_semaphore for
Intel. The series relies on DRM syncobj and, while we do have fallbacks
for if the kernel does not support syncobj, I do want to land syncobj
support in mesa before enabling the xtension. This way we can rely on the
device->has_syncobj check to decide whether we're doing BO-based semaphores
or syncobj without having to worry about what the driver on the other side
of the import/export supports. If you have VK_KHR_external_semaphore, then
you support both modes.
Cc: Chad Versace <chadversary at chromium.org>
Cc: Kristian H. Kristensen <hoegsberg at gmail.com>
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Jason Ekstrand (9):
anv: Add a basic implementation of VK_KHX_external_semaphore
anv: Submit a dummy batch when only semaphores are provided.
anv/gem: Use EXECBUFFER2_WR when the FENCE_OUT flag is set
anv: Implement support for exporting semaphores as FENCE_FD
intel/drm: Pull in the i916 fence array API
anv/gem: Add a drm syncobj support
anv/allocator: Add a syncobj cache
anv: Use DRM sync objects for external semaphores when available
anv: Advertise VK_KHR_external_semaphore
include/drm-uapi/i915_drm.h | 30 ++++-
src/intel/vulkan/anv_allocator.c | 194 +++++++++++++++++++++++++++
src/intel/vulkan/anv_batch_chain.c | 194 ++++++++++++++++++++++++++-
src/intel/vulkan/anv_device.c | 37 +++++-
src/intel/vulkan/anv_extensions.py | 5 +
src/intel/vulkan/anv_gem.c | 93 ++++++++++++-
src/intel/vulkan/anv_gem_stubs.c | 24 ++++
src/intel/vulkan/anv_private.h | 79 ++++++++++-
src/intel/vulkan/anv_queue.c | 264 ++++++++++++++++++++++++++++++++++++-
9 files changed, 898 insertions(+), 22 deletions(-)
--
2.5.0.400.gff86faf
More information about the mesa-dev
mailing list