mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 02:10:11 +01:00
ac/surface: Expose modifiers capable of DCC image stores first
These also have a higher compressed block size. Signed-off-by: Joshua Ashton <joshua@froggi.es> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13056>
This commit is contained in:
parent
f63ec0128c
commit
77e5f149eb
1 changed files with 13 additions and 13 deletions
|
|
@ -353,6 +353,19 @@ bool ac_get_supported_modifiers(const struct radeon_info *info,
|
|||
AMD_FMT_MOD_SET(DCC_INDEPENDENT_128B, 1) |
|
||||
AMD_FMT_MOD_SET(DCC_MAX_COMPRESSED_BLOCK, AMD_FMT_MOD_DCC_BLOCK_128B))
|
||||
|
||||
if (info->chip_class >= GFX10_3) {
|
||||
if (info->max_render_backends == 1) {
|
||||
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 |
|
||||
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))
|
||||
}
|
||||
|
||||
if (info->family == CHIP_NAVI12 || info->family == CHIP_NAVI14 || info->chip_class >= GFX10_3) {
|
||||
bool independent_128b = info->chip_class >= GFX10_3;
|
||||
|
||||
|
|
@ -361,12 +374,6 @@ 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 |
|
||||
|
|
@ -374,13 +381,6 @@ 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 |
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue