panfrost: Add some missing BGRA formats
authorAlyssa Rosenzweig <alyssa@collabora.com>
Sat, 5 Jun 2021 00:23:33 +0000 (20:23 -0400)
committerMarge Bot <eric+marge@anholt.net>
Thu, 10 Jun 2021 18:06:10 +0000 (18:06 +0000)
Fixes:

KHR-GLES3.copy_tex_image_conversions.forbidden.*
KHR-GLES3.packed_pixels.pbo_rectangle.rgb5_a1
KHR-GLES3.packed_pixels.pbo_rectangle.rgba
KHR-GLES3.packed_pixels.pbo_rectangle.rgba4
KHR-GLES3.packed_pixels.pbo_rectangle.rgba8
KHR-GLES3.packed_pixels.rectangle.rgb5_a1
KHR-GLES3.packed_pixels.rectangle.rgba
KHR-GLES3.packed_pixels.rectangle.rgba4
KHR-GLES3.packed_pixels.rectangle.rgba8
KHR-GLES3.packed_pixels.varied_rectangle.rgb5_a1
KHR-GLES3.packed_pixels.varied_rectangle.rgba
KHR-GLES3.packed_pixels.varied_rectangle.rgba4
KHR-GLES3.packed_pixels.varied_rectangle.rgba8

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11123>

src/panfrost/lib/pan_format.c

index fec787b..299d7d8 100644 (file)
@@ -204,8 +204,10 @@ const struct panfrost_format panfrost_pipe_format_v6[PIPE_FORMAT_COUNT] = {
         PAN_V6(ASTC_12x12_SRGB,         ASTC_2D_LDR,     RGBA, S, _T__),
         PAN_V6(R5G6B5_UNORM,            RGB565,          RGB1, L, VTR_),
         PAN_V6(B5G6R5_UNORM,            RGB565,          BGR1, L, VTR_),
+        PAN_V6(R5G5B5X1_UNORM,          RGB5_A1_UNORM,   RGB1, L, VT__),
         PAN_V6(B5G5R5X1_UNORM,          RGB5_A1_UNORM,   BGR1, L, VT__),
         PAN_V6(R5G5B5A1_UNORM,          RGB5_A1_UNORM,   RGBA, L, VTR_),
+        PAN_V6(B5G5R5A1_UNORM,          RGB5_A1_UNORM,   BGRA, L, VTR_),
         PAN_V6(R10G10B10X2_UNORM,       RGB10_A2_UNORM,  RGB1, L, VTR_),
         PAN_V6(B10G10R10X2_UNORM,       RGB10_A2_UNORM,  BGR1, L, VTR_),
         PAN_V6(R10G10B10A2_UNORM,       RGB10_A2_UNORM,  RGBA, L, VTR_),
@@ -328,6 +330,7 @@ const struct panfrost_format panfrost_pipe_format_v6[PIPE_FORMAT_COUNT] = {
         PAN_V6(R16G16B16_UNORM,         RGB16_UNORM,     RGB1, L, VT__),
         PAN_V6(R32G32B32_UNORM,         RGB32_UNORM,     RGB1, L, VT__),
         PAN_V6(R4G4B4A4_UNORM,          RGBA4_UNORM,     RGBA, L, VTR_),
+        PAN_V6(B4G4R4A4_UNORM,          RGBA4_UNORM,     BGRA, L, VTR_),
         PAN_V6(R16G16B16A16_UNORM,      RGBA16_UNORM,    RGBA, L, VT__),
         PAN_V6(R32G32B32A32_UNORM,      RGBA32_UNORM,    RGBA, L, VT__),
         PAN_V6(B8G8R8A8_UNORM,          RGBA8_UNORM,     BGRA, L, VTR_),
@@ -456,8 +459,10 @@ const struct panfrost_format panfrost_pipe_format_v7[PIPE_FORMAT_COUNT] = {
         PAN_V7(ASTC_12x12_SRGB,         ASTC_2D_LDR,     RGBA, S, _T__),
         PAN_V7(R5G6B5_UNORM,            RGB565,          RGB1, L, VTR_),
         PAN_V7(B5G6R5_UNORM,            RGB565,          BGR1, L, VTR_),
+        PAN_V7(R5G5B5X1_UNORM,          RGB5_A1_UNORM,   RGB1, L, VT__),
         PAN_V7(B5G5R5X1_UNORM,          RGB5_A1_UNORM,   BGR1, L, VT__),
         PAN_V7(R5G5B5A1_UNORM,          RGB5_A1_UNORM,   RGBA, L, VTR_),
+        PAN_V7(B5G5R5A1_UNORM,          RGB5_A1_UNORM,   BGRA, L, VTR_),
         PAN_V7(R10G10B10X2_UNORM,       RGB10_A2_UNORM,  RGB1, L, VTR_),
         PAN_V7(B10G10R10X2_UNORM,       RGB10_A2_UNORM,  BGR1, L, VTR_),
         PAN_V7(R10G10B10A2_UNORM,       RGB10_A2_UNORM,  RGBA, L, VTR_),
@@ -580,6 +585,7 @@ const struct panfrost_format panfrost_pipe_format_v7[PIPE_FORMAT_COUNT] = {
         PAN_V7(R16G16B16_UNORM,         RGB16_UNORM,     RGB1, L, VTR_),
         PAN_V7(R32G32B32_UNORM,         RGB32_UNORM,     RGB1, L, VTR_),
         PAN_V7(R4G4B4A4_UNORM,          RGBA4_UNORM,     RGBA, L, VTR_),
+        PAN_V7(B4G4R4A4_UNORM,          RGBA4_UNORM,     BGRA, L, VTR_),
         PAN_V7(R16G16B16A16_UNORM,      RGBA16_UNORM,    RGBA, L, VTR_),
         PAN_V7(R32G32B32A32_UNORM,      RGBA32_UNORM,    RGBA, L, VTR_),
         PAN_V7(B8G8R8A8_UNORM,          RGBA8_UNORM,     BGRA, L, VTR_),