radeonsi: implement fw based mcbp
authorPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Fri, 17 Mar 2023 13:44:42 +0000 (14:44 +0100)
committerMarge Bot <emma+marge@anholt.net>
Tue, 25 Apr 2023 06:47:11 +0000 (06:47 +0000)
commit65b40d0b7e9edd85aefd3ae17c73ac7f84d0330f
tree47bc28e1d6877fc30f322c375c3a9900f3efaabf
parent8fe39e999767fc797e15f910d25c342a4c92a779
radeonsi: implement fw based mcbp

Some chips support firmware based mcbp. If supported this means
radeonsi needs to allocate 3 buffers and pass them to the firmware.

From there, the firmware will handle mcbp and register shadowing
on its own so we don't need to insert LOAD packet in the preamble.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21986>
src/amd/common/ac_shadowed_regs.c
src/gallium/drivers/radeonsi/si_cp_reg_shadowing.c
src/gallium/drivers/radeonsi/si_descriptors.c
src/gallium/drivers/radeonsi/si_gfx_cs.c
src/gallium/drivers/radeonsi/si_pipe.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_state_draw.cpp
src/gallium/drivers/radeonsi/si_state_shaders.cpp
src/gallium/include/winsys/radeon_winsys.h
src/gallium/winsys/amdgpu/drm/amdgpu_cs.c
src/gallium/winsys/amdgpu/drm/amdgpu_cs.h