diff options
author | Lang Yu <Lang.Yu@amd.com> | 2023-06-19 08:58:32 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2023-08-31 17:14:21 -0400 |
commit | 4f94903332c187ffcea1d2f69c494ce677b94781 (patch) | |
tree | 98ad9a3aa9fc4ba490786dcfdb64afd0b2f1146b /drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h | |
parent | 40748f9a0a33da4c26ed25b95fcd488d3cafd833 (diff) |
drm/amdgpu: add PSP loading support for UMSCH
Add front door loading support.
Signed-off-by: Lang Yu <Lang.Yu@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Veerabadhran Gopalakrishnan <Veerabadhran.Gopalakrishnan@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h index 660150c630e7..d83fdf2da464 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.h @@ -147,6 +147,10 @@ struct amdgpu_umsch_mm { uint64_t data_start_addr; uint32_t data_size; + struct amdgpu_bo *cmd_buf_obj; + uint64_t cmd_buf_gpu_addr; + uint32_t *cmd_buf_ptr; + uint32_t wb_index; uint64_t sch_ctx_gpu_addr; uint32_t *sch_ctx_cpu_addr; @@ -163,12 +167,16 @@ struct amdgpu_umsch_mm { struct mutex mutex_hidden; }; +int umsch_mm_psp_update_sram(struct amdgpu_device *adev, u32 ucode_size); + int amdgpu_umsch_mm_submit_pkt(struct amdgpu_umsch_mm *umsch, void *pkt, int ndws); int amdgpu_umsch_mm_query_fence(struct amdgpu_umsch_mm *umsch); int amdgpu_umsch_mm_init_microcode(struct amdgpu_umsch_mm *umsch); int amdgpu_umsch_mm_allocate_ucode_buffer(struct amdgpu_umsch_mm *umsch); int amdgpu_umsch_mm_allocate_ucode_data_buffer(struct amdgpu_umsch_mm *umsch); +void* amdgpu_umsch_mm_add_cmd(struct amdgpu_umsch_mm *umsch, + void* cmd_ptr, uint32_t reg_offset, uint32_t reg_data); int amdgpu_umsch_mm_ring_init(struct amdgpu_umsch_mm *umsch); |