From 56acdca86dc9bf113a95d3c7b09bf517eca91815 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 16 Oct 2024 09:46:32 -0400 Subject: [PATCH] hk: claim 1.4 Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/vulkan/hk_instance.c | 2 +- src/asahi/vulkan/hk_physical_device.c | 11 +++++++++-- src/asahi/vulkan/meson.build | 4 ++-- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/asahi/vulkan/hk_instance.c b/src/asahi/vulkan/hk_instance.c index ee936996902..a89417a0bbe 100644 --- a/src/asahi/vulkan/hk_instance.c +++ b/src/asahi/vulkan/hk_instance.c @@ -20,7 +20,7 @@ hk_EnumerateInstanceVersion(uint32_t *pApiVersion) { uint32_t version_override = vk_get_version_override(); *pApiVersion = version_override ? version_override - : VK_MAKE_VERSION(1, 3, VK_HEADER_VERSION); + : VK_MAKE_VERSION(1, 4, VK_HEADER_VERSION); return VK_SUCCESS; } diff --git a/src/asahi/vulkan/hk_physical_device.c b/src/asahi/vulkan/hk_physical_device.c index 3f6cc6142e3..d0a9cafca0a 100644 --- a/src/asahi/vulkan/hk_physical_device.c +++ b/src/asahi/vulkan/hk_physical_device.c @@ -41,7 +41,7 @@ hk_get_vk_version() if (version_override) return version_override; - return VK_MAKE_VERSION(1, 3, VK_HEADER_VERSION); + return VK_MAKE_VERSION(1, 4, VK_HEADER_VERSION); } static void @@ -351,6 +351,9 @@ hk_get_device_features( .shaderIntegerDotProduct = true, .maintenance4 = true, + /* Vulkan 1.4 */ + .pushDescriptor = true, + /* VK_KHR_dynamic_rendering_local_read */ .dynamicRenderingLocalRead = true, @@ -768,7 +771,7 @@ hk_get_device_properties(const struct agx_device *dev, .independentResolveNone = true, .independentResolve = true, .driverID = VK_DRIVER_ID_MESA_HONEYKRISP, - .conformanceVersion = (VkConformanceVersion){1, 3, 8, 3}, + .conformanceVersion = (VkConformanceVersion){1, 4, 0, 0}, .denormBehaviorIndependence = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL, .roundingModeIndependence = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL, .shaderSignedZeroInfNanPreserveFloat16 = true, @@ -837,6 +840,10 @@ hk_get_device_properties(const struct agx_device *dev, .uniformTexelBufferOffsetSingleTexelAlignment = true, .maxBufferSize = HK_MAX_BUFFER_SIZE, + /* Vulkan 1.4 properties */ + .dynamicRenderingLocalReadDepthStencilAttachments = false, + .dynamicRenderingLocalReadMultisampledAttachments = true, + /* VK_KHR_push_descriptor */ .maxPushDescriptors = HK_MAX_PUSH_DESCRIPTORS, diff --git a/src/asahi/vulkan/meson.build b/src/asahi/vulkan/meson.build index 22b7360fec6..4eede3d3405 100644 --- a/src/asahi/vulkan/meson.build +++ b/src/asahi/vulkan/meson.build @@ -116,7 +116,7 @@ asahi_icd = custom_target( output : 'asahi_icd.@0@.json'.format(host_machine.cpu()), command : [ prog_python, '@INPUT0@', - '--api-version', '1.3', '--xml', '@INPUT1@', + '--api-version', '1.4', '--xml', '@INPUT1@', '--lib-path', join_paths(icd_lib_path, icd_file_name), '--out', '@OUTPUT@', ], @@ -133,7 +133,7 @@ custom_target( output : _dev_icdname, command : [ prog_python, '@INPUT0@', - '--api-version', '1.3', '--xml', '@INPUT1@', + '--api-version', '1.4', '--xml', '@INPUT1@', '--lib-path', meson.current_build_dir() / icd_file_name, '--out', '@OUTPUT@', ],