[PATCH 03/23] drm/amdgpu: export KIQ interfaces
Xiangliang Yu
Xiangliang.Yu at amd.com
Sat Dec 17 16:16:25 UTC 2016
Export KIQ interfaces so that others components can use the
interfaces to setup queues.
Signed-off-by: Xiangliang Yu <Xiangliang.Yu at amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index b7f521a..bc25c7b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -157,6 +157,7 @@ struct amdgpu_cs_parser;
struct amdgpu_job;
struct amdgpu_irq_src;
struct amdgpu_fpriv;
+struct vi_mqd;
enum amdgpu_cp_irq {
AMDGPU_CP_IRQ_GFX_EOP = 0,
@@ -691,6 +692,25 @@ void amdgpu_ctx_mgr_init(struct amdgpu_ctx_mgr *mgr);
void amdgpu_ctx_mgr_fini(struct amdgpu_ctx_mgr *mgr);
/*
+ * Kernel Interface Queue functions
+ */
+int amdgpu_kiq_init_ring(struct amdgpu_device *adev, struct amdgpu_ring *ring,
+ struct amdgpu_irq_src *irq);
+void amdgpu_kiq_free_ring(struct amdgpu_ring *ring, struct amdgpu_irq_src *irq);
+void amdgpu_kiq_enable(struct amdgpu_ring *ring);
+void amdgpu_kiq_start(struct amdgpu_ring *ring);
+int amdgpu_kiq_init(struct amdgpu_device *adev, struct vi_mqd *mqd,
+ struct amdgpu_ring *ring);
+void amdgpu_kiq_map_queue(struct amdgpu_ring *kiq_ring,
+ struct amdgpu_ring *ring);
+int amdgpu_mqd_init(struct amdgpu_device *adev, struct vi_mqd *mqd,
+ uint64_t mqd_gpu_addr, uint64_t eop_gpu_addr,
+ struct amdgpu_ring *ring);
+void amdgpu_kiq_ring_emit_fence(struct amdgpu_ring *ring, u64 addr,
+ u64 seq, unsigned flags);
+void amdgpu_kiq_set_irq_funcs(struct amdgpu_irq_src *irq);
+
+/*
* file private structure
*/
--
2.7.4
More information about the amd-gfx
mailing list