From 5d0f619f723d0caa909e99c875a0c813588a0d68 Mon Sep 17 00:00:00 2001 From: Jack Xiao Date: Fri, 27 Mar 2020 15:27:48 +0800 Subject: drm/amdgpu/mes: implement adding mes gang MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gang is a group of the same type queue, which is the scheduling unit of mes hardware scheduler. Signed-off-by: Jack Xiao Acked-by: Christian König Reviewed-by: Hawking Zhang Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h') diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h index 6f44a81066b6..92139e362478 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h @@ -159,6 +159,14 @@ struct amdgpu_mes_queue { struct amdgpu_ring *ring; }; +struct amdgpu_mes_gang_properties { + uint32_t priority; + uint32_t gang_quantum; + uint32_t inprocess_gang_priority; + uint32_t priority_level; + int global_priority_level; +}; + struct mes_add_queue_input { uint32_t process_id; uint64_t page_table_base_addr; @@ -218,4 +226,8 @@ int amdgpu_mes_create_process(struct amdgpu_device *adev, int pasid, struct amdgpu_vm *vm); void amdgpu_mes_destroy_process(struct amdgpu_device *adev, int pasid); +int amdgpu_mes_add_gang(struct amdgpu_device *adev, int pasid, + struct amdgpu_mes_gang_properties *gprops, + int *gang_id); + #endif /* __AMDGPU_MES_H__ */ -- cgit v1.2.3-70-g09d2