From 35f57a27396c116fc5e9984ac1254d26b83ad2c4 Mon Sep 17 00:00:00 2001 From: Arjob Mukherjee Date: Fri, 17 Apr 2026 13:23:25 +0530 Subject: [PATCH] pvr: increase value of maxPerStageDescriptorStorageBuffers Increase past the minimum required by the Vulkan Spec to fix tests. This was needed due to Zink requirements which splits `maxPerStageDescriptorStorageBuffers` between atomic buffers and `MaxShaderStorageBlocks`. Fixes the following GLES conformance tests: KHR-GLES31.core.compute_shader.resources-max KHR-GLES31.core.draw_indirect.advanced-twoPass-Compute-arrays KHR-GLES31.core.shader_image_load_store.advanced-sync-vertexArray KHR-GLES31.core.shader_image_load_store.basic-allTargets-store-cs KHR-GLES31.core.shader_image_load_store.basic-allTargets-store-fs KHR-GLES31.core.shader_storage_buffer_object.advanced-unsizedArrayLength-cs-int KHR-GLES31.core.shader_storage_buffer_object.basic-stdLayout_UBO_SSBO-case1-cs KHR-GLES31.core.shader_storage_buffer_object.basic-stdLayout_UBO_SSBO-case2-cs dEQP-GLES31.functional.draw_indirect.compute_interop.combined.drawelements_compute_cmd_and_data_and_indices dEQP-GLES31.functional.synchronization.in_invocation.ssbo_alias_overwrite dEQP-GLES31.functional.synchronization.in_invocation.ssbo_alias_write dEQP-GLES31.functional.synchronization.in_invocation.ssbo_atomic_alias_overwrite dEQP-GLES31.functional.synchronization.in_invocation.ssbo_atomic_alias_write dEQP-GLES31.functional.synchronization.inter_call.with_memory_barrier.ssbo_atomic_multiple_write_read dEQP-GLES31.functional.synchronization.inter_call.with_memory_barrier.ssbo_multiple_write_read dEQP-GLES31.functional.synchronization.inter_invocation.ssbo_alias_overwrite dEQP-GLES31.functional.synchronization.inter_invocation.ssbo_alias_write dEQP-GLES31.functional.synchronization.inter_invocation.ssbo_atomic_alias_overwrite dEQP-GLES31.functional.synchronization.inter_invocation.ssbo_atomic_alias_write Backport-to: 26.0 Signed-off-by: Arjob Mukherjee Reviewed-by: Frank Binns Part-of: --- src/imagination/vulkan/pvr_physical_device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/imagination/vulkan/pvr_physical_device.c b/src/imagination/vulkan/pvr_physical_device.c index ccb1efc154e..4349190a390 100644 --- a/src/imagination/vulkan/pvr_physical_device.c +++ b/src/imagination/vulkan/pvr_physical_device.c @@ -580,7 +580,7 @@ static bool pvr_physical_device_get_properties( .maxBoundDescriptorSets = 4U, .maxPerStageDescriptorSamplers = 16, .maxPerStageDescriptorUniformBuffers = 12, - .maxPerStageDescriptorStorageBuffers = 4, + .maxPerStageDescriptorStorageBuffers = 8, .maxPerStageDescriptorSampledImages = 16, .maxPerStageDescriptorStorageImages = 4, .maxPerStageDescriptorInputAttachments = 4,