diff --git a/src/imagination/vulkan/pvr_cmd_buffer.c b/src/imagination/vulkan/pvr_cmd_buffer.c index f055fc36347..845ad4377a0 100644 --- a/src/imagination/vulkan/pvr_cmd_buffer.c +++ b/src/imagination/vulkan/pvr_cmd_buffer.c @@ -1646,6 +1646,7 @@ static VkResult pvr_sub_cmd_gfx_job_init(const struct pvr_device_info *dev_info, break; case VK_FORMAT_D24_UNORM_S8_UINT: + case VK_FORMAT_X8_D24_UNORM_PACK32: job->ds.zls_format = ROGUE_CR_ZLS_FORMAT_TYPE_24BITINT; break; diff --git a/src/imagination/vulkan/pvr_formats.c b/src/imagination/vulkan/pvr_formats.c index d09b9015b48..09414cb980d 100644 --- a/src/imagination/vulkan/pvr_formats.c +++ b/src/imagination/vulkan/pvr_formats.c @@ -199,6 +199,8 @@ static const struct pvr_format pvr_format_table[] = { FORMAT(E5B9G9R9_UFLOAT_PACK32, SE9995, SE9995, INVALID), /* VK_FORMAT_D16_UNORM = 124. */ FORMAT_DEPTH_STENCIL(D16_UNORM, U16, U16, INVALID), + /* VK_FORMAT_X8_D24_UNORM_PACK32 = 125. */ + FORMAT_DEPTH_STENCIL(X8_D24_UNORM_PACK32, X8U24, X8U24, INVALID), /* VK_FORMAT_D32_SFLOAT = 126. */ FORMAT_DEPTH_STENCIL(D32_SFLOAT, F32, F32, INVALID), /* VK_FORMAT_S8_UINT = 127. */ @@ -262,7 +264,9 @@ static const struct pvr_tex_format_table_entry { /* 16 */ FORMAT(S16S16, R16G16_SINT, R16G16_SNORM), /* 17 */ FORMAT(F16F16, NONE, R16G16_FLOAT), /* 18 */ FORMAT(F32, NONE, R32_FLOAT), + /* 21 */ FORMAT(X8U24, NONE, Z24X8_UNORM), /* 22 */ FORMAT(ST8U24, Z24_UNORM_S8_UINT, Z24_UNORM_S8_UINT), + /* 23 */ FORMAT(U8X24, X24S8_UINT, NONE), /* 24 */ FORMAT(U32, R32_UINT, R32_UNORM), /* 25 */ FORMAT(S32, R32_SINT, R32_SNORM), /* 26 */ FORMAT(SE9995, NONE, R9G9B9E5_FLOAT), @@ -272,6 +276,8 @@ static const struct pvr_tex_format_table_entry { /* 34 */ FORMAT(F32F32, NONE, R32G32_FLOAT), /* 35 */ FORMAT(U32U32, R32G32_UINT, R32G32_UNORM), /* 36 */ FORMAT(S32S32, R32G32_SINT, R32G32_SNORM), + /* 38 */ FORMAT(X24X8F32, NONE, Z32_FLOAT_S8X24_UINT), + /* 39 */ FORMAT(X24G8X32, X32_S8X24_UINT, NONE), /* 61 */ FORMAT(F32F32F32F32, NONE, R32G32B32A32_FLOAT), /* 62 */ FORMAT(U32U32U32U32, R32G32B32A32_UINT, R32G32B32A32_UNORM), /* 63 */ FORMAT(S32S32S32S32, R32G32B32A32_SINT, R32G32B32A32_SNORM),