Lines Matching defs:amdgpu_ring_funcs
112 struct amdgpu_ring_funcs { struct
113 enum amdgpu_ring_type type;
114 uint32_t align_mask;
115 u32 nop;
116 bool support_64bit_ptrs;
117 unsigned vmhub;
118 unsigned extra_dw;
121 uint64_t (*get_rptr)(struct amdgpu_ring *ring);
122 uint64_t (*get_wptr)(struct amdgpu_ring *ring);
123 void (*set_wptr)(struct amdgpu_ring *ring);
125 int (*parse_cs)(struct amdgpu_cs_parser *p, uint32_t ib_idx);
126 int (*patch_cs_in_place)(struct amdgpu_cs_parser *p, uint32_t ib_idx);
128 unsigned emit_frame_size;
129 unsigned emit_ib_size;
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);
175 const struct amdgpu_ring_funcs *funcs; argument