From: Jason Ekstrand Date: Fri, 6 Jan 2017 20:50:47 +0000 (-0800) Subject: anv/formats: Use the real format for B4G4R4A4_UNORM_PACK16 on gen8 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2d7bed6158a1f119411d4e9f34beb7846065ae93;p=mesa.git anv/formats: Use the real format for B4G4R4A4_UNORM_PACK16 on gen8 Because border color is handled pre-swizzle, when we move the alpha channel around in the format, the OPAQUE_BLACK border colors don't work correctly on B4G4R4A4_UNORM_PACK16 with the hack. This fixes the following Vulkan CTS tests on Broadwell: dEQP-VK.pipeline.sampler.view_type.2d_array.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black dEQP-VK.pipeline.sampler.view_type.1d_array.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black dEQP-VK.pipeline.sampler.view_type.2d.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black dEQP-VK.pipeline.sampler.view_type.1d.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black dEQP-VK.pipeline.sampler.view_type.3d.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black Reviewed-by: Kenneth Graunke Cc: "13.0" --- diff --git a/src/intel/vulkan/anv_formats.c b/src/intel/vulkan/anv_formats.c index 9ef998cfff2..1ee4d0fa191 100644 --- a/src/intel/vulkan/anv_formats.c +++ b/src/intel/vulkan/anv_formats.c @@ -295,10 +295,10 @@ anv_get_format(const struct gen_device_info *devinfo, VkFormat vk_format, } } - /* The B4G4R4A4 format isn't available prior to Sky Lake so we have to fall + /* The B4G4R4A4 format isn't available prior to Broadwell so we have to fall * back to a format with a more complex swizzle. */ - if (vk_format == VK_FORMAT_B4G4R4A4_UNORM_PACK16 && devinfo->gen < 9) { + if (vk_format == VK_FORMAT_B4G4R4A4_UNORM_PACK16 && devinfo->gen < 8) { return (struct anv_format) { .isl_format = ISL_FORMAT_B4G4R4A4_UNORM, .swizzle = ISL_SWIZZLE(GREEN, RED, ALPHA, BLUE),