radv: only set ALPHA_IS_ON_MSB if the image has DCC on GFX6-9

This is technically incorrect to only check meta_offset which might be
non-zero for CMASK/FMASK but this applies to DCC only.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308>
This commit is contained in:
Samuel Pitoiset
2024-05-17 14:48:39 +02:00
parent 3e8b2fe053
commit 68c4d26691

View File

@@ -325,7 +325,8 @@ gfx6_make_texture_descriptor(struct radv_device *device, struct radv_image *imag
state[4] |= S_008F20_DEPTH(depth - 1);
state[5] |= S_008F24_LAST_ARRAY(last_layer);
}
if (!(image->planes[0].surface.flags & RADEON_SURF_Z_OR_SBUFFER) && image->planes[0].surface.meta_offset) {
if (radv_dcc_enabled(image, first_level)) {
state[6] = S_008F28_ALPHA_IS_ON_MSB(vi_alpha_is_on_msb(device, vk_format));
} else {
if (instance->drirc.disable_aniso_single_level) {