pan/lower_fb: Add support for B10G10R10A2_UINT variants
authorBoris Brezillon <boris.brezillon@collabora.com>
Mon, 6 Sep 2021 12:19:28 +0000 (14:19 +0200)
committerMarge Bot <eric+marge@anholt.net>
Tue, 28 Sep 2021 18:59:46 +0000 (18:59 +0000)
The components are re-ordered before packing/unpacking, so nothing to
do here except adding the missing case in the switch statements.

Needed for panvk bgr10a2_uint blits.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12793>

src/panfrost/util/pan_lower_framebuffer.c

index 0731866..da906c2 100644 (file)
@@ -426,6 +426,7 @@ pan_unpack(nir_builder *b,
 
         switch (desc->format) {
         case PIPE_FORMAT_R10G10B10A2_UINT:
+        case PIPE_FORMAT_B10G10R10A2_UINT:
                 return pan_unpack_uint_1010102(b, packed);
         case PIPE_FORMAT_R11G11B10_FLOAT:
                 return pan_unpack_r11g11b10(b, packed);
@@ -489,6 +490,7 @@ pan_pack(nir_builder *b,
         case PIPE_FORMAT_B10G10R10A2_UNORM:
                 return pan_pack_unorm_1010102(b, unpacked);
         case PIPE_FORMAT_R10G10B10A2_UINT:
+        case PIPE_FORMAT_B10G10R10A2_UINT:
                 return pan_pack_uint_1010102(b, unpacked);
         case PIPE_FORMAT_R11G11B10_FLOAT:
                 return pan_pack_r11g11b10(b, unpacked);