From 81de75b0d7cfb80efb56fb4850b2244121e14976 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Wed, 14 Jan 2026 16:38:24 +0000 Subject: [PATCH] ac/cmdbuf: disable ENABLE_PING_PONG_BIN_ORDER on GFX11.5 Might be a hardware bug. Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14240 Signed-off-by: Samuel Pitoiset (cherry picked from commit ae34627e54cf011c831fc8442c62db14d661eb04) Part-of: --- .pick_status.json | 2 +- src/amd/common/ac_cmdbuf.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 161f92a11af..95256f762d9 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -804,7 +804,7 @@ "description": "ac/cmdbuf: disable ENABLE_PING_PONG_BIN_ORDER on GFX11.5", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/amd/common/ac_cmdbuf.c b/src/amd/common/ac_cmdbuf.c index 257c573f76f..f2be44caedc 100644 --- a/src/amd/common/ac_cmdbuf.c +++ b/src/amd/common/ac_cmdbuf.c @@ -577,8 +577,10 @@ gfx10_init_graphics_preamble_state(const struct ac_preamble_state *state, S_028C48_MAX_ALLOC_COUNT(info->pbb_max_alloc_count - gfx10_one) | S_028C48_MAX_PRIM_PER_BATCH(1023)); if (info->gfx_level >= GFX11) { - ac_pm4_set_reg(pm4, R_028C54_PA_SC_BINNER_CNTL_2, - S_028C54_ENABLE_PING_PONG_BIN_ORDER(info->gfx_level >= GFX11_5)); + /* Ping pong binning order is supported on GFX11.5 but it seems to + * cause rendering issues. Might be a hardware bug. + */ + ac_pm4_set_reg(pm4, R_028C54_PA_SC_BINNER_CNTL_2, S_028C54_ENABLE_PING_PONG_BIN_ORDER(0)); } /* Break up a pixel wave if it contains deallocs for more than