util: Rename PIPE_FORMAT_G8_B8_R8_420_UNORM.
authorEmma Anholt <emma@anholt.net>
Wed, 20 Oct 2021 22:34:03 +0000 (15:34 -0700)
committerMarge Bot <emma+marge@anholt.net>
Thu, 11 Nov 2021 00:10:57 +0000 (00:10 +0000)
The only user, turnip, was actually treating it as this layout, matching
vulkan's specification of how the planes map to RGB values.  (Y=G means
that Cb=B and Cr=R).

Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13443>

src/freedreno/fdl/fd6_format_table.c
src/freedreno/fdl/fd6_view.c
src/freedreno/vulkan/tu_clear_blit.c
src/freedreno/vulkan/tu_formats.c
src/gallium/include/pipe/p_format.h
src/util/format/u_format.csv
src/util/format/u_format_table.py

index aa1c45c..48144ed 100644 (file)
@@ -363,7 +363,7 @@ static const struct fd6_format formats[PIPE_FORMAT_COUNT] = {
    _T_(G8R8_B8R8_UNORM, G8R8B8R8_422_UNORM, WZYX), /* UYVY */
 
    _T_(R8_G8B8_420_UNORM, R8_G8B8_2PLANE_420_UNORM, WZYX),
-   _T_(R8_G8_B8_420_UNORM, R8_G8_B8_3PLANE_420_UNORM, WZYX),
+   _T_(G8_B8_R8_420_UNORM, R8_G8_B8_3PLANE_420_UNORM, WZYX),
 };
 /* clang-format on */
 
index 8b61108..41790f2 100644 (file)
@@ -62,7 +62,7 @@ fdl6_texswiz(const struct fdl_view_args *args, bool has_z24uint_s8uint)
    case PIPE_FORMAT_R8G8_R8B8_UNORM:
    case PIPE_FORMAT_G8R8_B8R8_UNORM:
    case PIPE_FORMAT_R8_G8B8_420_UNORM:
-   case PIPE_FORMAT_R8_G8_B8_420_UNORM:
+   case PIPE_FORMAT_G8_B8_R8_420_UNORM:
       format_swiz[0] = PIPE_SWIZZLE_Z;
       format_swiz[1] = PIPE_SWIZZLE_X;
       format_swiz[2] = PIPE_SWIZZLE_Y;
@@ -208,7 +208,7 @@ fdl6_view_init(struct fdl6_view *view, const struct fdl_layout **layouts,
       view->descriptor[3] |= A6XX_TEX_CONST_3_TILE_ALL;
 
    if (args->format == PIPE_FORMAT_R8_G8B8_420_UNORM ||
-       args->format == PIPE_FORMAT_R8_G8_B8_420_UNORM) {
+       args->format == PIPE_FORMAT_G8_B8_R8_420_UNORM) {
       /* chroma offset re-uses MIPLVLS bits */
       assert(args->level_count == 1);
       if (args->chroma_offsets[0] == FDL_CHROMA_LOCATION_MIDPOINT)
index 2e1f10a..540027c 100644 (file)
@@ -1189,7 +1189,7 @@ copy_format(VkFormat vk_format, VkImageAspectFlags aspect_mask, bool copy_buffer
          return PIPE_FORMAT_R8G8_UNORM;
       else
          return PIPE_FORMAT_Y8_UNORM;
-   case PIPE_FORMAT_R8_G8_B8_420_UNORM:
+   case PIPE_FORMAT_G8_B8_R8_420_UNORM:
       return PIPE_FORMAT_R8_UNORM;
 
    case PIPE_FORMAT_Z24_UNORM_S8_UINT:
index a84e061..75fed40 100644 (file)
@@ -71,7 +71,7 @@ tu_vk_format_to_pipe_format(VkFormat vk_format)
    case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM:
       return PIPE_FORMAT_R8_G8B8_420_UNORM;
    case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM:
-      return PIPE_FORMAT_R8_G8_B8_420_UNORM;
+      return PIPE_FORMAT_G8_B8_R8_420_UNORM;
    default:
       return vk_format_to_pipe_format(vk_format);
    }
index fde4dd2..a46212b 100644 (file)
@@ -504,7 +504,7 @@ enum pipe_format {
    PIPE_FORMAT_XYUV,
 
    PIPE_FORMAT_R8_G8B8_420_UNORM,
-   PIPE_FORMAT_R8_G8_B8_420_UNORM,
+   PIPE_FORMAT_G8_B8_R8_420_UNORM,
    PIPE_FORMAT_Y8_UNORM,
 
    PIPE_FORMAT_B8G8R8X8_SNORM,
index 7c505f5..06696ab 100644 (file)
@@ -400,7 +400,7 @@ PIPE_FORMAT_NV21                  , planar2, 1, 1, 1,     ,     ,     ,     , xy
 # RGB version of NV12 and YV12 for hardware that supports sampling from
 # multiplane textures but needs color-space conversion in the shader.
 PIPE_FORMAT_R8_G8B8_420_UNORM     , planar2, 1, 1, 1,  un8,     ,     ,     , xyzw, rgb
-PIPE_FORMAT_R8_G8_B8_420_UNORM    , planar3, 1, 1, 1,  un8,     ,     ,     , xyzw, rgb
+PIPE_FORMAT_G8_B8_R8_420_UNORM    , planar3, 1, 1, 1,  un8,     ,     ,     , xyzw, rgb
 
 # While most of Mesa uses R8 for Y, U, and V planes, freedreno requires distinguishing
 # between tiled Y8 data and tiled R8 data.
index 32b45fe..17f52b9 100644 (file)
@@ -109,7 +109,7 @@ def has_access(format):
         'y16_u16v16_422_unorm',
         'y16_u16_v16_444_unorm',
         'r8_g8b8_420_unorm',
-        'r8_g8_b8_420_unorm',
+        'g8_b8_r8_420_unorm',
         'y8_unorm',
     ]
     if format.short_name() in noaccess_formats: