[PATCH 0/3] Allocate and map doorbell based on requests
Saleemkhan Jamadar
saleemkhan.jamadar at amd.com
Mon Jan 6 16:45:27 UTC 2025
Hi,
Why:
The current implementation of doorbell mapping does not handle the
IP specific doorbell size and offset range. Multiple doorbell
allocation when requested cannot be allocated due hard use of
"struct amdgpu_usermode_queue" parameters. But these parameters vary
for each request of doorbell mapping. For example VCN needs to allocate
AGDB(Aggregate doorbell) and per instance doorbell. Parameters db_handle
buffer allocated in userspace)and db_offset vary with respect to VCN AGDB
and per instance doorbell. When compared to GFX apart from above two
parameters db_size is also different.
How:
Introduce another structure to locally populate the varying parameters.
Modify the the door mapping api to use these structure parameters to
get db_size and offset range based on the queue type.
Regards,
Saleem
Saleemkhan Jamadar (3):
drm/amdgpu: add stucture to populate dorrbell info
drm/amdgpu: map doorbell for the requested userq
drm/amdgpu: add doorbell size and offset range for VCN and VPE
drivers/gpu/drm/amd/amdgpu/amdgpu_userqueue.c | 42 ++++++++++++++-----
.../gpu/drm/amd/include/amdgpu_userqueue.h | 12 ++++++
2 files changed, 43 insertions(+), 11 deletions(-)
--
2.34.1
More information about the amd-gfx
mailing list