Lines Matching refs:amdgpu_ring

47 #define to_amdgpu_ring(s) container_of((s), struct amdgpu_ring, sched)
63 struct amdgpu_ring;
88 void amdgpu_fence_driver_force_completion(struct amdgpu_ring *ring);
90 int amdgpu_fence_driver_init_ring(struct amdgpu_ring *ring,
92 int amdgpu_fence_driver_start_ring(struct amdgpu_ring *ring,
97 int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **fence,
99 int amdgpu_fence_emit_polling(struct amdgpu_ring *ring, uint32_t *s);
100 void amdgpu_fence_process(struct amdgpu_ring *ring);
101 int amdgpu_fence_wait_empty(struct amdgpu_ring *ring);
102 signed long amdgpu_fence_wait_polling(struct amdgpu_ring *ring,
105 unsigned amdgpu_fence_count_emitted(struct amdgpu_ring *ring);
121 u64 (*get_rptr)(struct amdgpu_ring *ring);
122 u64 (*get_wptr)(struct amdgpu_ring *ring);
123 void (*set_wptr)(struct amdgpu_ring *ring);
131 void (*emit_ib)(struct amdgpu_ring *ring,
134 void (*emit_fence)(struct amdgpu_ring *ring, uint64_t addr,
136 void (*emit_pipeline_sync)(struct amdgpu_ring *ring);
137 void (*emit_vm_flush)(struct amdgpu_ring *ring, unsigned vmid,
139 void (*emit_hdp_flush)(struct amdgpu_ring *ring);
140 void (*emit_gds_switch)(struct amdgpu_ring *ring, uint32_t vmid,
145 int (*test_ring)(struct amdgpu_ring *ring);
146 int (*test_ib)(struct amdgpu_ring *ring, long timeout);
148 void (*insert_nop)(struct amdgpu_ring *ring, uint32_t count);
149 void (*insert_start)(struct amdgpu_ring *ring);
150 void (*insert_end)(struct amdgpu_ring *ring);
152 void (*pad_ib)(struct amdgpu_ring *ring, struct amdgpu_ib *ib);
153 unsigned (*init_cond_exec)(struct amdgpu_ring *ring);
154 void (*patch_cond_exec)(struct amdgpu_ring *ring, unsigned offset);
156 void (*begin_use)(struct amdgpu_ring *ring);
157 void (*end_use)(struct amdgpu_ring *ring);
158 void (*emit_switch_buffer) (struct amdgpu_ring *ring);
159 void (*emit_cntxcntl) (struct amdgpu_ring *ring, uint32_t flags);
160 void (*emit_rreg)(struct amdgpu_ring *ring, uint32_t reg);
161 void (*emit_wreg)(struct amdgpu_ring *ring, uint32_t reg, uint32_t val);
162 void (*emit_reg_wait)(struct amdgpu_ring *ring, uint32_t reg,
164 void (*emit_reg_write_reg_wait)(struct amdgpu_ring *ring,
167 void (*emit_tmz)(struct amdgpu_ring *ring, bool start);
169 void (*set_priority) (struct amdgpu_ring *ring,
173 struct amdgpu_ring { struct
224 int amdgpu_ring_alloc(struct amdgpu_ring *ring, unsigned ndw); argument
225 void amdgpu_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count);
226 void amdgpu_ring_generic_pad_ib(struct amdgpu_ring *ring, struct amdgpu_ib *ib);
227 void amdgpu_ring_commit(struct amdgpu_ring *ring);
228 void amdgpu_ring_undo(struct amdgpu_ring *ring);
229 void amdgpu_ring_priority_get(struct amdgpu_ring *ring,
231 void amdgpu_ring_priority_put(struct amdgpu_ring *ring,
233 int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring,
236 void amdgpu_ring_fini(struct amdgpu_ring *ring);
239 bool lru_pipe_order, struct amdgpu_ring **ring);
240 void amdgpu_ring_lru_touch(struct amdgpu_device *adev, struct amdgpu_ring *ring);
241 void amdgpu_ring_emit_reg_write_reg_wait_helper(struct amdgpu_ring *ring,
245 static inline void amdgpu_ring_clear_ring(struct amdgpu_ring *ring) in amdgpu_ring_clear_ring()
253 static inline void amdgpu_ring_write(struct amdgpu_ring *ring, uint32_t v) in amdgpu_ring_write()
262 static inline void amdgpu_ring_write_multiple(struct amdgpu_ring *ring, in amdgpu_ring_write_multiple()