On Fri, Apr 11, 2025 at 12:28 PM Srinivasan Shanmugam
<srinivasan.shanmu...@amd.com> wrote:
>
> This commit introduces the PACKET3_RUN_CLEANER_SHADER_9_0 definition,
> which is a command packet utilized to instruct the GPU to execute the
> cleaner shader for the GFX9.0 graphics architecture.
>
> The cleaner shader is a piece of GPU code that is responsible for
> clearing or initializing essential GPU resources, such as Local Data
> Share (LDS), Vector General Purpose Registers (VGPRs), and Scalar
> General Purpose Registers (SGPRs). Properly clearing these resources  is
> vital for ensuring data isolation and security between different
> workloads executed on the GPU.
>
> When the GPU receives this packet, it fetches and runs the cleaner
> shader instructions from the specified location in the packet.  Thus by
> preventing data leaks and ensuring that previous job states do not
> interfere with subsequent workloads.
>
> Cc: Christian König <christian.koe...@amd.com>
> Cc: Alex Deucher <alexander.deuc...@amd.com>
> Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmu...@amd.com>

Acked-by: Alex Deucher <alexander.deuc...@amd.com>

> ---
>  drivers/gpu/drm/amd/amdgpu/soc15d.h | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/soc15d.h 
> b/drivers/gpu/drm/amd/amdgpu/soc15d.h
> index a5000c171c02..cf93fa477674 100644
> --- a/drivers/gpu/drm/amd/amdgpu/soc15d.h
> +++ b/drivers/gpu/drm/amd/amdgpu/soc15d.h
> @@ -552,6 +552,11 @@
>  #              define PACKET3_QUERY_STATUS_DOORBELL_OFFSET(x)  ((x) << 2)
>  #              define PACKET3_QUERY_STATUS_ENG_SEL(x)          ((x) << 25)
>
> +#define PACKET3_RUN_CLEANER_SHADER_9_0                      0xD7
> +/* 1. header
> + * 2. RESERVED [31:0]
> + */
> +
>  #define PACKET3_RUN_CLEANER_SHADER                      0xD2
>  /* 1. header
>   * 2. RESERVED [31:0]
> --
> 2.34.1
>

Reply via email to