/third_party/libwebsockets/lib/misc/ |
H A D | lws-ring.c | 31 struct lws_ring *ring = lws_malloc(sizeof(*ring), "ring create"); in lws_ring_create() local 33 if (!ring) in lws_ring_create() 36 ring->buflen = (uint32_t)(count * element_len); in lws_ring_create() 37 ring->element_len = (uint32_t)element_len; in lws_ring_create() 38 ring->head = 0; in lws_ring_create() 39 ring->oldest_tail = 0; in lws_ring_create() 40 ring->destroy_element = destroy_element; in lws_ring_create() 42 ring in lws_ring_create() 53 lws_ring_destroy(struct lws_ring *ring) lws_ring_destroy() argument 70 lws_ring_get_count_free_elements(struct lws_ring *ring) lws_ring_get_count_free_elements() argument 100 lws_ring_get_count_waiting_elements(struct lws_ring *ring, uint32_t *tail) lws_ring_get_count_waiting_elements() argument 126 lws_ring_next_linear_insert_range(struct lws_ring *ring, void **start, size_t *bytes) lws_ring_next_linear_insert_range() argument 151 lws_ring_bump_head(struct lws_ring *ring, size_t bytes) lws_ring_bump_head() argument 157 lws_ring_insert(struct lws_ring *ring, const void *src, size_t max_count) lws_ring_insert() argument 199 lws_ring_consume(struct lws_ring *ring, uint32_t *tail, void *dest, size_t max_count) lws_ring_consume() argument 255 lws_ring_get_element(struct lws_ring *ring, uint32_t *tail) lws_ring_get_element() argument 267 lws_ring_update_oldest_tail(struct lws_ring *ring, uint32_t tail) lws_ring_update_oldest_tail() argument 282 lws_ring_get_oldest_tail(struct lws_ring *ring) lws_ring_get_oldest_tail() argument 288 lws_ring_dump(struct lws_ring *ring, uint32_t *tail) lws_ring_dump() argument [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_ring.c | 40 * Most engines on the GPU are fed via ring buffers. Ring 46 * pointers are equal, the ring is idle. When the host 47 * writes commands to the ring buffer, it increments the 55 * @type: ring type for which to return the limit. 73 * amdgpu_ring_alloc - allocate space on the ring buffer 75 * @ring: amdgpu_ring structure holding ring information 76 * @ndw: number of dwords to allocate in the ring buffer 78 * Allocate @ndw dwords in the ring buffer (all asics). 81 int amdgpu_ring_alloc(struct amdgpu_ring *ring, unsigne argument 109 amdgpu_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count) amdgpu_ring_insert_nop() argument 125 amdgpu_ring_generic_pad_ib(struct amdgpu_ring *ring, struct amdgpu_ib *ib) amdgpu_ring_generic_pad_ib() argument 140 amdgpu_ring_commit(struct amdgpu_ring *ring) amdgpu_ring_commit() argument 164 amdgpu_ring_undo(struct amdgpu_ring *ring) amdgpu_ring_undo() argument 196 amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring, unsigned int max_dw, struct amdgpu_irq_src *irq_src, unsigned int irq_type, unsigned int hw_prio, atomic_t *sched_score) amdgpu_ring_init() argument 372 amdgpu_ring_fini(struct amdgpu_ring *ring) amdgpu_ring_fini() argument 416 amdgpu_ring_emit_reg_write_reg_wait_helper(struct amdgpu_ring *ring, uint32_t reg0, uint32_t reg1, uint32_t ref, uint32_t mask) amdgpu_ring_emit_reg_write_reg_wait_helper() argument 433 amdgpu_ring_soft_recovery(struct amdgpu_ring *ring, unsigned int vmid, struct dma_fence *fence) amdgpu_ring_soft_recovery() argument 471 struct amdgpu_ring *ring = file_inode(f)->i_private; amdgpu_debugfs_ring_read() local 521 struct amdgpu_ring *ring = file_inode(f)->i_private; amdgpu_debugfs_mqd_read() local 573 struct amdgpu_ring *ring = data; amdgpu_debugfs_ring_error() local 584 amdgpu_debugfs_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring) amdgpu_debugfs_ring_init() argument 620 amdgpu_ring_test_helper(struct amdgpu_ring *ring) amdgpu_ring_test_helper() argument 637 amdgpu_ring_to_mqd_prop(struct amdgpu_ring *ring, struct amdgpu_mqd_prop *prop) amdgpu_ring_to_mqd_prop() argument 667 amdgpu_ring_init_mqd(struct amdgpu_ring *ring) amdgpu_ring_init_mqd() argument 685 amdgpu_ring_ib_begin(struct amdgpu_ring *ring) amdgpu_ring_ib_begin() argument 691 amdgpu_ring_ib_end(struct amdgpu_ring *ring) amdgpu_ring_ib_end() argument 697 amdgpu_ring_ib_on_emit_cntl(struct amdgpu_ring *ring) amdgpu_ring_ib_on_emit_cntl() argument 703 amdgpu_ring_ib_on_emit_ce(struct amdgpu_ring *ring) amdgpu_ring_ib_on_emit_ce() argument 709 amdgpu_ring_ib_on_emit_de(struct amdgpu_ring *ring) amdgpu_ring_ib_on_emit_de() argument [all...] |
H A D | jpeg_v1_0.c | 36 static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring); 38 static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) in jpeg_v1_0_decode_ring_patch_wreg() argument 40 struct amdgpu_device *adev = ring->adev; in jpeg_v1_0_decode_ring_patch_wreg() 41 ring->ring[(*ptr)++] = PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_JRBC_EXTERNAL_REG_BASE), 0, 0, PACKETJ_TYPE0); in jpeg_v1_0_decode_ring_patch_wreg() 44 ring->ring[(*ptr)++] = 0; in jpeg_v1_0_decode_ring_patch_wreg() 45 ring->ring[(*ptr)++] = PACKETJ((reg_offset >> 2), 0, 0, PACKETJ_TYPE0); in jpeg_v1_0_decode_ring_patch_wreg() 47 ring in jpeg_v1_0_decode_ring_patch_wreg() 53 jpeg_v1_0_decode_ring_set_patch_ring(struct amdgpu_ring *ring, uint32_t ptr) jpeg_v1_0_decode_ring_set_patch_ring() argument 136 jpeg_v1_0_decode_ring_get_rptr(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_get_rptr() argument 150 jpeg_v1_0_decode_ring_get_wptr(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_get_wptr() argument 164 jpeg_v1_0_decode_ring_set_wptr(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_set_wptr() argument 178 jpeg_v1_0_decode_ring_insert_start(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_insert_start() argument 197 jpeg_v1_0_decode_ring_insert_end(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_insert_end() argument 219 jpeg_v1_0_decode_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, unsigned flags) jpeg_v1_0_decode_ring_emit_fence() argument 293 jpeg_v1_0_decode_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, struct amdgpu_ib *ib, uint32_t flags) jpeg_v1_0_decode_ring_emit_ib() argument 346 jpeg_v1_0_decode_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg, uint32_t val, uint32_t mask) jpeg_v1_0_decode_ring_emit_reg_wait() argument 376 jpeg_v1_0_decode_ring_emit_vm_flush(struct amdgpu_ring *ring, unsigned vmid, uint64_t pd_addr) jpeg_v1_0_decode_ring_emit_vm_flush() argument 391 jpeg_v1_0_decode_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg, uint32_t val) jpeg_v1_0_decode_ring_emit_wreg() argument 412 jpeg_v1_0_decode_ring_nop(struct amdgpu_ring *ring, uint32_t count) jpeg_v1_0_decode_ring_nop() argument 480 struct amdgpu_ring *ring; jpeg_v1_0_sw_init() local 526 struct amdgpu_ring *ring = adev->jpeg.inst->ring_dec; jpeg_v1_0_start() local 597 jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring) jpeg_v1_0_ring_begin_use() argument [all...] |
/third_party/mesa3d/src/gallium/drivers/freedreno/a2xx/ |
H A D | fd2_emit.c | 51 emit_constants(struct fd_ringbuffer *ring, uint32_t base, in emit_constants() argument 87 OUT_PKT3(ring, CP_SET_CONSTANT, size + 1); in emit_constants() 88 OUT_RING(ring, base); in emit_constants() 90 OUT_RING(ring, *(dwords++)); in emit_constants() 99 OUT_PKT3(ring, CP_SET_CONSTANT, 5); in emit_constants() 100 OUT_RING(ring, start_base + (4 * (shader->first_immediate + i))); in emit_constants() 101 OUT_RING(ring, shader->immediates[i].val[0]); in emit_constants() 102 OUT_RING(ring, shader->immediates[i].val[1]); in emit_constants() 103 OUT_RING(ring, shader->immediates[i].val[2]); in emit_constants() 104 OUT_RING(ring, shade in emit_constants() 113 emit_texture(struct fd_ringbuffer *ring, struct fd_context *ctx, struct fd_texture_stateobj *tex, unsigned samp_id, texmask emitted) emit_texture() argument 156 emit_textures(struct fd_ringbuffer *ring, struct fd_context *ctx) emit_textures() argument 173 fd2_emit_vertex_bufs(struct fd_ringbuffer *ring, uint32_t val, struct fd2_vertex_buf *vbufs, uint32_t n) fd2_emit_vertex_bufs() argument 192 struct fd_ringbuffer *ring = ctx->batch->binning; fd2_emit_state_binning() local 240 struct fd_ringbuffer *ring = ctx->batch->draw; fd2_emit_state() local 404 fd2_emit_restore(struct fd_context *ctx, struct fd_ringbuffer *ring) fd2_emit_restore() argument [all...] |
H A D | fd2_draw.c | 43 emit_cacheflush(struct fd_ringbuffer *ring) in emit_cacheflush() argument 48 OUT_PKT3(ring, CP_EVENT_WRITE, 1); in emit_cacheflush() 49 OUT_RING(ring, CACHE_FLUSH); in emit_cacheflush() 81 const struct pipe_draw_start_count_bias *draw, struct fd_ringbuffer *ring, 84 OUT_PKT3(ring, CP_SET_CONSTANT, 2); 85 OUT_RING(ring, CP_REG(REG_A2XX_VGT_INDX_OFFSET)); 86 OUT_RING(ring, info->index_size ? 0 : draw->start); 88 OUT_PKT0(ring, REG_A2XX_TC_CNTL_STATUS, 1); 89 OUT_RING(ring, A2XX_TC_CNTL_STATUS_L2_INVALIDATE); 100 OUT_PKT3(ring, CP_WAIT_REG_E 115 OUT_WFI(ring); global() variable 144 OUT_WFI(ring); global() variable 151 emit_cacheflush(ring); global() variable 329 clear_state_restore(struct fd_context *ctx, struct fd_ringbuffer *ring) clear_state_restore() argument 348 clear_fast(struct fd_batch *batch, struct fd_ringbuffer *ring, uint32_t color_clear, uint32_t depth_clear, unsigned patch_type) clear_fast() argument 434 struct fd_ringbuffer *ring = batch->draw; global() variable 534 struct fd_ringbuffer *ring = ctx->batch->draw; global() variable [all...] |
H A D | fd2_gmem.c | 91 struct fd_ringbuffer *ring = batch->tile_fini; in emit_gmem2mem_surf() local 104 OUT_PKT3(ring, CP_SET_CONSTANT, 2); in emit_gmem2mem_surf() 105 OUT_RING(ring, CP_REG(REG_A2XX_RB_COLOR_INFO)); in emit_gmem2mem_surf() 106 OUT_RING(ring, A2XX_RB_COLOR_INFO_BASE(base) | in emit_gmem2mem_surf() 109 OUT_PKT3(ring, CP_SET_CONSTANT, 5); in emit_gmem2mem_surf() 110 OUT_RING(ring, CP_REG(REG_A2XX_RB_COPY_CONTROL)); in emit_gmem2mem_surf() 111 OUT_RING(ring, 0x00000000); /* RB_COPY_CONTROL */ in emit_gmem2mem_surf() 112 OUT_RELOC(ring, rsc->bo, offset, 0, 0); /* RB_COPY_DEST_BASE */ in emit_gmem2mem_surf() 113 OUT_RING(ring, pitch >> 5); /* RB_COPY_DEST_PITCH */ in emit_gmem2mem_surf() 114 OUT_RING(ring, /* RB_COPY_DEST_INF in emit_gmem2mem_surf() 142 struct fd_ringbuffer *ring; global() variable 235 struct fd_ringbuffer *ring = batch->gmem; emit_mem2gmem_surf() local 286 struct fd_ringbuffer *ring = batch->gmem; global() variable 439 struct fd_ringbuffer *ring = batch->gmem; fd2_emit_sysmem_prep() local 489 struct fd_ringbuffer *ring = batch->gmem; global() variable 673 struct fd_ringbuffer *ring = batch->gmem; fd2_emit_tile_prep() local 698 struct fd_ringbuffer *ring = batch->gmem; global() variable [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_ring.c | 40 * Most engines on the GPU are fed via ring buffers. Ring 46 * pointers are equal, the ring is idle. When the host 47 * writes commands to the ring buffer, it increments the 53 * amdgpu_ring_alloc - allocate space on the ring buffer 56 * @ring: amdgpu_ring structure holding ring information 57 * @ndw: number of dwords to allocate in the ring buffer 59 * Allocate @ndw dwords in the ring buffer (all asics). 62 int amdgpu_ring_alloc(struct amdgpu_ring *ring, unsigned ndw) in amdgpu_ring_alloc() argument 66 ndw = (ndw + ring in amdgpu_ring_alloc() 90 amdgpu_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count) amdgpu_ring_insert_nop() argument 105 amdgpu_ring_generic_pad_ib(struct amdgpu_ring *ring, struct amdgpu_ib *ib) amdgpu_ring_generic_pad_ib() argument 121 amdgpu_ring_commit(struct amdgpu_ring *ring) amdgpu_ring_commit() argument 145 amdgpu_ring_undo(struct amdgpu_ring *ring) amdgpu_ring_undo() argument 164 amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring, unsigned int max_dw, struct amdgpu_irq_src *irq_src, unsigned int irq_type, unsigned int hw_prio) amdgpu_ring_init() argument 284 amdgpu_ring_fini(struct amdgpu_ring *ring) amdgpu_ring_fini() argument 322 amdgpu_ring_emit_reg_write_reg_wait_helper(struct amdgpu_ring *ring, uint32_t reg0, uint32_t reg1, uint32_t ref, uint32_t mask) amdgpu_ring_emit_reg_write_reg_wait_helper() argument 339 amdgpu_ring_soft_recovery(struct amdgpu_ring *ring, unsigned int vmid, struct dma_fence *fence) amdgpu_ring_soft_recovery() argument 370 struct amdgpu_ring *ring = file_inode(f)->i_private; amdgpu_debugfs_ring_read() local 419 amdgpu_debugfs_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring) amdgpu_debugfs_ring_init() argument 450 amdgpu_ring_test_helper(struct amdgpu_ring *ring) amdgpu_ring_test_helper() argument [all...] |
H A D | jpeg_v1_0.c | 36 static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring); 38 static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) in jpeg_v1_0_decode_ring_patch_wreg() argument 40 struct amdgpu_device *adev = ring->adev; in jpeg_v1_0_decode_ring_patch_wreg() 41 ring->ring[(*ptr)++] = PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_JRBC_EXTERNAL_REG_BASE), 0, 0, PACKETJ_TYPE0); in jpeg_v1_0_decode_ring_patch_wreg() 44 ring->ring[(*ptr)++] = 0; in jpeg_v1_0_decode_ring_patch_wreg() 45 ring->ring[(*ptr)++] = PACKETJ((reg_offset >> 2), 0, 0, PACKETJ_TYPE0); in jpeg_v1_0_decode_ring_patch_wreg() 47 ring in jpeg_v1_0_decode_ring_patch_wreg() 53 jpeg_v1_0_decode_ring_set_patch_ring(struct amdgpu_ring *ring, uint32_t ptr) jpeg_v1_0_decode_ring_set_patch_ring() argument 136 jpeg_v1_0_decode_ring_get_rptr(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_get_rptr() argument 150 jpeg_v1_0_decode_ring_get_wptr(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_get_wptr() argument 164 jpeg_v1_0_decode_ring_set_wptr(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_set_wptr() argument 178 jpeg_v1_0_decode_ring_insert_start(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_insert_start() argument 197 jpeg_v1_0_decode_ring_insert_end(struct amdgpu_ring *ring) jpeg_v1_0_decode_ring_insert_end() argument 217 jpeg_v1_0_decode_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, unsigned flags) jpeg_v1_0_decode_ring_emit_fence() argument 289 jpeg_v1_0_decode_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, struct amdgpu_ib *ib, uint32_t flags) jpeg_v1_0_decode_ring_emit_ib() argument 342 jpeg_v1_0_decode_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg, uint32_t val, uint32_t mask) jpeg_v1_0_decode_ring_emit_reg_wait() argument 372 jpeg_v1_0_decode_ring_emit_vm_flush(struct amdgpu_ring *ring, unsigned vmid, uint64_t pd_addr) jpeg_v1_0_decode_ring_emit_vm_flush() argument 387 jpeg_v1_0_decode_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg, uint32_t val) jpeg_v1_0_decode_ring_emit_wreg() argument 408 jpeg_v1_0_decode_ring_nop(struct amdgpu_ring *ring, uint32_t count) jpeg_v1_0_decode_ring_nop() argument 475 struct amdgpu_ring *ring; jpeg_v1_0_sw_init() local 519 struct amdgpu_ring *ring = &adev->jpeg.inst->ring_dec; jpeg_v1_0_start() local 591 jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring) jpeg_v1_0_ring_begin_use() argument [all...] |
H A D | amdgpu_fence.c | 49 * are no longer in use by the associated ring on the GPU and 57 struct amdgpu_ring *ring; member 94 * @ring: ring the fence is associated with 99 static void amdgpu_fence_write(struct amdgpu_ring *ring, u32 seq) in amdgpu_fence_write() argument 101 struct amdgpu_fence_driver *drv = &ring->fence_drv; in amdgpu_fence_write() 110 * @ring: ring the fence is associated with 115 static u32 amdgpu_fence_read(struct amdgpu_ring *ring) in amdgpu_fence_read() argument 117 struct amdgpu_fence_driver *drv = &ring in amdgpu_fence_read() 137 amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f, unsigned flags) amdgpu_fence_emit() argument 195 amdgpu_fence_emit_polling(struct amdgpu_ring *ring, uint32_t *s, uint32_t timeout) amdgpu_fence_emit_polling() argument 226 amdgpu_fence_schedule_fallback(struct amdgpu_ring *ring) amdgpu_fence_schedule_fallback() argument 243 amdgpu_fence_process(struct amdgpu_ring *ring) amdgpu_fence_process() argument 303 struct amdgpu_ring *ring = from_timer(ring, t, amdgpu_fence_fallback() local 319 amdgpu_fence_wait_empty(struct amdgpu_ring *ring) amdgpu_fence_wait_empty() argument 352 amdgpu_fence_wait_polling(struct amdgpu_ring *ring, uint32_t wait_seq, signed long timeout) amdgpu_fence_wait_polling() argument 375 amdgpu_fence_count_emitted(struct amdgpu_ring *ring) amdgpu_fence_count_emitted() argument 402 amdgpu_fence_driver_start_ring(struct amdgpu_ring *ring, struct amdgpu_irq_src *irq_src, unsigned irq_type) amdgpu_fence_driver_start_ring() argument 442 amdgpu_fence_driver_init_ring(struct amdgpu_ring *ring, unsigned num_hw_submission) amdgpu_fence_driver_init_ring() argument 531 struct amdgpu_ring *ring = adev->rings[i]; amdgpu_fence_driver_fini() local 568 struct amdgpu_ring *ring = adev->rings[i]; amdgpu_fence_driver_suspend() local 603 struct amdgpu_ring *ring = adev->rings[i]; amdgpu_fence_driver_resume() local 620 amdgpu_fence_driver_force_completion(struct amdgpu_ring *ring) amdgpu_fence_driver_force_completion() argument 652 struct amdgpu_ring *ring = fence->ring; amdgpu_fence_enable_signaling() local 708 struct amdgpu_ring *ring = adev->rings[i]; amdgpu_debugfs_fence_info() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/radeon/ |
H A D | radeon_ring.c | 37 * Most engines on the GPU are fed via ring buffers. Ring 43 * pointers are equal, the ring is idle. When the host 44 * writes commands to the ring buffer, it increments the 48 static void radeon_debugfs_ring_init(struct radeon_device *rdev, struct radeon_ring *ring); 51 * radeon_ring_supports_scratch_reg - check if the ring supports 55 * @ring: radeon_ring structure holding ring information 57 * Check if a specific ring supports writing to scratch registers (all asics). 58 * Returns true if the ring supports writing to scratch regs, false if not. 61 struct radeon_ring *ring) in radeon_ring_supports_scratch_reg() 60 radeon_ring_supports_scratch_reg(struct radeon_device *rdev, struct radeon_ring *ring) radeon_ring_supports_scratch_reg() argument 81 radeon_ring_free_size(struct radeon_device *rdev, struct radeon_ring *ring) radeon_ring_free_size() argument 107 radeon_ring_alloc(struct radeon_device *rdev, struct radeon_ring *ring, unsigned ndw) radeon_ring_alloc() argument 143 radeon_ring_lock(struct radeon_device *rdev, struct radeon_ring *ring, unsigned ndw) radeon_ring_lock() argument 167 radeon_ring_commit(struct radeon_device *rdev, struct radeon_ring *ring, bool hdp_flush) radeon_ring_commit() argument 198 radeon_ring_unlock_commit(struct radeon_device *rdev, struct radeon_ring *ring, bool hdp_flush) radeon_ring_unlock_commit() argument 212 radeon_ring_undo(struct radeon_ring *ring) radeon_ring_undo() argument 225 radeon_ring_unlock_undo(struct radeon_device *rdev, struct radeon_ring *ring) radeon_ring_unlock_undo() argument 239 radeon_ring_lockup_update(struct radeon_device *rdev, struct radeon_ring *ring) radeon_ring_lockup_update() argument 252 radeon_ring_test_lockup(struct radeon_device *rdev, struct radeon_ring *ring) radeon_ring_test_lockup() argument 283 radeon_ring_backup(struct radeon_device *rdev, struct radeon_ring *ring, uint32_t **data) radeon_ring_backup() argument 347 radeon_ring_restore(struct radeon_device *rdev, struct radeon_ring *ring, unsigned size, uint32_t *data) radeon_ring_restore() argument 381 radeon_ring_init(struct radeon_device *rdev, struct radeon_ring *ring, unsigned ring_size, unsigned rptr_offs, u32 nop) radeon_ring_init() argument 437 radeon_ring_fini(struct radeon_device *rdev, struct radeon_ring *ring) radeon_ring_fini() argument 467 struct radeon_ring *ring = m->private; radeon_debugfs_ring_info_show() local 547 radeon_debugfs_ring_init(struct radeon_device *rdev, struct radeon_ring *ring) radeon_debugfs_ring_init() argument [all...] |
/third_party/libdrm/freedreno/ |
H A D | freedreno_ringbuffer.c | 39 struct fd_ringbuffer *ring; in fd_ringbuffer_new_flags() local 48 ring = pipe->funcs->ringbuffer_new(pipe, size, flags); in fd_ringbuffer_new_flags() 49 if (!ring) in fd_ringbuffer_new_flags() 52 ring->flags = flags; in fd_ringbuffer_new_flags() 53 ring->pipe = pipe; in fd_ringbuffer_new_flags() 54 ring->start = ring->funcs->hostptr(ring); in fd_ringbuffer_new_flags() 55 ring->end = &(ring in fd_ringbuffer_new_flags() 74 fd_ringbuffer_del(struct fd_ringbuffer *ring) fd_ringbuffer_del() argument 84 fd_ringbuffer_ref(struct fd_ringbuffer *ring) fd_ringbuffer_ref() argument 95 fd_ringbuffer_set_parent(struct fd_ringbuffer *ring, struct fd_ringbuffer *parent) fd_ringbuffer_set_parent() argument 103 fd_ringbuffer_reset(struct fd_ringbuffer *ring) fd_ringbuffer_reset() argument 113 fd_ringbuffer_flush(struct fd_ringbuffer *ring) fd_ringbuffer_flush() argument 118 fd_ringbuffer_flush2(struct fd_ringbuffer *ring, int in_fence_fd, int *out_fence_fd) fd_ringbuffer_flush2() argument 124 fd_ringbuffer_grow(struct fd_ringbuffer *ring, uint32_t ndwords) fd_ringbuffer_grow() argument 140 fd_ringbuffer_timestamp(struct fd_ringbuffer *ring) fd_ringbuffer_timestamp() argument 145 fd_ringbuffer_reloc(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_reloc() argument 152 fd_ringbuffer_reloc2(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_reloc2() argument 158 fd_ringbuffer_cmd_count(struct fd_ringbuffer *ring) fd_ringbuffer_cmd_count() argument 166 fd_ringbuffer_emit_reloc_ring_full(struct fd_ringbuffer *ring, struct fd_ringbuffer *target, uint32_t cmd_idx) fd_ringbuffer_emit_reloc_ring_full() argument 173 fd_ringbuffer_size(struct fd_ringbuffer *ring) fd_ringbuffer_size() argument [all...] |
/third_party/mesa3d/src/gallium/drivers/freedreno/a5xx/ |
H A D | fd5_emit.c | 58 fd5_emit_const_user(struct fd_ringbuffer *ring, in fd5_emit_const_user() argument 62 emit_const_asserts(ring, v, regid, sizedwords); in fd5_emit_const_user() 64 OUT_PKT7(ring, CP_LOAD_STATE4, 3 + sizedwords); in fd5_emit_const_user() 65 OUT_RING(ring, CP_LOAD_STATE4_0_DST_OFF(regid / 4) | in fd5_emit_const_user() 69 OUT_RING(ring, CP_LOAD_STATE4_1_EXT_SRC_ADDR(0) | in fd5_emit_const_user() 71 OUT_RING(ring, CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI(0)); in fd5_emit_const_user() 73 OUT_RING(ring, ((uint32_t *)dwords)[i]); in fd5_emit_const_user() 77 fd5_emit_const_bo(struct fd_ringbuffer *ring, in fd5_emit_const_bo() argument 86 emit_const_asserts(ring, v, regid, sizedwords); in fd5_emit_const_bo() 88 OUT_PKT7(ring, CP_LOAD_STATE in fd5_emit_const_bo() 97 fd5_emit_const_ptrs(struct fd_ringbuffer *ring, gl_shader_stage type, uint32_t regid, uint32_t num, struct fd_bo **bos, uint32_t *offsets) fd5_emit_const_ptrs() argument 131 is_stateobj(struct fd_ringbuffer *ring) is_stateobj() argument 137 emit_const_ptrs(struct fd_ringbuffer *ring, const struct ir3_shader_variant *v, uint32_t dst_offset, uint32_t num, struct fd_bo **bos, uint32_t *offsets) emit_const_ptrs() argument 147 fd5_emit_cs_consts(const struct ir3_shader_variant *v, struct fd_ringbuffer *ring, struct fd_context *ctx, const struct pipe_grid_info *info) fd5_emit_cs_consts() argument 426 emit_ssbos(struct fd_context *ctx, struct fd_ringbuffer *ring, enum a4xx_state_block sb, struct fd_shaderbuf_stateobj *so, const struct ir3_shader_variant *v) emit_ssbos() argument 472 fd5_emit_vertex_bufs(struct fd_ringbuffer *ring, struct fd5_emit *emit) fd5_emit_vertex_bufs() argument 524 fd5_emit_state(struct fd_context *ctx, struct fd_ringbuffer *ring, struct fd5_emit *emit) fd5_emit_state() argument 881 fd5_emit_cs_state(struct fd_context *ctx, struct fd_ringbuffer *ring, struct ir3_shader_variant *cp) fd5_emit_cs_state() argument 927 fd5_emit_restore(struct fd_batch *batch, struct fd_ringbuffer *ring) fd5_emit_restore() argument 1161 fd5_mem_to_mem(struct fd_ringbuffer *ring, struct pipe_resource *dst, unsigned dst_off, struct pipe_resource *src, unsigned src_off, unsigned sizedwords) fd5_mem_to_mem() argument [all...] |
H A D | fd5_gmem.c | 46 emit_mrt(struct fd_ringbuffer *ring, unsigned nr_bufs, in emit_mrt() argument 98 OUT_PKT4(ring, REG_A5XX_RB_MRT_BUF_INFO(i), 5); in emit_mrt() 100 ring, in emit_mrt() 107 OUT_RING(ring, A5XX_RB_MRT_PITCH(stride)); in emit_mrt() 108 OUT_RING(ring, A5XX_RB_MRT_ARRAY_PITCH(size)); in emit_mrt() 110 OUT_RING(ring, base); /* RB_MRT[i].BASE_LO */ in emit_mrt() 111 OUT_RING(ring, 0x00000000); /* RB_MRT[i].BASE_HI */ in emit_mrt() 113 OUT_RELOC(ring, rsc->bo, offset, 0, 0); /* BASE_LO/HI */ in emit_mrt() 116 OUT_PKT4(ring, REG_A5XX_SP_FS_MRT_REG(i), 1); in emit_mrt() 117 OUT_RING(ring, A5XX_SP_FS_MRT_REG_COLOR_FORMA in emit_mrt() 134 emit_zs(struct fd_ringbuffer *ring, struct pipe_surface *zsbuf, const struct fd_gmem_stateobj *gmem) emit_zs() argument 238 emit_msaa(struct fd_ringbuffer *ring, uint32_t nr_samples) emit_msaa() argument 301 struct fd_ringbuffer *ring = batch->gmem; global() variable 342 struct fd_ringbuffer *ring = batch->gmem; global() variable 397 struct fd_ringbuffer *ring = batch->gmem; global() variable 460 struct fd_ringbuffer *ring = batch->gmem; global() variable 509 struct fd_ringbuffer *ring = batch->gmem; emit_mem2gmem_surf() local 567 struct fd_ringbuffer *ring = batch->gmem; fd5_emit_tile_mem2gmem() local 609 struct fd_ringbuffer *ring = batch->gmem; fd5_emit_tile_renderprep() local 630 struct fd_ringbuffer *ring = batch->gmem; emit_gmem2mem_surf() local 704 struct fd_ringbuffer *ring = batch->gmem; global() variable 718 struct fd_ringbuffer *ring = batch->gmem; global() variable 784 struct fd_ringbuffer *ring = batch->gmem; fd5_emit_sysmem_fini() local [all...] |
/kernel/linux/linux-5.10/drivers/net/wireless/broadcom/b43legacy/ |
H A D | dma.c | 32 struct b43legacy_dmadesc32 *op32_idx2desc(struct b43legacy_dmaring *ring, in op32_idx2desc() argument 38 *meta = &(ring->meta[slot]); in op32_idx2desc() 39 desc = ring->descbase; in op32_idx2desc() 45 static void op32_fill_descriptor(struct b43legacy_dmaring *ring, in op32_fill_descriptor() argument 50 struct b43legacy_dmadesc32 *descbase = ring->descbase; in op32_fill_descriptor() 57 B43legacy_WARN_ON(!(slot >= 0 && slot < ring->nr_slots)); in op32_fill_descriptor() 62 addr |= ring->dev->dma.translation; in op32_fill_descriptor() 63 ctl = (bufsize - ring->frameoffset) in op32_fill_descriptor() 65 if (slot == ring->nr_slots - 1) in op32_fill_descriptor() 80 static void op32_poke_tx(struct b43legacy_dmaring *ring, in argument 86 op32_tx_suspend(struct b43legacy_dmaring *ring) op32_tx_suspend() argument 93 op32_tx_resume(struct b43legacy_dmaring *ring) op32_tx_resume() argument 100 op32_get_current_rxslot(struct b43legacy_dmaring *ring) op32_get_current_rxslot() argument 110 op32_set_current_rxslot(struct b43legacy_dmaring *ring, int slot) op32_set_current_rxslot() argument 117 free_slots(struct b43legacy_dmaring *ring) free_slots() argument 122 next_slot(struct b43legacy_dmaring *ring, int slot) next_slot() argument 130 prev_slot(struct b43legacy_dmaring *ring, int slot) prev_slot() argument 139 update_max_used_slots(struct b43legacy_dmaring *ring, int current_used_slots) update_max_used_slots() argument 154 update_max_used_slots(struct b43legacy_dmaring *ring, int current_used_slots) update_max_used_slots() argument 161 request_slot(struct b43legacy_dmaring *ring) request_slot() argument 183 struct b43legacy_dmaring *ring; priority_to_txring() local 217 txring_to_priority(struct b43legacy_dmaring *ring) txring_to_priority() argument 247 map_descbuffer(struct b43legacy_dmaring *ring, unsigned char *buf, size_t len, int tx) map_descbuffer() argument 267 unmap_descbuffer(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len, int tx) unmap_descbuffer() argument 283 sync_descbuffer_for_cpu(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len) sync_descbuffer_for_cpu() argument 294 sync_descbuffer_for_device(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len) sync_descbuffer_for_device() argument 305 free_descriptor_buffer(struct b43legacy_dmaring *ring, struct b43legacy_dmadesc_meta *meta, int irq_context) free_descriptor_buffer() argument 318 alloc_ringmemory(struct b43legacy_dmaring *ring) alloc_ringmemory() argument 330 free_ringmemory(struct b43legacy_dmaring *ring) free_ringmemory() argument 411 b43legacy_dma_mapping_error(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t buffersize, bool dma_to_device) b43legacy_dma_mapping_error() argument 440 setup_rx_descbuffer(struct b43legacy_dmaring *ring, struct b43legacy_dmadesc32 *desc, struct b43legacy_dmadesc_meta *meta, gfp_t gfp_flags) setup_rx_descbuffer() argument 490 alloc_initial_descbuffers(struct b43legacy_dmaring *ring) alloc_initial_descbuffers() argument 527 dmacontroller_setup(struct b43legacy_dmaring *ring) dmacontroller_setup() argument 569 dmacontroller_cleanup(struct b43legacy_dmaring *ring) dmacontroller_cleanup() argument 582 free_all_descbuffers(struct b43legacy_dmaring *ring) free_all_descbuffers() argument 629 struct b43legacy_dmaring *ring; b43legacy_setup_dmaring() local 728 b43legacy_destroy_dmaring(struct b43legacy_dmaring *ring) b43legacy_destroy_dmaring() argument 779 struct b43legacy_dmaring *ring; b43legacy_dma_init() local 873 generate_cookie(struct b43legacy_dmaring *ring, int slot) generate_cookie() argument 916 struct b43legacy_dmaring *ring = NULL; parse_cookie() local 946 dma_tx_fragment(struct b43legacy_dmaring *ring, struct sk_buff **in_skb) dma_tx_fragment() argument 1047 should_inject_overflow(struct b43legacy_dmaring *ring) should_inject_overflow() argument 1072 struct b43legacy_dmaring *ring; b43legacy_dma_tx() local 1125 struct b43legacy_dmaring *ring; b43legacy_dma_handle_txstatus() local 1241 dma_rx(struct b43legacy_dmaring *ring, int *slot) dma_rx() argument 1339 b43legacy_dma_rx(struct b43legacy_dmaring *ring) b43legacy_dma_rx() argument 1359 b43legacy_dma_tx_suspend_ring(struct b43legacy_dmaring *ring) b43legacy_dma_tx_suspend_ring() argument 1365 b43legacy_dma_tx_resume_ring(struct b43legacy_dmaring *ring) b43legacy_dma_tx_resume_ring() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/wireless/broadcom/b43legacy/ |
H A D | dma.c | 32 struct b43legacy_dmadesc32 *op32_idx2desc(struct b43legacy_dmaring *ring, in op32_idx2desc() argument 38 *meta = &(ring->meta[slot]); in op32_idx2desc() 39 desc = ring->descbase; in op32_idx2desc() 45 static void op32_fill_descriptor(struct b43legacy_dmaring *ring, in op32_fill_descriptor() argument 50 struct b43legacy_dmadesc32 *descbase = ring->descbase; in op32_fill_descriptor() 57 B43legacy_WARN_ON(!(slot >= 0 && slot < ring->nr_slots)); in op32_fill_descriptor() 62 addr |= ring->dev->dma.translation; in op32_fill_descriptor() 63 ctl = (bufsize - ring->frameoffset) in op32_fill_descriptor() 65 if (slot == ring->nr_slots - 1) in op32_fill_descriptor() 80 static void op32_poke_tx(struct b43legacy_dmaring *ring, in argument 86 op32_tx_suspend(struct b43legacy_dmaring *ring) op32_tx_suspend() argument 93 op32_tx_resume(struct b43legacy_dmaring *ring) op32_tx_resume() argument 100 op32_get_current_rxslot(struct b43legacy_dmaring *ring) op32_get_current_rxslot() argument 110 op32_set_current_rxslot(struct b43legacy_dmaring *ring, int slot) op32_set_current_rxslot() argument 117 free_slots(struct b43legacy_dmaring *ring) free_slots() argument 122 next_slot(struct b43legacy_dmaring *ring, int slot) next_slot() argument 131 update_max_used_slots(struct b43legacy_dmaring *ring, int current_used_slots) update_max_used_slots() argument 146 update_max_used_slots(struct b43legacy_dmaring *ring, int current_used_slots) update_max_used_slots() argument 153 request_slot(struct b43legacy_dmaring *ring) request_slot() argument 175 struct b43legacy_dmaring *ring; priority_to_txring() local 226 map_descbuffer(struct b43legacy_dmaring *ring, unsigned char *buf, size_t len, int tx) map_descbuffer() argument 246 unmap_descbuffer(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len, int tx) unmap_descbuffer() argument 262 sync_descbuffer_for_cpu(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len) sync_descbuffer_for_cpu() argument 273 sync_descbuffer_for_device(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len) sync_descbuffer_for_device() argument 284 free_descriptor_buffer(struct b43legacy_dmaring *ring, struct b43legacy_dmadesc_meta *meta, int irq_context) free_descriptor_buffer() argument 297 alloc_ringmemory(struct b43legacy_dmaring *ring) alloc_ringmemory() argument 309 free_ringmemory(struct b43legacy_dmaring *ring) free_ringmemory() argument 390 b43legacy_dma_mapping_error(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t buffersize, bool dma_to_device) b43legacy_dma_mapping_error() argument 419 setup_rx_descbuffer(struct b43legacy_dmaring *ring, struct b43legacy_dmadesc32 *desc, struct b43legacy_dmadesc_meta *meta, gfp_t gfp_flags) setup_rx_descbuffer() argument 469 alloc_initial_descbuffers(struct b43legacy_dmaring *ring) alloc_initial_descbuffers() argument 506 dmacontroller_setup(struct b43legacy_dmaring *ring) dmacontroller_setup() argument 548 dmacontroller_cleanup(struct b43legacy_dmaring *ring) dmacontroller_cleanup() argument 561 free_all_descbuffers(struct b43legacy_dmaring *ring) free_all_descbuffers() argument 608 struct b43legacy_dmaring *ring; b43legacy_setup_dmaring() local 707 b43legacy_destroy_dmaring(struct b43legacy_dmaring *ring) b43legacy_destroy_dmaring() argument 758 struct b43legacy_dmaring *ring; b43legacy_dma_init() local 852 generate_cookie(struct b43legacy_dmaring *ring, int slot) generate_cookie() argument 895 struct b43legacy_dmaring *ring = NULL; parse_cookie() local 925 dma_tx_fragment(struct b43legacy_dmaring *ring, struct sk_buff **in_skb) dma_tx_fragment() argument 1026 should_inject_overflow(struct b43legacy_dmaring *ring) should_inject_overflow() argument 1051 struct b43legacy_dmaring *ring; b43legacy_dma_tx() local 1104 struct b43legacy_dmaring *ring; b43legacy_dma_handle_txstatus() local 1220 dma_rx(struct b43legacy_dmaring *ring, int *slot) dma_rx() argument 1318 b43legacy_dma_rx(struct b43legacy_dmaring *ring) b43legacy_dma_rx() argument 1338 b43legacy_dma_tx_suspend_ring(struct b43legacy_dmaring *ring) b43legacy_dma_tx_suspend_ring() argument 1344 b43legacy_dma_tx_resume_ring(struct b43legacy_dmaring *ring) b43legacy_dma_tx_resume_ring() argument [all...] |
/kernel/linux/linux-6.6/drivers/bus/mhi/ep/ |
H A D | ring.c | 10 size_t mhi_ep_ring_addr2offset(struct mhi_ep_ring *ring, u64 ptr) in mhi_ep_ring_addr2offset() argument 12 return (ptr - ring->rbase) / sizeof(struct mhi_ring_element); in mhi_ep_ring_addr2offset() 15 static u32 mhi_ep_ring_num_elems(struct mhi_ep_ring *ring) in mhi_ep_ring_num_elems() argument 19 memcpy_fromio(&rlen, (void __iomem *) &ring->ring_ctx->generic.rlen, sizeof(u64)); in mhi_ep_ring_num_elems() 24 void mhi_ep_ring_inc_index(struct mhi_ep_ring *ring) in mhi_ep_ring_inc_index() argument 26 ring->rd_offset = (ring->rd_offset + 1) % ring->ring_size; in mhi_ep_ring_inc_index() 29 static int __mhi_ep_cache_ring(struct mhi_ep_ring *ring, size_t end) in __mhi_ep_cache_ring() argument 31 struct mhi_ep_cntrl *mhi_cntrl = ring in __mhi_ep_cache_ring() 79 mhi_ep_cache_ring(struct mhi_ep_ring *ring, u64 wr_ptr) mhi_ep_cache_ring() argument 96 mhi_ep_update_wr_offset(struct mhi_ep_ring *ring) mhi_ep_update_wr_offset() argument 106 mhi_ep_ring_add_element(struct mhi_ep_ring *ring, struct mhi_ring_element *el) mhi_ep_ring_add_element() argument 149 mhi_ep_ring_init(struct mhi_ep_ring *ring, enum mhi_ep_ring_type type, u32 id) mhi_ep_ring_init() argument 165 mhi_ep_ring_start(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring, union mhi_ep_ring_ctx *ctx) mhi_ep_ring_start() argument 207 mhi_ep_ring_reset(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring) mhi_ep_ring_reset() argument [all...] |
/kernel/linux/linux-6.6/drivers/thunderbolt/ |
H A D | nhi.c | 28 #define RING_TYPE(ring) ((ring)->is_tx ? "TX ring" : "RX ring") 53 static int ring_interrupt_index(const struct tb_ring *ring) in ring_interrupt_index() argument 55 int bit = ring->hop; in ring_interrupt_index() 56 if (!ring->is_tx) in ring_interrupt_index() 57 bit += ring->nhi->hop_count; in ring_interrupt_index() 61 static void nhi_mask_interrupt(struct tb_nhi *nhi, int mask, int ring) in nhi_mask_interrupt() argument 66 val = ioread32(nhi->iobase + REG_RING_INTERRUPT_BASE + ring); in nhi_mask_interrupt() 73 nhi_clear_interrupt(struct tb_nhi *nhi, int ring) nhi_clear_interrupt() argument 86 ring_interrupt_active(struct tb_ring *ring, bool active) ring_interrupt_active() argument 176 ring_desc_base(struct tb_ring *ring) ring_desc_base() argument 184 ring_options_base(struct tb_ring *ring) ring_options_base() argument 192 ring_iowrite_cons(struct tb_ring *ring, u16 cons) ring_iowrite_cons() argument 202 ring_iowrite_prod(struct tb_ring *ring, u16 prod) ring_iowrite_prod() argument 208 ring_iowrite32desc(struct tb_ring *ring, u32 value, u32 offset) ring_iowrite32desc() argument 213 ring_iowrite64desc(struct tb_ring *ring, u64 value, u32 offset) ring_iowrite64desc() argument 219 ring_iowrite32options(struct tb_ring *ring, u32 value, u32 offset) ring_iowrite32options() argument 224 ring_full(struct tb_ring *ring) ring_full() argument 229 ring_empty(struct tb_ring *ring) ring_empty() argument 239 ring_write_descriptors(struct tb_ring *ring) ring_write_descriptors() argument 275 struct tb_ring *ring = container_of(work, typeof(*ring), work); ring_work() local 323 __tb_ring_enqueue(struct tb_ring *ring, struct ring_frame *frame) __tb_ring_enqueue() argument 349 tb_ring_poll(struct tb_ring *ring) tb_ring_poll() argument 381 __ring_interrupt_mask(struct tb_ring *ring, bool mask) __ring_interrupt_mask() argument 397 __ring_interrupt(struct tb_ring *ring) __ring_interrupt() argument 417 tb_ring_poll_complete(struct tb_ring *ring) tb_ring_poll_complete() argument 430 ring_clear_msix(const struct tb_ring *ring) ring_clear_msix() argument 447 struct tb_ring *ring = data; ring_msix() local 459 ring_request_msix(struct tb_ring *ring, bool no_suspend) ring_request_msix() argument 493 ring_release_msix(struct tb_ring *ring) ring_release_msix() argument 504 nhi_alloc_hop(struct tb_nhi *nhi, struct tb_ring *ring) nhi_alloc_hop() argument 582 struct tb_ring *ring = NULL; tb_ring_alloc() local 680 tb_ring_start(struct tb_ring *ring) tb_ring_start() argument 764 tb_ring_stop(struct tb_ring *ring) tb_ring_stop() argument 809 tb_ring_free(struct tb_ring *ring) tb_ring_free() argument 912 struct tb_ring *ring; nhi_interrupt_work() local [all...] |
/third_party/mesa3d/src/freedreno/drm/ |
H A D | freedreno_ringbuffer.h | 128 void (*grow)(struct fd_ringbuffer *ring, uint32_t size); 129 void (*emit_reloc)(struct fd_ringbuffer *ring, const struct fd_reloc *reloc); 130 uint32_t (*emit_reloc_ring)(struct fd_ringbuffer *ring, 132 uint32_t (*cmd_count)(struct fd_ringbuffer *ring); 133 bool (*check_size)(struct fd_ringbuffer *ring); 134 void (*destroy)(struct fd_ringbuffer *ring); 158 fd_ringbuffer_del(struct fd_ringbuffer *ring) in fd_ringbuffer_del() argument 160 if (!p_atomic_dec_zero(&ring->refcnt)) in fd_ringbuffer_del() 163 ring->funcs->destroy(ring); in fd_ringbuffer_del() 167 fd_ringbuffer_ref(struct fd_ringbuffer *ring) fd_ringbuffer_ref() argument 174 fd_ringbuffer_grow(struct fd_ringbuffer *ring, uint32_t ndwords) fd_ringbuffer_grow() argument 185 fd_ringbuffer_check_size(struct fd_ringbuffer *ring) fd_ringbuffer_check_size() argument 191 fd_ringbuffer_emit(struct fd_ringbuffer *ring, uint32_t data) fd_ringbuffer_emit() argument 220 fd_ringbuffer_reloc(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_reloc() argument 226 fd_ringbuffer_cmd_count(struct fd_ringbuffer *ring) fd_ringbuffer_cmd_count() argument 234 fd_ringbuffer_emit_reloc_ring_full(struct fd_ringbuffer *ring, struct fd_ringbuffer *target, uint32_t cmd_idx) fd_ringbuffer_emit_reloc_ring_full() argument 248 fd_ringbuffer_size(struct fd_ringbuffer *ring) fd_ringbuffer_size() argument 259 fd_ringbuffer_empty(struct fd_ringbuffer *ring) fd_ringbuffer_empty() argument 268 OUT_RING(struct fd_ringbuffer *ring, uint32_t data) OUT_RING() argument 281 OUT_RELOC(struct fd_ringbuffer *ring, struct fd_bo *bo, uint32_t offset, uint64_t orval, int32_t shift) OUT_RELOC() argument [all...] |
/third_party/mesa3d/src/gallium/drivers/freedreno/a3xx/ |
H A D | fd3_gmem.c | 59 emit_mrt(struct fd_ringbuffer *ring, unsigned nr_bufs, in emit_mrt() argument 122 OUT_PKT0(ring, REG_A3XX_RB_MRT_BUF_INFO(i), 2); in emit_mrt() 123 OUT_RING(ring, A3XX_RB_MRT_BUF_INFO_COLOR_FORMAT(format) | in emit_mrt() 129 OUT_RING(ring, A3XX_RB_MRT_BUF_BASE_COLOR_BUF_BASE(base)); in emit_mrt() 131 OUT_RELOC(ring, rsc->bo, offset, 0, -1); in emit_mrt() 134 OUT_PKT0(ring, REG_A3XX_SP_FS_IMAGE_OUTPUT_REG(i), 1); in emit_mrt() 135 OUT_RING(ring, COND((i < nr_bufs) && bufs[i], in emit_mrt() 179 struct fd_ringbuffer *ring = batch->gmem; variable 192 OUT_PKT0(ring, REG_A3XX_RB_MODE_CONTROL, 2); 193 OUT_RING(ring, A3XX_RB_MODE_CONTROL_RENDER_MOD 337 struct fd_ringbuffer *ring = batch->gmem; emit_gmem2mem_surf() local 380 struct fd_ringbuffer *ring = batch->gmem; global() variable 507 struct fd_ringbuffer *ring = batch->gmem; emit_mem2gmem_surf() local 565 struct fd_ringbuffer *ring = batch->gmem; global() variable 753 struct fd_ringbuffer *ring = batch->gmem; global() variable 798 struct fd_ringbuffer *ring = batch->gmem; global() variable 830 struct fd_ringbuffer *ring = batch->gmem; global() variable 954 struct fd_ringbuffer *ring = batch->gmem; global() variable 994 struct fd_ringbuffer *ring = batch->gmem; fd3_emit_tile_prep() local 1010 struct fd_ringbuffer *ring = batch->gmem; global() variable [all...] |
/third_party/mesa3d/src/gallium/drivers/freedreno/a4xx/ |
H A D | fd4_emit.c | 56 fd4_emit_const_user(struct fd_ringbuffer *ring, in fd4_emit_const_user() argument 60 emit_const_asserts(ring, v, regid, sizedwords); in fd4_emit_const_user() 62 OUT_PKT3(ring, CP_LOAD_STATE4, 2 + sizedwords); in fd4_emit_const_user() 63 OUT_RING(ring, CP_LOAD_STATE4_0_DST_OFF(regid / 4) | in fd4_emit_const_user() 67 OUT_RING(ring, CP_LOAD_STATE4_1_EXT_SRC_ADDR(0) | in fd4_emit_const_user() 70 OUT_RING(ring, dwords[i]); in fd4_emit_const_user() 74 fd4_emit_const_bo(struct fd_ringbuffer *ring, in fd4_emit_const_bo() argument 83 emit_const_asserts(ring, v, regid, sizedwords); in fd4_emit_const_bo() 85 OUT_PKT3(ring, CP_LOAD_STATE4, 2); in fd4_emit_const_bo() 86 OUT_RING(ring, CP_LOAD_STATE4_0_DST_OF in fd4_emit_const_bo() 94 fd4_emit_const_ptrs(struct fd_ringbuffer *ring, gl_shader_stage type, uint32_t regid, uint32_t num, struct fd_bo **bos, uint32_t *offsets) fd4_emit_const_ptrs() argument 124 is_stateobj(struct fd_ringbuffer *ring) is_stateobj() argument 130 emit_const_ptrs(struct fd_ringbuffer *ring, const struct ir3_shader_variant *v, uint32_t dst_offset, uint32_t num, struct fd_bo **bos, uint32_t *offsets) emit_const_ptrs() argument 140 fd4_emit_cs_consts(const struct ir3_shader_variant *v, struct fd_ringbuffer *ring, struct fd_context *ctx, const struct pipe_grid_info *info) fd4_emit_cs_consts() argument 148 emit_textures(struct fd_context *ctx, struct fd_ringbuffer *ring, enum a4xx_state_block sb, struct fd_texture_stateobj *tex, const struct ir3_shader_variant *v) emit_textures() argument 367 fd4_emit_gmem_restore_tex(struct fd_ringbuffer *ring, unsigned nr_bufs, struct pipe_surface **bufs) fd4_emit_gmem_restore_tex() argument 474 emit_ssbos(struct fd_context *ctx, struct fd_ringbuffer *ring, enum a4xx_state_block sb, struct fd_shaderbuf_stateobj *so) emit_ssbos() argument 522 fd4_emit_vertex_bufs(struct fd_ringbuffer *ring, struct fd4_emit *emit) fd4_emit_vertex_bufs() argument 655 fd4_emit_state(struct fd_context *ctx, struct fd_ringbuffer *ring, struct fd4_emit *emit) fd4_emit_state() argument 923 fd4_emit_cs_state(struct fd_context *ctx, struct fd_ringbuffer *ring, struct ir3_shader_variant *cp) fd4_emit_cs_state() argument 953 fd4_emit_restore(struct fd_batch *batch, struct fd_ringbuffer *ring) fd4_emit_restore() argument 1100 fd4_mem_to_mem(struct fd_ringbuffer *ring, struct pipe_resource *dst, unsigned dst_off, struct pipe_resource *src, unsigned src_off, unsigned sizedwords) fd4_mem_to_mem() argument [all...] |
H A D | fd4_gmem.c | 60 emit_mrt(struct fd_ringbuffer *ring, unsigned nr_bufs, in emit_mrt() argument 124 OUT_PKT0(ring, REG_A4XX_RB_MRT_BUF_INFO(i), 3); in emit_mrt() 125 OUT_RING(ring, A4XX_RB_MRT_BUF_INFO_COLOR_FORMAT(format) | in emit_mrt() 131 OUT_RING(ring, base); in emit_mrt() 132 OUT_RING(ring, A4XX_RB_MRT_CONTROL3_STRIDE(stride)); in emit_mrt() 134 OUT_RELOC(ring, rsc->bo, offset, 0, 0); in emit_mrt() 139 OUT_RING(ring, A4XX_RB_MRT_CONTROL3_STRIDE(0)); in emit_mrt() 172 struct fd_ringbuffer *ring = batch->gmem; in emit_gmem2mem_surf() local 192 OUT_PKT0(ring, REG_A4XX_RB_COPY_CONTROL, 4); in emit_gmem2mem_surf() 193 OUT_RING(ring, A4XX_RB_COPY_CONTROL_MSAA_RESOLV in emit_gmem2mem_surf() 214 struct fd_ringbuffer *ring = batch->gmem; global() variable 320 struct fd_ringbuffer *ring = batch->gmem; emit_mem2gmem_surf() local 347 struct fd_ringbuffer *ring = batch->gmem; global() variable 543 struct fd_ringbuffer *ring = batch->gmem; global() variable 579 struct fd_ringbuffer *ring = batch->gmem; global() variable 616 struct fd_ringbuffer *ring = batch->gmem; global() variable 678 struct fd_ringbuffer *ring = batch->gmem; global() variable 722 struct fd_ringbuffer *ring = batch->gmem; fd4_emit_tile_prep() local 775 struct fd_ringbuffer *ring = batch->gmem; global() variable [all...] |
/kernel/linux/linux-5.10/drivers/thunderbolt/ |
H A D | nhi.c | 26 #define RING_TYPE(ring) ((ring)->is_tx ? "TX ring" : "RX ring") 39 static int ring_interrupt_index(const struct tb_ring *ring) in ring_interrupt_index() argument 41 int bit = ring->hop; in ring_interrupt_index() 42 if (!ring->is_tx) in ring_interrupt_index() 43 bit += ring->nhi->hop_count; in ring_interrupt_index() 48 * ring_interrupt_active() - activate/deactivate interrupts for a single ring 50 * ring 52 ring_interrupt_active(struct tb_ring *ring, bool active) ring_interrupt_active() argument 127 ring_desc_base(struct tb_ring *ring) ring_desc_base() argument 135 ring_options_base(struct tb_ring *ring) ring_options_base() argument 143 ring_iowrite_cons(struct tb_ring *ring, u16 cons) ring_iowrite_cons() argument 153 ring_iowrite_prod(struct tb_ring *ring, u16 prod) ring_iowrite_prod() argument 159 ring_iowrite32desc(struct tb_ring *ring, u32 value, u32 offset) ring_iowrite32desc() argument 164 ring_iowrite64desc(struct tb_ring *ring, u64 value, u32 offset) ring_iowrite64desc() argument 170 ring_iowrite32options(struct tb_ring *ring, u32 value, u32 offset) ring_iowrite32options() argument 175 ring_full(struct tb_ring *ring) ring_full() argument 180 ring_empty(struct tb_ring *ring) ring_empty() argument 190 ring_write_descriptors(struct tb_ring *ring) ring_write_descriptors() argument 226 struct tb_ring *ring = container_of(work, typeof(*ring), work); ring_work() local 274 __tb_ring_enqueue(struct tb_ring *ring, struct ring_frame *frame) __tb_ring_enqueue() argument 300 tb_ring_poll(struct tb_ring *ring) tb_ring_poll() argument 332 __ring_interrupt_mask(struct tb_ring *ring, bool mask) __ring_interrupt_mask() argument 348 __ring_interrupt(struct tb_ring *ring) __ring_interrupt() argument 368 tb_ring_poll_complete(struct tb_ring *ring) tb_ring_poll_complete() argument 383 struct tb_ring *ring = data; ring_msix() local 394 ring_request_msix(struct tb_ring *ring, bool no_suspend) ring_request_msix() argument 428 ring_release_msix(struct tb_ring *ring) ring_release_msix() argument 439 nhi_alloc_hop(struct tb_nhi *nhi, struct tb_ring *ring) nhi_alloc_hop() argument 501 struct tb_ring *ring = NULL; tb_ring_alloc() local 595 tb_ring_start(struct tb_ring *ring) tb_ring_start() argument 653 tb_ring_stop(struct tb_ring *ring) tb_ring_stop() argument 698 tb_ring_free(struct tb_ring *ring) tb_ring_free() argument 801 struct tb_ring *ring; nhi_interrupt_work() local [all...] |
/third_party/mesa3d/src/freedreno/computerator/ |
H A D | a4xx.c | 65 cs_program_emit(struct fd_ringbuffer *ring, struct kernel *kernel) in cs_program_emit() argument 72 OUT_PKT0(ring, REG_A4XX_UCHE_INVALIDATE0, 2); in cs_program_emit() 73 OUT_RING(ring, 0x00000000); in cs_program_emit() 74 OUT_RING(ring, 0x00000012); in cs_program_emit() 76 OUT_WFI(ring); in cs_program_emit() 78 OUT_PKT0(ring, REG_A4XX_SP_MODE_CONTROL, 1); in cs_program_emit() 79 OUT_RING(ring, 0x0000001e); in cs_program_emit() 81 OUT_PKT0(ring, REG_A4XX_TPL1_TP_MODE_CONTROL, 1); in cs_program_emit() 82 OUT_RING(ring, 0x00000038); in cs_program_emit() 84 OUT_PKT0(ring, REG_A4XX_TPL1_TP_FS_TEX_COUN in cs_program_emit() 159 emit_const(struct fd_ringbuffer *ring, struct kernel *kernel, uint32_t constid, uint32_t sizedwords, const uint32_t *dwords) emit_const() argument 202 cs_const_emit(struct fd_ringbuffer *ring, struct kernel *kernel, uint32_t grid[3]) cs_const_emit() argument 227 cs_ibo_emit(struct fd_ringbuffer *ring, struct fd_submit *submit, struct kernel *kernel) cs_ibo_emit() argument 280 struct fd_ringbuffer *ring = fd_submit_new_ringbuffer( a4xx_emit_grid() local [all...] |
/kernel/linux/linux-5.10/drivers/net/ethernet/apm/xgene/ |
H A D | xgene_enet_ring2.c | 12 static void xgene_enet_ring_init(struct xgene_enet_desc_ring *ring) in xgene_enet_ring_init() argument 14 u32 *ring_cfg = ring->state; in xgene_enet_ring_init() 15 u64 addr = ring->dma; in xgene_enet_ring_init() 17 if (xgene_enet_ring_owner(ring->id) == RING_OWNER_CPU) { in xgene_enet_ring_init() 18 ring_cfg[0] |= SET_VAL(X2_INTLINE, ring->id & RING_BUFNUM_MASK); in xgene_enet_ring_init() 27 ring_cfg[3] |= SET_VAL(RINGSIZE, ring->cfgsize) in xgene_enet_ring_init() 34 static void xgene_enet_ring_set_type(struct xgene_enet_desc_ring *ring) in xgene_enet_ring_set_type() argument 36 u32 *ring_cfg = ring->state; in xgene_enet_ring_set_type() 40 is_bufpool = xgene_enet_is_bufpool(ring->id); in xgene_enet_ring_set_type() 47 static void xgene_enet_ring_set_recombbuf(struct xgene_enet_desc_ring *ring) in xgene_enet_ring_set_recombbuf() argument 55 xgene_enet_ring_wr32(struct xgene_enet_desc_ring *ring, u32 offset, u32 data) xgene_enet_ring_wr32() argument 63 xgene_enet_write_ring_state(struct xgene_enet_desc_ring *ring) xgene_enet_write_ring_state() argument 75 xgene_enet_clr_ring_state(struct xgene_enet_desc_ring *ring) xgene_enet_clr_ring_state() argument 81 xgene_enet_set_ring_state(struct xgene_enet_desc_ring *ring) xgene_enet_set_ring_state() argument 95 xgene_enet_set_ring_id(struct xgene_enet_desc_ring *ring) xgene_enet_set_ring_id() argument 118 xgene_enet_clr_desc_ring_id(struct xgene_enet_desc_ring *ring) xgene_enet_clr_desc_ring_id() argument 127 xgene_enet_setup_ring( struct xgene_enet_desc_ring *ring) xgene_enet_setup_ring() argument 152 xgene_enet_clear_ring(struct xgene_enet_desc_ring *ring) xgene_enet_clear_ring() argument 158 xgene_enet_wr_cmd(struct xgene_enet_desc_ring *ring, int count) xgene_enet_wr_cmd() argument 171 xgene_enet_ring_len(struct xgene_enet_desc_ring *ring) xgene_enet_ring_len() argument 182 xgene_enet_setup_coalescing(struct xgene_enet_desc_ring *ring) xgene_enet_setup_coalescing() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/apm/xgene/ |
H A D | xgene_enet_ring2.c | 12 static void xgene_enet_ring_init(struct xgene_enet_desc_ring *ring) in xgene_enet_ring_init() argument 14 u32 *ring_cfg = ring->state; in xgene_enet_ring_init() 15 u64 addr = ring->dma; in xgene_enet_ring_init() 17 if (xgene_enet_ring_owner(ring->id) == RING_OWNER_CPU) { in xgene_enet_ring_init() 18 ring_cfg[0] |= SET_VAL(X2_INTLINE, ring->id & RING_BUFNUM_MASK); in xgene_enet_ring_init() 27 ring_cfg[3] |= SET_VAL(RINGSIZE, ring->cfgsize) in xgene_enet_ring_init() 34 static void xgene_enet_ring_set_type(struct xgene_enet_desc_ring *ring) in xgene_enet_ring_set_type() argument 36 u32 *ring_cfg = ring->state; in xgene_enet_ring_set_type() 40 is_bufpool = xgene_enet_is_bufpool(ring->id); in xgene_enet_ring_set_type() 47 static void xgene_enet_ring_set_recombbuf(struct xgene_enet_desc_ring *ring) in xgene_enet_ring_set_recombbuf() argument 55 xgene_enet_ring_wr32(struct xgene_enet_desc_ring *ring, u32 offset, u32 data) xgene_enet_ring_wr32() argument 63 xgene_enet_write_ring_state(struct xgene_enet_desc_ring *ring) xgene_enet_write_ring_state() argument 75 xgene_enet_clr_ring_state(struct xgene_enet_desc_ring *ring) xgene_enet_clr_ring_state() argument 81 xgene_enet_set_ring_state(struct xgene_enet_desc_ring *ring) xgene_enet_set_ring_state() argument 95 xgene_enet_set_ring_id(struct xgene_enet_desc_ring *ring) xgene_enet_set_ring_id() argument 118 xgene_enet_clr_desc_ring_id(struct xgene_enet_desc_ring *ring) xgene_enet_clr_desc_ring_id() argument 127 xgene_enet_setup_ring( struct xgene_enet_desc_ring *ring) xgene_enet_setup_ring() argument 152 xgene_enet_clear_ring(struct xgene_enet_desc_ring *ring) xgene_enet_clear_ring() argument 158 xgene_enet_wr_cmd(struct xgene_enet_desc_ring *ring, int count) xgene_enet_wr_cmd() argument 171 xgene_enet_ring_len(struct xgene_enet_desc_ring *ring) xgene_enet_ring_len() argument 182 xgene_enet_setup_coalescing(struct xgene_enet_desc_ring *ring) xgene_enet_setup_coalescing() argument [all...] |