aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2247-drm-amdgpu-mes-add-definitions-of-ip-callback-functi.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2247-drm-amdgpu-mes-add-definitions-of-ip-callback-functi.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2247-drm-amdgpu-mes-add-definitions-of-ip-callback-functi.patch85
1 files changed, 85 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2247-drm-amdgpu-mes-add-definitions-of-ip-callback-functi.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2247-drm-amdgpu-mes-add-definitions-of-ip-callback-functi.patch
new file mode 100644
index 00000000..a33fa1a2
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2247-drm-amdgpu-mes-add-definitions-of-ip-callback-functi.patch
@@ -0,0 +1,85 @@
+From a5f7388117128c034d6dae93323e5c8b31efe33e Mon Sep 17 00:00:00 2001
+From: Jack Xiao <Jack.Xiao@amd.com>
+Date: Fri, 25 Jan 2019 17:54:58 +0800
+Subject: [PATCH 2247/2940] drm/amdgpu/mes: add definitions of ip callback
+ function
+
+Abstract mes ip independent function layer.
+
+Acked-by: Hawking Zhang <Hawking.Zhang@amd.com>
+Signed-off-by: Jack Xiao <Jack.Xiao@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h | 54 +++++++++++++++++++++++++
+ 1 file changed, 54 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h
+index 621ef8a7f074..788084310dd5 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h
+@@ -24,8 +24,62 @@
+ #ifndef __AMDGPU_MES_H__
+ #define __AMDGPU_MES_H__
+
++struct amdgpu_mes_funcs;
++
+ struct amdgpu_mes {
++ struct amdgpu_adev *adev;
++
++ /* ip specific functions */
++ struct amdgpu_mes_funcs *funcs;
++};
++
++struct mes_add_queue_input {
++ uint32_t process_id;
++ uint64_t page_table_base_addr;
++ uint64_t process_va_start;
++ uint64_t process_va_end;
++ uint64_t process_quantum;
++ uint64_t process_context_addr;
++ uint64_t gang_quantum;
++ uint64_t gang_context_addr;
++ uint32_t inprocess_gang_priority;
++ uint32_t gang_global_priority_level;
++ uint32_t doorbell_offset;
++ uint64_t mqd_addr;
++ uint64_t wptr_addr;
++ uint32_t queue_type;
++ uint32_t paging;
++};
++
++struct mes_remove_queue_input {
++ uint32_t doorbell_offset;
++ uint64_t gang_context_addr;
++};
++
++struct mes_suspend_gang_input {
++ bool suspend_all_gangs;
++ uint64_t gang_context_addr;
++ uint64_t suspend_fence_addr;
++ uint32_t suspend_fence_value;
++};
++
++struct mes_resume_gang_input {
++ bool resume_all_gangs;
++ uint64_t gang_context_addr;
++};
++
++struct amdgpu_mes_funcs {
++ int (*add_hw_queue)(struct amdgpu_mes *mes,
++ struct mes_add_queue_input *input);
++
++ int (*remove_hw_queue)(struct amdgpu_mes *mes,
++ struct mes_remove_queue_input *input);
++
++ int (*suspend_gang)(struct amdgpu_mes *mes,
++ struct mes_suspend_gang_input *input);
+
++ int (*resume_gang)(struct amdgpu_mes *mes,
++ struct mes_resume_gang_input *input);
+ };
+
+ #endif /* __AMDGPU_MES_H__ */
+--
+2.17.1
+