[Mesa-dev] [PATCH 0/2] Fixes for B4G4R4A4 vulkan tests in Haswell

Juan A. Suarez Romero jasuarez at igalia.com
Wed Feb 8 12:31:53 UTC 2017

Pre-Broadwell devices does not support natively Vulkan B4G4R4A4, so we just
fallback to another format using a different swizzle.

But this is crashing a couple of tests in Vulkan CTS due the following:

- We assert that alpha component will map to "one" or "alpha". But our new
  swizzle maps it to "blue". So let's consider this mapping (patch 01/02).

- In ISL, we check that RENDER_SURFACE_STATE' channel selections for red, green
  and blue can only be a permutation of this channels (RGB, RBG, GRB, GBR, BRG,
  BGR). But our new swizzle is mapping "blue" to "alpha", so we have
  GRA. According to PRM, seems this check is not required for Haswell (at least,
  didn't found it in Haswell PRM). So let's run it for gen>=8 (patch 02/02).

With both patches, we fix the following tests in Haswell:

- dEQP-VK.api.image_clearing.clear_color_image.1d_b4g4r4a4_unorm_pack16
- dEQP-VK.api.image_clearing.clear_color_image.2d_b4g4r4a4_unorm_pack16
- dEQP-VK.api.image_clearing.clear_color_image.3d_b4g4r4a4_unorm_pack16

*** BLURB HERE ***

Juan A. Suarez Romero (2):
  anv: allow blue in alpha component in swizzle for render
  isl: apply RENDER_SURFACE_STATE::Shader Channel assertions to gen>=8

 src/intel/isl/isl_surface_state.c |  5 ++++-
 src/intel/vulkan/anv_private.h    | 14 ++++++++++----
 2 files changed, 14 insertions(+), 5 deletions(-)


More information about the mesa-dev mailing list