radeonsi/gfx11: fix programming of PA_SC_BINNER_CNTL_1.MAX_ALLOC_COUNT

Fixes: 25a66477d0 - radeonsi/gfx11: register changes

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27943>
(cherry picked from commit 7d3a414662)
This commit is contained in:
Marek Olšák 2024-02-27 17:48:22 -05:00 committed by Eric Engestrom
parent d5b22fa737
commit 03bc6156a3
2 changed files with 4 additions and 2 deletions

View file

@ -1584,7 +1584,7 @@
"description": "radeonsi/gfx11: fix programming of PA_SC_BINNER_CNTL_1.MAX_ALLOC_COUNT",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "25a66477d0268181121c0436f62b2100b72df068",
"notes": null

View file

@ -6445,8 +6445,10 @@ static void gfx10_init_gfx_preamble_state(struct si_context *sctx)
S_028B50_DONUT_SPLIT_GFX9(24) |
S_028B50_TRAP_SPLIT(6));
/* GFX11+ shouldn't subtract 1 from pbb_max_alloc_count. */
unsigned gfx10_one = sctx->gfx_level < GFX11;
si_pm4_set_reg(pm4, R_028C48_PA_SC_BINNER_CNTL_1,
S_028C48_MAX_ALLOC_COUNT(sscreen->info.pbb_max_alloc_count - 1) |
S_028C48_MAX_ALLOC_COUNT(sscreen->info.pbb_max_alloc_count - gfx10_one) |
S_028C48_MAX_PRIM_PER_BATCH(1023));
if (sctx->gfx_level >= GFX11_5)