On Mon, Mar 20, 2023 at 8:30 PM Marek Olšák <maraeo@xxxxxxxxx> wrote: > > > On Mon, Mar 20, 2023 at 1:38 PM Alex Deucher <alexander.deucher@xxxxxxx> wrote: >> >> Add UAPI to query the GFX shadow buffer requirements >> for preemption on GFX11. UMDs need to specify the shadow >> areas for preemption. >> >> Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> >> --- >> include/uapi/drm/amdgpu_drm.h | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h >> index 3d9474af6566..19a806145371 100644 >> --- a/include/uapi/drm/amdgpu_drm.h >> +++ b/include/uapi/drm/amdgpu_drm.h >> @@ -886,6 +886,7 @@ struct drm_amdgpu_cs_chunk_cp_gfx_shadow { >> #define AMDGPU_INFO_VIDEO_CAPS_DECODE 0 >> /* Subquery id: Encode */ >> #define AMDGPU_INFO_VIDEO_CAPS_ENCODE 1 >> +#define AMDGPU_INFO_CP_GFX_SHADOW_SIZE 0x22 >> >> #define AMDGPU_INFO_MMR_SE_INDEX_SHIFT 0 >> #define AMDGPU_INFO_MMR_SE_INDEX_MASK 0xff >> @@ -1203,6 +1204,15 @@ struct drm_amdgpu_info_video_caps { >> struct drm_amdgpu_info_video_codec_info codec_info[AMDGPU_INFO_VIDEO_CAPS_CODEC_IDX_COUNT]; >> }; >> >> +struct drm_amdgpu_info_cp_gfx_shadow_size { >> + __u32 shadow_size; >> + __u32 shadow_alignment; >> + __u32 csa_size; >> + __u32 csa_alignment; >> + __u32 gds_size; >> + __u32 gds_alignment; > > > Can you document the fields? What is CSA? Also, why is GDS there when the hw deprecated it and replaced it with GDS registers? Will add documentation. For reference: CSA (Context Save Area) - used as a scratch area for FW for saving various things Shadow - stores the pipeline state GDS backup - stores the GDS state used by the pipeline. I'm not sure if this is registers or the old GDS memory. Presumably the former. Alex > > Thanks, > Marek