Module: Mesa
Branch: main
Commit: fd08758bb15c51aea0367271fce4f73af109f57d
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=fd08758bb15c51aea0367271fce4f73af109f57d

Author: Joshua Ashton <[email protected]>
Date:   Fri Sep 10 22:34:35 2021 +0100

ac/surface: Add modifiers capable of DCC image stores

Signed-off-by: Joshua Ashton <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Reviewed-by: Bas Nieuwenhhuizen <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12862>

---

 src/amd/common/ac_surface.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/amd/common/ac_surface.c b/src/amd/common/ac_surface.c
index c85f41bcb45..c39b9a26de2 100644
--- a/src/amd/common/ac_surface.c
+++ b/src/amd/common/ac_surface.c
@@ -310,6 +310,12 @@ bool ac_get_supported_modifiers(const struct radeon_info 
*info,
                     AMD_FMT_MOD_SET(DCC_INDEPENDENT_64B, 1) |
                     AMD_FMT_MOD_SET(DCC_INDEPENDENT_128B, independent_128b) |
                     AMD_FMT_MOD_SET(DCC_MAX_COMPRESSED_BLOCK, 
AMD_FMT_MOD_DCC_BLOCK_64B))
+
+            if (info->chip_class >= GFX10_3) {
+               ADD_MOD(AMD_FMT_MOD | common_dcc |
+                       AMD_FMT_MOD_SET(DCC_INDEPENDENT_128B, 1) |
+                       AMD_FMT_MOD_SET(DCC_MAX_COMPRESSED_BLOCK, 
AMD_FMT_MOD_DCC_BLOCK_128B))
+            }
          }
 
          ADD_MOD(AMD_FMT_MOD | common_dcc |
@@ -317,6 +323,13 @@ bool ac_get_supported_modifiers(const struct radeon_info 
*info,
                  AMD_FMT_MOD_SET(DCC_INDEPENDENT_64B, 1) |
                  AMD_FMT_MOD_SET(DCC_INDEPENDENT_128B, independent_128b) |
                  AMD_FMT_MOD_SET(DCC_MAX_COMPRESSED_BLOCK, 
AMD_FMT_MOD_DCC_BLOCK_64B))
+
+         if (info->chip_class >= GFX10_3) {
+            ADD_MOD(AMD_FMT_MOD | common_dcc |
+                    AMD_FMT_MOD_SET(DCC_RETILE, 1) |
+                    AMD_FMT_MOD_SET(DCC_INDEPENDENT_128B, 1) |
+                    AMD_FMT_MOD_SET(DCC_MAX_COMPRESSED_BLOCK, 
AMD_FMT_MOD_DCC_BLOCK_128B))
+         }
       }
 
       ADD_MOD(AMD_FMT_MOD |

Reply via email to