turnip: don't set unused BLIT_DST_INFO bits for GMEM clear
authorJonathan Marek <jonathan@marek.ca>
Fri, 22 Nov 2019 23:12:11 +0000 (18:12 -0500)
committerJonathan Marek <jonathan@marek.ca>
Wed, 4 Dec 2019 19:39:06 +0000 (14:39 -0500)
These bits are ignored when clearing so don't bother setting them.

Note: MSAA samples when clearing comes from other registers (tu6_emit_msaa)

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Reviewed-by: Eric Anholt <eric@anholt.net>
src/freedreno/vulkan/tu_cmd_buffer.c

index 9e69b918fe94c73ee1c7abc932353048e9578665..6ad18f18aa77f352648c821de14a6fbe7cc5fb3c 100644 (file)
@@ -664,14 +664,9 @@ tu6_emit_blit_clear(struct tu_cmd_buffer *cmd,
    const struct tu_native_format *format =
       tu6_get_native_format(iview->vk_format);
    assert(format && format->rb >= 0);
-   /* must be WZYX; other values are ignored */
-   const enum a3xx_color_swap swap = WZYX;
 
    tu_cs_emit_pkt4(cs, REG_A6XX_RB_BLIT_DST_INFO, 1);
-   tu_cs_emit(cs, A6XX_RB_BLIT_DST_INFO_TILE_MODE(TILE6_LINEAR) |
-                     A6XX_RB_BLIT_DST_INFO_SAMPLES(tu_msaa_samples(iview->image->samples)) |
-                     A6XX_RB_BLIT_DST_INFO_COLOR_FORMAT(format->rb) |
-                     A6XX_RB_BLIT_DST_INFO_COLOR_SWAP(swap));
+   tu_cs_emit(cs, A6XX_RB_BLIT_DST_INFO_COLOR_FORMAT(format->rb));
 
    tu_cs_emit_pkt4(cs, REG_A6XX_RB_BLIT_INFO, 1);
    tu_cs_emit(cs, A6XX_RB_BLIT_INFO_GMEM | A6XX_RB_BLIT_INFO_CLEAR_MASK(0xf));
@@ -682,7 +677,6 @@ tu6_emit_blit_clear(struct tu_cmd_buffer *cmd,
    tu_cs_emit_pkt4(cs, REG_A6XX_RB_UNKNOWN_88D0, 1);
    tu_cs_emit(cs, 0);
 
-   /* pack clear_value into WZYX order */
    uint32_t clear_vals[4] = { 0 };
    tu_pack_clear_value(clear_value, iview->vk_format, clear_vals);