From e344cd81783255eb5de762e5bd56bd4dfe8ae0c2 Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Thu, 4 Jan 2018 18:38:30 +0100 Subject: [PATCH] radv: Generate VK_ANDROID_native_buffer. Reviewed-by: Dave Airlie --- src/amd/vulkan/Makefile.am | 6 +++++- src/amd/vulkan/radv_entrypoints_gen.py | 4 +++- src/amd/vulkan/radv_extensions.py | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/amd/vulkan/Makefile.am b/src/amd/vulkan/Makefile.am index 6b352aebf98..e1a04e8c7f1 100644 --- a/src/amd/vulkan/Makefile.am +++ b/src/amd/vulkan/Makefile.am @@ -106,11 +106,14 @@ nodist_EXTRA_libvulkan_radeon_la_SOURCES = dummy.cpp libvulkan_radeon_la_SOURCES = $(VULKAN_GEM_FILES) vulkan_api_xml = $(top_srcdir)/src/vulkan/registry/vk.xml +vk_android_native_buffer_xml = $(top_srcdir)/src/vulkan/registry/vk_android_native_buffer.xml radv_entrypoints.c: radv_entrypoints_gen.py radv_extensions.py $(vulkan_api_xml) $(MKDIR_GEN) $(AM_V_GEN)$(PYTHON2) $(srcdir)/radv_entrypoints_gen.py \ - --xml $(vulkan_api_xml) --outdir $(builddir) + --xml $(vulkan_api_xml) \ + --xml $(vk_android_native_buffer_xml) \ + --outdir $(builddir) radv_entrypoints.h: radv_entrypoints.c radv_extensions.c: radv_extensions.py \ @@ -118,6 +121,7 @@ radv_extensions.c: radv_extensions.py \ $(MKDIR_GEN) $(AM_V_GEN)$(PYTHON2) $(srcdir)/radv_extensions.py \ --xml $(vulkan_api_xml) \ + --xml $(vk_android_native_buffer_xml) \ --out $@ vk_format_table.c: vk_format_table.py \ diff --git a/src/amd/vulkan/radv_entrypoints_gen.py b/src/amd/vulkan/radv_entrypoints_gen.py index f8f99d00b79..c981c0be13a 100644 --- a/src/amd/vulkan/radv_entrypoints_gen.py +++ b/src/amd/vulkan/radv_entrypoints_gen.py @@ -237,7 +237,9 @@ def get_entrypoints(doc, entrypoints_to_defines, start_index): if extension.attrib['name'] not in supported: continue - assert extension.attrib['supported'] == 'vulkan' + if extension.attrib['supported'] != 'vulkan': + continue + for command in extension.findall('./require/command'): enabled_commands.add(command.attrib['name']) diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py index f11540a5c96..ab34c01cb61 100644 --- a/src/amd/vulkan/radv_extensions.py +++ b/src/amd/vulkan/radv_extensions.py @@ -50,6 +50,7 @@ class Extension: # the those extension strings, then tests dEQP-VK.api.info.instance.extensions # and dEQP-VK.api.info.device fail due to the duplicated strings. EXTENSIONS = [ + Extension('VK_ANDROID_native_buffer', 5, 'ANDROID && device->rad_info.has_syncobj_wait_for_submit'), Extension('VK_KHR_bind_memory2', 1, True), Extension('VK_KHR_dedicated_allocation', 1, True), Extension('VK_KHR_descriptor_update_template', 1, True),