[Mesa-dev] [PATCH 4/5] anv: Pull the API version from anv_extensions.py
Jason Ekstrand
jason at jlekstrand.net
Tue Aug 1 18:54:06 UTC 2017
This way everything stays in sync and we only have the one version
number.
---
src/intel/vulkan/anv_device.c | 2 +-
src/intel/vulkan/anv_extensions.py | 11 +++++++++++
src/intel/vulkan/anv_private.h | 1 +
3 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index 70b5cd1..793e519 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -794,7 +794,7 @@ void anv_GetPhysicalDeviceProperties(
};
*pProperties = (VkPhysicalDeviceProperties) {
- .apiVersion = VK_MAKE_VERSION(1, 0, 54),
+ .apiVersion = anv_physical_device_api_version(pdevice),
.driverVersion = vk_get_driver_version(),
.vendorID = 0x8086,
.deviceID = pdevice->chipset_id,
diff --git a/src/intel/vulkan/anv_extensions.py b/src/intel/vulkan/anv_extensions.py
index 7307cac..f4bfcf1 100644
--- a/src/intel/vulkan/anv_extensions.py
+++ b/src/intel/vulkan/anv_extensions.py
@@ -91,6 +91,10 @@ class VkVersion:
ver_list.append(str(self.patch))
return '.'.join(ver_list)
+ def c_vk_version(self):
+ ver_list = [str(self.major), str(self.minor), str(self.patch)]
+ return 'VK_MAKE_VERSION(' + ', '.join(ver_list) + ')'
+
def __int_ver(self):
# This is just an expansion of VK_VERSION
patch = self.patch if self.patch is not None else 0
@@ -173,6 +177,12 @@ VkResult anv_EnumerateInstanceExtensionProperties(
return vk_outarray_status(&out);
}
+uint32_t
+anv_physical_device_api_version(struct anv_physical_device *dev)
+{
+ return ${MAX_API_VERSION.c_vk_version()};
+}
+
bool
anv_physical_device_extension_supported(struct anv_physical_device *device,
const char *name)
@@ -218,6 +228,7 @@ if __name__ == '__main__':
_init_exts_from_xml(args.xml)
template_env = {
+ 'MAX_API_VERSION': MAX_API_VERSION,
'instance_extensions': [e for e in EXTENSIONS if e.type == 'instance'],
'device_extensions': [e for e in EXTENSIONS if e.type == 'device'],
}
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h
index 818f699..c364491 100644
--- a/src/intel/vulkan/anv_private.h
+++ b/src/intel/vulkan/anv_private.h
@@ -685,6 +685,7 @@ VkResult anv_init_wsi(struct anv_physical_device *physical_device);
void anv_finish_wsi(struct anv_physical_device *physical_device);
bool anv_instance_extension_supported(const char *name);
+uint32_t anv_physical_device_api_version(struct anv_physical_device *dev);
bool anv_physical_device_extension_supported(struct anv_physical_device *dev,
const char *name);
--
2.5.0.400.gff86faf
More information about the mesa-dev
mailing list