kk: BCn Formats

Signed-off-by: Isaac Marovitz <isaacryu@icloud.com>
Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37967>
This commit is contained in:
Isaac Marovitz 2025-10-20 19:04:38 -04:00 committed by Marge Bot
parent a62f285607
commit fa6fa8c19e
3 changed files with 36 additions and 15 deletions

View file

@ -94,24 +94,24 @@ enum mtl_pixel_format {
/* Compressed formats. */
/* S3TC/DXT */
MTL_PIXEL_FORMAT_BC1_RGBA = 130,
MTL_PIXEL_FORMAT_BC1_RGBA_SRGB = 131,
MTL_PIXEL_FORMAT_BC2_RGBA = 132,
MTL_PIXEL_FORMAT_BC2_RGBA_SRGB = 133,
MTL_PIXEL_FORMAT_BC3_RGBA = 134,
MTL_PIXEL_FORMAT_BC3_RGBA_SRGB = 135,
MTL_PIXEL_FORMAT_DXT1_RGBA = 130,
MTL_PIXEL_FORMAT_DXT1_SRGBA = 131,
MTL_PIXEL_FORMAT_DXT3_RGBA = 132,
MTL_PIXEL_FORMAT_DXT3_SRGBA = 133,
MTL_PIXEL_FORMAT_DXT5_RGBA = 134,
MTL_PIXEL_FORMAT_DXT5_SRGBA = 135,
/* RGTC */
MTL_PIXEL_FORMAT_BC4_R_UNORM = 140,
MTL_PIXEL_FORMAT_BC4_R_SNORM = 141,
MTL_PIXEL_FORMAT_BC5_RG_UNORM = 142,
MTL_PIXEL_FORMAT_BC5_RG_SNORM = 143,
MTL_PIXEL_FORMAT_RGTC1_UNORM = 140,
MTL_PIXEL_FORMAT_RGTC1_SNORM = 141,
MTL_PIXEL_FORMAT_RGTC2_UNORM = 142,
MTL_PIXEL_FORMAT_RGTC2_SNORM = 143,
/* BPTC */
MTL_PIXEL_FORMAT_BC6H_RGB_FLOAT = 150,
MTL_PIXEL_FORMAT_BC6H_RGBU_FLOAT = 151,
MTL_PIXEL_FORMAT_BC7_RGBA_UNORM = 152,
MTL_PIXEL_FORMAT_BC7_RGBA_SRGB = 153,
MTL_PIXEL_FORMAT_BPTC_RGB_FLOAT = 150,
MTL_PIXEL_FORMAT_BPTC_RGB_UFLOAT = 151,
MTL_PIXEL_FORMAT_BPTC_RGBA_UNORM = 152,
MTL_PIXEL_FORMAT_BPTC_SRGBA = 153,
/* PVRTC */
MTL_PIXEL_FORMAT_PVRTC_RGB_2BPP = 160,

View file

@ -263,7 +263,27 @@ static const struct kk_va_format kk_vf_formats[] = {
MTL_FMT_NATIVE(ETC2_RGB8A1, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(ETC2_SRGB8A1, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
// Compressed PVRTC, HDR ASTC, BC TODO_KOSMICKRISP
// BC/DXT formats
MTL_FMT_NATIVE(DXT1_RGBA, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT1_SRGBA, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT3_RGBA, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT3_SRGBA, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT5_RGBA, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(DXT5_SRGBA, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
// RGTC formats
MTL_FMT_NATIVE(RGTC1_UNORM, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(RGTC1_SNORM, MTL_FMT_FS(64), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(RGTC2_UNORM, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(RGTC2_SNORM, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
// BPTC formats
MTL_FMT_NATIVE(BPTC_RGB_FLOAT, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(BPTC_RGB_UFLOAT, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(BPTC_RGBA_UNORM, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
MTL_FMT_NATIVE(BPTC_SRGBA, MTL_FMT_FS(128), MTL_FMT_TB_NONE),
// Compressed PVRTC, HDR ASTC, TODO_KOSMICKRISP
// YUV formats TODO_KOSMICKRISP
// Extended range and wide color formats TODO_KOSMICKRISP

View file

@ -265,6 +265,7 @@ kk_get_device_features(
.samplerYcbcrConversion = true,
.textureCompressionETC2 = true,
.textureCompressionASTC_LDR = true,
.textureCompressionBC = true,
/* VK_EXT_mutable_descriptor_type */
.mutableDescriptorType = true,