radv: Enable NGG wave ID for mesh shader scratch ring.
This wave ID is used to address the scratch ring, so it should be
enabled when the scratch ring is used.
Note: the naming is confusing here, as this ID is actually the same
accross the whole workgroup. (It would be more appropriate to call
it workgroup ID instead.)
Fixes: 0280b526d5
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17022>
This commit is contained in:
@@ -6513,6 +6513,9 @@ radv_pipeline_emit_vgt_shader_config(struct radeon_cmdbuf *ctx_cs,
|
||||
} else if (radv_pipeline_has_stage(pipeline, MESA_SHADER_MESH)) {
|
||||
assert(!radv_pipeline_has_ngg_passthrough(pipeline));
|
||||
stages |= S_028B54_GS_EN(1) | S_028B54_GS_FAST_LAUNCH(1);
|
||||
|
||||
if (pipeline->base.shaders[MESA_SHADER_MESH]->info.ms.needs_ms_scratch_ring)
|
||||
stages |= S_028B54_NGG_WAVE_ID_EN(1);
|
||||
} else if (radv_pipeline_has_ngg(pipeline)) {
|
||||
stages |= S_028B54_ES_EN(V_028B54_ES_STAGE_REAL);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user