From f16da2c82010d95e3990c3a46b819ff913ec10c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Pi=C3=B1eiro?= Date: Thu, 30 Jul 2020 14:35:43 +0200 Subject: [PATCH] v3dv/device: fix minTexelBufferOffsetAlingment As we understand that texture accesses should be aligned to the UIF block size. Fixes several of the CTS tests under this pattern: dEQP-VK.binding_model.shader_access.primary_cmd_buf.uniform_texel_buffer.*.offset_nonzero dEQP-VK.binding_model.shader_access.primary_cmd_buf.storage_texel_buffer.*.offset_nonzero Note: for those tests, using a lower value (64) was enough to get them working, but again, we understand that the real alignment is the UIF block size. Part-of: --- src/broadcom/vulkan/v3dv_device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/broadcom/vulkan/v3dv_device.c b/src/broadcom/vulkan/v3dv_device.c index 0494303085e..39578f5667e 100644 --- a/src/broadcom/vulkan/v3dv_device.c +++ b/src/broadcom/vulkan/v3dv_device.c @@ -855,7 +855,7 @@ v3dv_GetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice, 2.0 * max_fb_size - 1 }, .viewportSubPixelBits = 0, .minMemoryMapAlignment = page_size, - .minTexelBufferOffsetAlignment = 16, + .minTexelBufferOffsetAlignment = VC5_UIFBLOCK_SIZE, .minUniformBufferOffsetAlignment = 32, .minStorageBufferOffsetAlignment = 32, .minTexelOffset = -8,