/openbmc/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_ring.c | 94 ring->wptr_old = ring->wptr; in amdgpu_ring_alloc() 97 ring->funcs->begin_use(ring); in amdgpu_ring_alloc() 148 ring->funcs->insert_nop(ring, count); in amdgpu_ring_commit() 154 ring->funcs->end_use(ring); in amdgpu_ring_commit() 166 ring->wptr = ring->wptr_old; in amdgpu_ring_undo() 169 ring->funcs->end_use(ring); in amdgpu_ring_undo() 229 adev->rings[ring->idx] = ring; in amdgpu_ring_init() 336 ring->ring = amdgpu_mes_ctx_get_offs_cpu_addr(ring, offset); in amdgpu_ring_init() 344 (void **)&ring->ring); in amdgpu_ring_init() 377 (!ring->is_mes_queue && !(ring->adev->rings[ring->idx]))) in amdgpu_ring_fini() [all …]
|
H A D | jpeg_v1_0.c | 48 ring->ring[(*ptr)++] = 0; in jpeg_v1_0_decode_ring_patch_wreg() 51 ring->ring[(*ptr)++] = reg_offset; in jpeg_v1_0_decode_ring_patch_wreg() 54 ring->ring[(*ptr)++] = val; in jpeg_v1_0_decode_ring_patch_wreg() 77 ring->ring[ptr++] = PACKETJ(0, 0, 0, PACKETJ_TYPE2); in jpeg_v1_0_decode_ring_set_patch_ring() 78 ring->ring[ptr++] = 0; in jpeg_v1_0_decode_ring_set_patch_ring() 100 ring->ring[ptr++] = 0x01400200; in jpeg_v1_0_decode_ring_set_patch_ring() 102 ring->ring[ptr++] = val; in jpeg_v1_0_decode_ring_set_patch_ring() 106 ring->ring[ptr++] = 0; in jpeg_v1_0_decode_ring_set_patch_ring() 109 ring->ring[ptr++] = reg_offset; in jpeg_v1_0_decode_ring_set_patch_ring() 112 ring->ring[ptr++] = mask; in jpeg_v1_0_decode_ring_set_patch_ring() [all …]
|
H A D | amdgpu_fence.c | 157 am_fence->ring = ring; in amdgpu_fence_emit() 183 amdgpu_ring_emit_fence(ring, ring->fence_drv.gpu_addr, in amdgpu_fence_emit() 327 struct amdgpu_ring *ring = from_timer(ring, t, in amdgpu_fence_fallback() local 480 ring->fence_drv.cpu_addr = ring->fence_cpu_addr; in amdgpu_fence_driver_start_ring() 481 ring->fence_drv.gpu_addr = ring->fence_gpu_addr; in amdgpu_fence_driver_start_ring() 495 ring->name, ring->fence_drv.gpu_addr); in amdgpu_fence_driver_start_ring() 604 if (!ring || !ring->fence_drv.initialized) in amdgpu_fence_driver_hw_fini() 634 if (!ring || !ring->fence_drv.initialized || !ring->fence_drv.irq_src) in amdgpu_fence_driver_isr_toggle() 651 if (!ring || !ring->fence_drv.initialized) in amdgpu_fence_driver_sw_fini() 690 if (!ring || !ring->fence_drv.initialized) in amdgpu_fence_driver_hw_init() [all …]
|
H A D | amdgpu_ib.c | 168 if (!ring->sched.ready && !ring->is_mes_queue) { in amdgpu_ib_schedule() 207 ring->funcs->emit_mem_sync(ring); in amdgpu_ib_schedule() 211 ring->funcs->emit_wave_limit(ring, true); in amdgpu_ib_schedule() 214 ring->funcs->insert_start(ring); in amdgpu_ib_schedule() 219 amdgpu_ring_undo(ring); in amdgpu_ib_schedule() 298 amdgpu_ring_undo(ring); in amdgpu_ib_schedule() 303 ring->funcs->insert_end(ring); in amdgpu_ib_schedule() 314 ring->funcs->emit_wave_limit(ring, false); in amdgpu_ib_schedule() 418 if (!ring->sched.ready || !ring->funcs->test_ib) in amdgpu_ib_ring_tests() 439 ring->name); in amdgpu_ib_ring_tests() [all …]
|
H A D | amdgpu_ring_mux.c | 67 amdgpu_ring_write_multiple(real_ring, (void *)&ring->ring[start], in amdgpu_ring_mux_copy_pkt_from_sw_ring() 69 amdgpu_ring_write_multiple(real_ring, (void *)&ring->ring[0], end); in amdgpu_ring_mux_copy_pkt_from_sw_ring() 72 amdgpu_ring_write_multiple(real_ring, (void *)&ring->ring[start], end - start); in amdgpu_ring_mux_copy_pkt_from_sw_ring() 152 mux->real_ring = ring; in amdgpu_ring_mux_init() 207 e->ring = ring; in amdgpu_ring_mux_add_sw_ring() 341 amdgpu_ring_mux_set_wptr(mux, ring, ring->wptr); in amdgpu_sw_ring_set_wptr_gfx() 370 ring = mux->ring_entry[i].ring; in amdgpu_mcbp_scan() 429 offset = ring->wptr & ring->buf_mask; in amdgpu_sw_ring_ib_mark_offset() 537 chunk->end = ring->wptr; in amdgpu_ring_mux_end_ib() 558 ring = e->ring; in amdgpu_mcbp_handle_trailing_fence_irq() [all …]
|
/openbmc/linux/drivers/gpu/drm/radeon/ |
H A D | radeon_ring.c | 87 ring->ring_free_dw -= ring->wptr; in radeon_ring_free_size() 88 ring->ring_free_dw &= ring->ptr_mask; in radeon_ring_free_size() 128 ring->wptr_old = ring->wptr; in radeon_ring_alloc() 174 rdev->asic->ring[ring->idx]->hdp_flush(rdev, ring); in radeon_ring_commit() 177 radeon_ring_write(ring, ring->nop); in radeon_ring_commit() 214 ring->wptr = ring->wptr_old; in radeon_ring_undo() 329 (*data)[i] = ring->ring[ptr++]; in radeon_ring_backup() 410 (void **)&ring->ring); in radeon_ring_init() 445 ring->ring = NULL; in radeon_ring_fini() 492 ring->wptr, ring->wptr); in radeon_debugfs_ring_info_show() [all …]
|
H A D | evergreen_dma.c | 43 struct radeon_ring *ring = &rdev->ring[fence->ring]; in evergreen_dma_fence_ring_emit() local 49 radeon_ring_write(ring, fence->seq); in evergreen_dma_fence_ring_emit() 55 radeon_ring_write(ring, 1); in evergreen_dma_fence_ring_emit() 69 struct radeon_ring *ring = &rdev->ring[ib->ring]; in evergreen_dma_ring_ib_execute() local 72 u32 next_rptr = ring->wptr + 4; in evergreen_dma_ring_ib_execute() 77 radeon_ring_write(ring, ring->next_rptr_gpu_addr & 0xfffffffc); in evergreen_dma_ring_ib_execute() 78 radeon_ring_write(ring, upper_32_bits(ring->next_rptr_gpu_addr) & 0xff); in evergreen_dma_ring_ib_execute() 79 radeon_ring_write(ring, next_rptr); in evergreen_dma_ring_ib_execute() 85 while ((ring->wptr & 7) != 5) in evergreen_dma_ring_ib_execute() 115 struct radeon_ring *ring = &rdev->ring[ring_index]; in evergreen_copy_dma() local [all …]
|
H A D | radeon_fence.c | 147 (*fence)->ring = ring; in radeon_fence_emit() 296 else if (radeon_ring_is_lockup(rdev, ring, &rdev->ring[ring])) { in radeon_fence_check_lockup() 302 fence_drv->sync_seq[ring], ring); in radeon_fence_check_lockup() 358 unsigned ring = fence->ring; in radeon_fence_is_signaled() local 640 if (seq[ring] >= rdev->fence_drv[ring].sync_seq[ring]) { in radeon_fence_wait_next() 666 seq[ring] = rdev->fence_drv[ring].sync_seq[ring]; in radeon_fence_wait_empty() 730 emitted = rdev->fence_drv[ring].sync_seq[ring] in radeon_fence_count_emitted() 852 ring, rdev->fence_drv[ring].gpu_addr); in radeon_fence_driver_start_ring() 898 for (ring = 0; ring < RADEON_NUM_RINGS; ring++) { in radeon_fence_driver_init() 918 for (ring = 0; ring < RADEON_NUM_RINGS; ring++) { in radeon_fence_driver_fini() [all …]
|
H A D | r600_dma.c | 51 struct radeon_ring *ring) in r600_dma_get_rptr() argument 121 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_DMA_INDEX]; in r600_dma_resume() local 166 ring->wptr = 0; in r600_dma_resume() 171 ring->ready = true; in r600_dma_resume() 175 ring->ready = false; in r600_dma_resume() 270 ring->idx, tmp); in r600_dma_ring_test() 289 struct radeon_ring *ring = &rdev->ring[fence->ring]; in r600_dma_fence_ring_emit() local 406 struct radeon_ring *ring = &rdev->ring[ib->ring]; in r600_dma_ring_ib_execute() local 414 radeon_ring_write(ring, ring->next_rptr_gpu_addr & 0xfffffffc); in r600_dma_ring_ib_execute() 415 radeon_ring_write(ring, upper_32_bits(ring->next_rptr_gpu_addr) & 0xff); in r600_dma_ring_ib_execute() [all …]
|
H A D | uvd_v1_0.c | 84 struct radeon_ring *ring = &rdev->ring[fence->ring]; in uvd_v1_0_fence_emit() local 159 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_UVD_INDEX]; in uvd_v1_0_init() local 173 ring->ready = true; in uvd_v1_0_init() 176 ring->ready = false; in uvd_v1_0_init() 250 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_UVD_INDEX]; in uvd_v1_0_fini() local 253 ring->ready = false; in uvd_v1_0_fini() 265 struct radeon_ring *ring = &rdev->ring[R600_RING_TYPE_UVD_INDEX]; in uvd_v1_0_start() local 431 ring->idx, r); in uvd_v1_0_ring_test() 446 ring->idx, i); in uvd_v1_0_ring_test() 449 ring->idx, tmp); in uvd_v1_0_ring_test() [all …]
|
/openbmc/qemu/hw/net/rocker/ |
H A D | rocker_desc.c | 101 return ring->head == ring->tail; in desc_ring_empty() 137 ring->head = ring->tail = 0; in desc_ring_set_size() 144 ring->info[i].ring = ring; in desc_ring_set_size() 187 return desc_read(ring, ring->tail); in __desc_ring_fetch_desc() 196 return desc_read(ring, ring->tail); in desc_ring_fetch_desc() 202 DescInfo *info = &ring->info[ring->tail]; in __desc_ring_post_desc() 205 desc_write(ring, ring->tail); in __desc_ring_post_desc() 206 ring->tail = (ring->tail + 1) % ring->size; in __desc_ring_post_desc() 240 while (ring->head != ring->tail) { in ring_pump() 242 err = ring->consume(ring->r, info); in ring_pump() [all …]
|
/openbmc/linux/drivers/net/wireless/broadcom/b43legacy/ |
H A D | dma.c | 119 return (ring->nr_slots - ring->used_slots); in free_slots() 161 slot = next_slot(ring, ring->current_slot); in request_slot() 165 update_max_used_slots(ring, ring->used_slots); in request_slot() 205 return ring; in priority_to_txring() 312 ring->descbase, ring->dmabase); in free_ringmemory() 487 ring->used_slots = ring->nr_slots; in alloc_initial_descbuffers() 613 ring = kzalloc(sizeof(*ring), GFP_KERNEL); in b43legacy_setup_dmaring() 614 if (!ring) in b43legacy_setup_dmaring() 709 if (!ring) in b43legacy_destroy_dmaring() 780 if (!ring) in b43legacy_dma_init() [all …]
|
/openbmc/linux/drivers/soc/ti/ |
H A D | k3-ringacc.c | 318 ring->elm_size, ring->size, ring->mode, ring->proxy_id); in k3_ringacc_ring_dump() 616 ring->size * (4 << ring->elm_size), in k3_ringacc_ring_free() 772 ring->size * (4 << ring->elm_size), in k3_dmaring_cfg() 902 ring->state.free = ring->size - k3_ringacc_ring_read_occ(ring); in k3_ringacc_ring_get_free() 1060 ring->state.free, ring->state.windex, ring->state.occ, in k3_ringacc_ring_access_io() 1114 elem_idx = ring->size - (ring->state.occ - ring->state.windex); in k3_dmaring_fwd_pop() 1139 ring->state.rindex = (ring->state.rindex + 1) % ring->size; in k3_dmaring_reverse_pop() 1168 ring->state.windex = (ring->state.windex + 1) % ring->size; in k3_ringacc_ring_push_mem() 1186 ring->state.rindex = (ring->state.rindex + 1) % ring->size; in k3_ringacc_ring_pop_mem() 1251 if (ring->ops && ring->ops->pop_head) in k3_ringacc_ring_pop() [all …]
|
/openbmc/linux/drivers/bus/mhi/ep/ |
H A D | ring.c | 26 ring->rd_offset = (ring->rd_offset + 1) % ring->ring_size; in mhi_ep_ring_inc_index() 122 if (ring->rd_offset < ring->wr_offset) in mhi_ep_ring_add_element() 123 num_free_elem = (ring->wr_offset - ring->rd_offset) - 1; in mhi_ep_ring_add_element() 125 num_free_elem = ((ring->ring_size - ring->rd_offset) + ring->wr_offset) - 1; in mhi_ep_ring_add_element() 139 rp = cpu_to_le64(ring->rd_offset * sizeof(*el) + ring->rbase); in mhi_ep_ring_add_element() 151 ring->type = type; in mhi_ep_ring_init() 174 ring->ring_size = mhi_ep_ring_num_elems(ring); in mhi_ep_ring_start() 179 ring->er_index = le32_to_cpu(ring->ring_ctx->ch.erindex); in mhi_ep_ring_start() 182 ring->irq_vector = le32_to_cpu(ring->ring_ctx->ev.msivec); in mhi_ep_ring_start() 186 ring->rd_offset = mhi_ep_ring_addr2offset(ring, le64_to_cpu(val)); in mhi_ep_ring_start() [all …]
|
/openbmc/linux/drivers/net/wireless/broadcom/b43/ |
H A D | dma.c | 259 return (ring->nr_slots - ring->used_slots); in free_slots() 289 ring->tx ? "TX" : "RX", ring->index); in update_max_used_slots() 308 slot = next_slot(ring, ring->current_slot); in request_slot() 312 update_max_used_slots(ring, ring->used_slots); in request_slot() 435 ring->descbase, ring->dmabase); in free_ringmemory() 653 ring->used_slots = ring->nr_slots; in alloc_initial_descbuffers() 783 ring->ops->idx2desc(ring, i, &meta); in free_all_descbuffers() 841 ring = kzalloc(sizeof(*ring), GFP_KERNEL); in b43_setup_dmaring() 1279 ops->poke_tx(ring, next_slot(ring, slot)); in dma_tx_fragment() 1710 ring->ops->tx_suspend(ring); in b43_dma_tx_suspend_ring() [all …]
|
/openbmc/linux/drivers/net/ethernet/apm/xgene/ |
H A D | xgene_enet_ring2.c | 14 u32 *ring_cfg = ring->state; in xgene_enet_ring_init() 15 u64 addr = ring->dma; in xgene_enet_ring_init() 36 u32 *ring_cfg = ring->state; in xgene_enet_ring_set_type() 49 u32 *ring_cfg = ring->state; in xgene_enet_ring_set_recombbuf() 68 xgene_enet_ring_wr32(ring, CSR_RING_CONFIG, ring->num); in xgene_enet_write_ring_state() 71 ring->state[i]); in xgene_enet_write_ring_state() 77 memset(ring->state, 0, sizeof(ring->state)); in xgene_enet_clr_ring_state() 137 ring->slots = xgene_enet_get_numslots(ring->id, ring->size); in xgene_enet_setup_ring() 141 return ring; in xgene_enet_setup_ring() 144 xgene_enet_ring_wr32(ring, addr, ring->irq_mbox_dma >> 10); in xgene_enet_setup_ring() [all …]
|
/openbmc/linux/drivers/thunderbolt/ |
H A D | nhi.c | 148 RING_TYPE(ring), ring->hop, in ring_interrupt_active() 226 return ((ring->head + 1) % ring->size) == ring->tail; in ring_full() 231 return ring->head == ring->tail; in ring_empty() 256 ring->head = (ring->head + 1) % ring->size; in ring_write_descriptors() 304 ring->tail = (ring->tail + 1) % ring->size; in ring_work() 372 ring->tail = (ring->tail + 1) % ring->size; in tb_ring_poll() 498 free_irq(ring->irq, ring); in ring_release_msix() 694 RING_TYPE(ring), ring->hop); in tb_ring_start() 732 RING_TYPE(ring), ring->hop, ring->e2e_tx_hop); in tb_ring_start() 735 RING_TYPE(ring), ring->hop); in tb_ring_start() [all …]
|
/openbmc/linux/net/rds/ |
H A D | ib_ring.c | 68 memset(ring, 0, sizeof(*ring)); in rds_ib_ring_init() 69 ring->w_nr = nr; in rds_ib_ring_init() 70 rdsdebug("ring %p nr %u\n", ring, ring->w_nr); in rds_ib_ring_init() 78 diff = ring->w_alloc_ctr - (u32) atomic_read(&ring->w_free_ctr); in __rds_ib_ring_used() 89 ring->w_nr = nr; in rds_ib_ring_resize() 101 avail = ring->w_nr - __rds_ib_ring_used(ring); in rds_ib_ring_alloc() 110 ring->w_alloc_ptr = (ring->w_alloc_ptr + ret) % ring->w_nr; in rds_ib_ring_alloc() 119 ring->w_free_ptr = (ring->w_free_ptr + val) % ring->w_nr; in rds_ib_ring_free() 129 ring->w_alloc_ptr = (ring->w_alloc_ptr - val) % ring->w_nr; in rds_ib_ring_unalloc() 140 return __rds_ib_ring_used(ring) <= (ring->w_nr >> 1); in rds_ib_ring_low() [all …]
|
/openbmc/linux/drivers/gpu/drm/i915/gt/ |
H A D | intel_ring.c | 23 space = __intel_ring_space(ring->head, ring->emit, ring->size); in intel_ring_update_space() 73 intel_ring_reset(ring, ring->emit); in intel_ring_pin() 155 ring = kzalloc(sizeof(*ring), GFP_KERNEL); in intel_engine_create_ring() 156 if (!ring) in intel_engine_create_ring() 205 if (target->ring != ring) in wait_for_space() 210 ring->emit, ring->size)) in wait_for_space() 232 struct intel_ring *ring = rq->ring; in intel_ring_begin() local 246 const int remain_actual = ring->size - ring->emit; in intel_ring_begin() 291 GEM_BUG_ON(ring->emit + need_wrap > ring->size); in intel_ring_begin() 300 GEM_BUG_ON(ring->emit > ring->size - bytes); in intel_ring_begin() [all …]
|
H A D | selftest_ring.c | 10 ring = kzalloc(sizeof(*ring) + sz, GFP_KERNEL); in mock_ring() 11 if (!ring) in mock_ring() 14 kref_init(&ring->ref); in mock_ring() 15 ring->size = sz; in mock_ring() 16 ring->wrap = BITS_PER_TYPE(ring->size) - ilog2(sz); in mock_ring() 18 ring->vaddr = (void *)(ring + 1); in mock_ring() 23 return ring; in mock_ring() 28 kfree(ring); in mock_ring_free() 70 err |= check_ring_step(ring, intel_ring_wrap(ring, x + 1), step); in check_ring_offset() 71 err |= check_ring_step(ring, intel_ring_wrap(ring, x - 1), step); in check_ring_offset() [all …]
|
/openbmc/linux/drivers/net/ethernet/marvell/octeon_ep/ |
H A D | octep_regs_cn9k_pf.h | 72 #define CN93_SDP_R_IN_CONTROL(ring) \ argument 75 #define CN93_SDP_R_IN_ENABLE(ring) \ argument 78 #define CN93_SDP_R_IN_INSTR_BADDR(ring) \ argument 81 #define CN93_SDP_R_IN_INSTR_RSIZE(ring) \ argument 87 #define CN93_SDP_R_IN_CNTS(ring) \ argument 90 #define CN93_SDP_R_IN_INT_LEVELS(ring) \ argument 93 #define CN93_SDP_R_IN_PKT_CNT(ring) \ argument 96 #define CN93_SDP_R_IN_BYTE_CNT(ring) \ argument 223 #define CN93_SDP_R_ERR_TYPE(ring) \ argument 230 #define CN93_SDP_R_MBOX_ISM(ring) \ argument [all …]
|
/openbmc/linux/drivers/crypto/inside-secure/ |
H A D | safexcel_ring.c | 87 if ((ring->write == ring->read - ring->offset) || in safexcel_ring_next_cwptr() 88 (ring->read == ring->base && ring->write == ring->base_end)) in safexcel_ring_next_cwptr() 92 ring->write = ring->base; in safexcel_ring_next_cwptr() 93 ring->shwrite = ring->shbase; in safexcel_ring_next_cwptr() 95 ring->write += ring->offset; in safexcel_ring_next_cwptr() 111 if ((ring->write == ring->read - ring->offset) || in safexcel_ring_next_rwptr() 112 (ring->read == ring->base && ring->write == ring->base_end)) in safexcel_ring_next_rwptr() 116 ring->write = ring->base; in safexcel_ring_next_rwptr() 118 ring->write += ring->offset; in safexcel_ring_next_rwptr() 132 ring->read = ring->base; in safexcel_ring_next_rptr() [all …]
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx4/ |
H A D | en_tx.c | 104 ring, ring->buf, ring->size, ring->buf_size, in mlx4_en_create_tx_ring() 373 ring->cons += ring->last_nr_txbb; in mlx4_en_free_tx_buf() 375 ring->cons, ring->prod); in mlx4_en_free_tx_buf() 377 if ((u32) (ring->prod - ring->cons) > ring->size) { in mlx4_en_free_tx_buf() 383 while (ring->cons != ring->prod) { in mlx4_en_free_tx_buf() 384 ring->last_nr_txbb = ring->free_tx_desc(priv, ring, in mlx4_en_free_tx_buf() 385 ring->cons & ring->size_mask, in mlx4_en_free_tx_buf() 387 ring->cons += ring->last_nr_txbb; in mlx4_en_free_tx_buf() 1024 ((ring->prod & ring->size) ? in mlx4_en_xmit() 1060 ((ring->prod & ring->size) ? in mlx4_en_xmit() [all …]
|
/openbmc/linux/tools/testing/selftests/net/ |
H A D | psock_tpacket.c | 71 void (*walk)(int sock, struct ring *ring); argument 640 ring->mm_len = ring->req.tp_block_size * ring->req.tp_block_nr; in __v1_v2_fill() 661 ring->mm_len = ring->req3.tp_block_size * ring->req3.tp_block_nr; in __v3_fill() 697 ring->rd_len = ring->rd_num * sizeof(*ring->rd); in setup_ring() 698 ring->rd = malloc(ring->rd_len); in setup_ring() 719 memset(ring->rd, 0, ring->rd_len); in mmap_ring() 721 ring->rd[i].iov_base = ring->mm_space + (i * ring->flen); in mmap_ring() 722 ring->rd[i].iov_len = ring->flen; in mmap_ring() 748 ring->walk(sock, ring); in walk_ring() 805 struct ring ring; in test_tpacket() local [all …]
|
/openbmc/linux/drivers/crypto/intel/qat/qat_common/ |
H A D | adf_transport.c | 85 return atomic_read(ring->inflights) > ring->threshold; in adf_ring_nearly_full() 93 ADF_MAX_INFLIGHTS(ring->ring_size, ring->msg_size)) { in adf_send_message() 98 memcpy((void *)((uintptr_t)ring->base_addr + ring->tail), msg, in adf_send_message() 101 ring->tail = adf_modulo(ring->tail + in adf_send_message() 105 ring->bank->bank_number, ring->ring_number, in adf_send_message() 116 u32 *msg = (u32 *)((uintptr_t)ring->base_addr + ring->head); in adf_handle_response() 122 ring->head = adf_modulo(ring->head + in adf_handle_response() 126 msg = (u32 *)((uintptr_t)ring->base_addr + ring->head); in adf_handle_response() 131 ring->ring_number, ring->head); in adf_handle_response() 182 ring->base_addr, ring->dma_addr); in adf_init_ring() [all …]
|