From 18b7b2c8066c2ff7ddaf559624d758daa2ce9f75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 28 Mar 2024 15:57:35 -0400 Subject: [PATCH] radeonsi: use simpler UINT fallback formats for draw-based resource_copy_region Reviewed-by: Pierre-Eric Pelloux-Prayer Part-of: --- src/gallium/drivers/radeonsi/si_blit.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index 1fb6dbcb374..7998f417fba 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -999,24 +999,19 @@ void si_gfx_copy_image(struct si_context *sctx, struct pipe_resource *dst, !util_blitter_is_copy_supported(sctx->blitter, dst, src)) { switch (ssrc->surface.bpe) { case 1: - dst_templ.format = PIPE_FORMAT_R8_UNORM; - src_templ.format = PIPE_FORMAT_R8_UNORM; + dst_templ.format = src_templ.format = PIPE_FORMAT_R8_UINT; break; case 2: - dst_templ.format = PIPE_FORMAT_R8G8_UNORM; - src_templ.format = PIPE_FORMAT_R8G8_UNORM; + dst_templ.format = src_templ.format = PIPE_FORMAT_R16_UINT; break; case 4: - dst_templ.format = PIPE_FORMAT_R8G8B8A8_UNORM; - src_templ.format = PIPE_FORMAT_R8G8B8A8_UNORM; + dst_templ.format = src_templ.format = PIPE_FORMAT_R32_UINT; break; case 8: - dst_templ.format = PIPE_FORMAT_R16G16B16A16_UINT; - src_templ.format = PIPE_FORMAT_R16G16B16A16_UINT; + dst_templ.format = src_templ.format = PIPE_FORMAT_R32G32_UINT; break; case 16: - dst_templ.format = PIPE_FORMAT_R32G32B32A32_UINT; - src_templ.format = PIPE_FORMAT_R32G32B32A32_UINT; + dst_templ.format = src_templ.format = PIPE_FORMAT_R32G32B32A32_UINT; break; default: fprintf(stderr, "Unhandled format %s with blocksize %u\n",