turnip: update "fetchsize" value to match fdl6_layout changes
authorJonathan Marek <jonathan@marek.ca>
Tue, 12 May 2020 15:26:05 +0000 (11:26 -0400)
committerMarge Bot <eric+marge@anholt.net>
Tue, 12 May 2020 17:25:38 +0000 (17:25 +0000)
It seems this is actually a "minimum pitch" value. For example
TFETCH6_2_BYTE means a minimum pitch of 128 bytes for mipmap levels.

This fixes breakage with compressed formats. For example this test:

dEQP-VK.pipeline.sampler.view_type.2d.format.eac_r11_snorm_block.mipmap.linear.lod.equal_min_3_max_3

Fixes: a34b3fa198a4f ("freedreno/fdl: Align after dividing by block size")
Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5009>

src/freedreno/vulkan/tu_image.c

index 280263b0f3628a9250a84162a8a7bd3d85328374..45dff2df951e2761ab1616a10aa5b6486c210e14 100644 (file)
@@ -151,10 +151,7 @@ tu_image_create(VkDevice _device,
 enum a6xx_tex_fetchsize
 tu6_fetchsize(VkFormat format)
 {
-   if (vk_format_description(format)->layout == UTIL_FORMAT_LAYOUT_ASTC)
-      return TFETCH6_16_BYTE;
-
-   switch (vk_format_get_blocksize(format) / vk_format_get_blockwidth(format)) {
+   switch (vk_format_get_blocksize(format)) {
    case 1: return TFETCH6_1_BYTE;
    case 2: return TFETCH6_2_BYTE;
    case 4: return TFETCH6_4_BYTE;