radv: add external memory support

Graphics / Mesa 3D Graphics Library / Mesa - Dave Airlie [redhat.com] - 4 June 2017 20:26 EDT

This adds support for exporting 2D images, to an opaque fd.

This implements the:
VK_KHX_external_memory_capabilities
VK_KHX_external_memory
VK_KHX_external_memory_fd

extensions.

These are used by SteamVR, we should work with anv to decide if we should ship these under an env
var or something.

v2 (Bas): - Don't expose the semaphore ext without implementing it.
- Only export the capabilities ext as instance ext.
- Implement radv_GetPhysicalDeviceExternalBufferPropertiesKHX.

4ba2e6c radv: add external memory support.
src/amd/vulkan/radv_device.c | 73 ++++++++++++++++----
src/amd/vulkan/radv_entrypoints_gen.py | 3 +
src/amd/vulkan/radv_formats.c | 121 ++++++++++++++++++++++++++++++++-
3 files changed, 183 insertions(+), 14 deletions(-)

Upstream: cgit.freedesktop.org


  • Share