radv: update binning settings to work around GPU hangs
Ported from RadeonSI, but it seems PAL always use 1 for both parameters as well. This should fix random GPU hangs with small chips (eg. NAVI24, GFX1103), though all chips might have been affected. Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8046 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8597 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8683 Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22528>
This commit is contained in:
committed by
Marge Bot
parent
d99211b22c
commit
74ab940156
@@ -390,20 +390,9 @@ static void
|
||||
radv_get_binning_settings(const struct radv_physical_device *pdevice,
|
||||
struct radv_binning_settings *settings)
|
||||
{
|
||||
if (pdevice->rad_info.has_dedicated_vram && pdevice->rad_info.max_render_backends > 4) {
|
||||
settings->context_states_per_bin = 1;
|
||||
settings->persistent_states_per_bin = 1;
|
||||
} else {
|
||||
settings->context_states_per_bin = 3;
|
||||
/* 32 causes hangs for RAVEN. */
|
||||
settings->persistent_states_per_bin = 8;
|
||||
}
|
||||
|
||||
settings->context_states_per_bin = 1;
|
||||
settings->persistent_states_per_bin = 1;
|
||||
settings->fpovs_per_batch = 63;
|
||||
|
||||
/* The context states are affected by the scissor bug. */
|
||||
if (pdevice->rad_info.has_gfx9_scissor_bug)
|
||||
settings->context_states_per_bin = 1;
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user