radv: Do not overwrite VRS rates when doing fast clears

Fixes a whole bunch of VRS tests on navi24.

cc: mesa-stable

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32318>
This commit is contained in:
Konstantin
2024-11-23 17:57:08 +01:00
committed by Marge Bot
parent 1a3f6c586c
commit 8197d744f5

View File

@@ -820,6 +820,11 @@ radv_get_htile_mask(struct radv_cmd_buffer *cmd_buffer, const struct radv_image
if (aspects & VK_IMAGE_ASPECT_STENCIL_BIT)
mask |= 0x000003f0;
if (radv_image_has_vrs_htile(device, image)) {
mask &= ~(0x3 << 6); /* VRS X-rate */
mask &= ~(0x3 << 10); /* VRS Y-rate */
}
if (cmd_buffer->qf == RADV_QUEUE_TRANSFER) {
/* Clear both aspects on SDMA, it's not ideal but there is no other way to initialize the
* HTILE buffer.