Searched refs:ring (Results 1 - 25 of 804) sorted by relevance

1234567891011>>

/linux-master/net/rds/
H A Dib_ring.c66 void rds_ib_ring_init(struct rds_ib_work_ring *ring, u32 nr) argument
68 memset(ring, 0, sizeof(*ring));
69 ring->w_nr = nr;
70 rdsdebug("ring %p nr %u\n", ring, ring->w_nr);
73 static inline u32 __rds_ib_ring_used(struct rds_ib_work_ring *ring) argument
78 diff = ring->w_alloc_ctr - (u32) atomic_read(&ring
84 rds_ib_ring_resize(struct rds_ib_work_ring *ring, u32 nr) argument
92 __rds_ib_ring_empty(struct rds_ib_work_ring *ring) argument
97 rds_ib_ring_alloc(struct rds_ib_work_ring *ring, u32 val, u32 *pos) argument
117 rds_ib_ring_free(struct rds_ib_work_ring *ring, u32 val) argument
127 rds_ib_ring_unalloc(struct rds_ib_work_ring *ring, u32 val) argument
133 rds_ib_ring_empty(struct rds_ib_work_ring *ring) argument
138 rds_ib_ring_low(struct rds_ib_work_ring *ring) argument
147 rds_ib_ring_oldest(struct rds_ib_work_ring *ring) argument
156 rds_ib_ring_completed(struct rds_ib_work_ring *ring, u32 wr_id, u32 oldest) argument
[all...]
/linux-master/drivers/gpu/drm/radeon/
H A Dradeon_ring.c37 * 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)
60 radeon_ring_supports_scratch_reg(struct radeon_device *rdev, struct radeon_ring *ring) argument
81 radeon_ring_free_size(struct radeon_device *rdev, struct radeon_ring *ring) argument
107 radeon_ring_alloc(struct radeon_device *rdev, struct radeon_ring *ring, unsigned ndw) argument
143 radeon_ring_lock(struct radeon_device *rdev, struct radeon_ring *ring, unsigned ndw) argument
167 radeon_ring_commit(struct radeon_device *rdev, struct radeon_ring *ring, bool hdp_flush) argument
198 radeon_ring_unlock_commit(struct radeon_device *rdev, struct radeon_ring *ring, bool hdp_flush) argument
212 radeon_ring_undo(struct radeon_ring *ring) argument
225 radeon_ring_unlock_undo(struct radeon_device *rdev, struct radeon_ring *ring) argument
239 radeon_ring_lockup_update(struct radeon_device *rdev, struct radeon_ring *ring) argument
252 radeon_ring_test_lockup(struct radeon_device *rdev, struct radeon_ring *ring) argument
283 radeon_ring_backup(struct radeon_device *rdev, struct radeon_ring *ring, uint32_t **data) argument
347 radeon_ring_restore(struct radeon_device *rdev, struct radeon_ring *ring, unsigned size, uint32_t *data) argument
381 radeon_ring_init(struct radeon_device *rdev, struct radeon_ring *ring, unsigned ring_size, unsigned rptr_offs, u32 nop) argument
437 radeon_ring_fini(struct radeon_device *rdev, struct radeon_ring *ring) argument
467 struct radeon_ring *ring = m->private; local
547 radeon_debugfs_ring_init(struct radeon_device *rdev, struct radeon_ring *ring) argument
[all...]
H A Duvd_v3_1.c33 * @ring: radeon_ring pointer
37 * Emit a semaphore command (either wait or signal) to the UVD ring.
40 struct radeon_ring *ring,
46 radeon_ring_write(ring, PACKET0(UVD_SEMA_ADDR_LOW, 0));
47 radeon_ring_write(ring, (addr >> 3) & 0x000FFFFF);
49 radeon_ring_write(ring, PACKET0(UVD_SEMA_ADDR_HIGH, 0));
50 radeon_ring_write(ring, (addr >> 23) & 0x000FFFFF);
52 radeon_ring_write(ring, PACKET0(UVD_SEMA_CMD, 0));
53 radeon_ring_write(ring, 0x80 | (emit_wait ? 1 : 0));
39 uvd_v3_1_semaphore_emit(struct radeon_device *rdev, struct radeon_ring *ring, struct radeon_semaphore *semaphore, bool emit_wait) argument
H A Devergreen_dma.c31 * evergreen_dma_fence_ring_emit - emit a fence on the DMA ring
36 * Add a DMA fence packet to the ring to write
43 struct radeon_ring *ring = &rdev->ring[fence->ring]; local
44 u64 addr = rdev->fence_drv[fence->ring].gpu_addr;
46 radeon_ring_write(ring, DMA_PACKET(DMA_PACKET_FENCE, 0, 0));
47 radeon_ring_write(ring, addr & 0xfffffffc);
48 radeon_ring_write(ring, (upper_32_bits(addr) & 0xff));
49 radeon_ring_write(ring, fenc
69 struct radeon_ring *ring = &rdev->ring[ib->ring]; local
115 struct radeon_ring *ring = &rdev->ring[ring_index]; local
170 evergreen_dma_is_lockup(struct radeon_device *rdev, struct radeon_ring *ring) argument
[all...]
/linux-master/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_ring.c40 * 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) argument
125 amdgpu_ring_generic_pad_ib(struct amdgpu_ring *ring, struct amdgpu_ib *ib) argument
140 amdgpu_ring_commit(struct amdgpu_ring *ring) argument
164 amdgpu_ring_undo(struct amdgpu_ring *ring) 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) argument
372 amdgpu_ring_fini(struct amdgpu_ring *ring) 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) argument
433 amdgpu_ring_soft_recovery(struct amdgpu_ring *ring, unsigned int vmid, struct dma_fence *fence) argument
475 struct amdgpu_ring *ring = file_inode(f)->i_private; local
525 struct amdgpu_ring *ring = file_inode(f)->i_private; local
589 struct amdgpu_ring *ring = data; local
600 amdgpu_debugfs_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring) argument
636 amdgpu_ring_test_helper(struct amdgpu_ring *ring) argument
654 amdgpu_ring_to_mqd_prop(struct amdgpu_ring *ring, struct amdgpu_mqd_prop *prop) argument
686 amdgpu_ring_init_mqd(struct amdgpu_ring *ring) argument
704 amdgpu_ring_ib_begin(struct amdgpu_ring *ring) argument
710 amdgpu_ring_ib_end(struct amdgpu_ring *ring) argument
716 amdgpu_ring_ib_on_emit_cntl(struct amdgpu_ring *ring) argument
722 amdgpu_ring_ib_on_emit_ce(struct amdgpu_ring *ring) argument
728 amdgpu_ring_ib_on_emit_de(struct amdgpu_ring *ring) argument
734 amdgpu_ring_sched_ready(struct amdgpu_ring *ring) argument
[all...]
H A Dvcn_sw_ring.c27 void vcn_dec_sw_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, argument
32 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_FENCE);
33 amdgpu_ring_write(ring, addr);
34 amdgpu_ring_write(ring, upper_32_bits(addr));
35 amdgpu_ring_write(ring, seq);
36 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_TRAP);
39 void vcn_dec_sw_ring_insert_end(struct amdgpu_ring *ring) argument
41 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_END);
44 void vcn_dec_sw_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, argument
49 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_I
56 vcn_dec_sw_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg, uint32_t val, uint32_t mask) argument
65 vcn_dec_sw_ring_emit_vm_flush(struct amdgpu_ring *ring, uint32_t vmid, uint64_t pd_addr) argument
80 vcn_dec_sw_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg, uint32_t val) argument
[all...]
H A Dvcn_v1_0.h27 void vcn_v1_0_ring_end_use(struct amdgpu_ring *ring);
28 void vcn_v1_0_set_pg_for_begin_use(struct amdgpu_ring *ring, bool set_clocks);
H A Djpeg_v1_0.c36 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) argument
40 struct amdgpu_device *adev = ring->adev;
41 ring->ring[(*ptr)++] = PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_JRBC_EXTERNAL_REG_BASE), 0, 0, PACKETJ_TYPE0);
44 ring->ring[(*ptr)++] = 0;
45 ring->ring[(*ptr)++] = PACKETJ((reg_offset >> 2), 0, 0, PACKETJ_TYPE0);
47 ring
53 jpeg_v1_0_decode_ring_set_patch_ring(struct amdgpu_ring *ring, uint32_t ptr) argument
136 jpeg_v1_0_decode_ring_get_rptr(struct amdgpu_ring *ring) argument
150 jpeg_v1_0_decode_ring_get_wptr(struct amdgpu_ring *ring) argument
164 jpeg_v1_0_decode_ring_set_wptr(struct amdgpu_ring *ring) argument
178 jpeg_v1_0_decode_ring_insert_start(struct amdgpu_ring *ring) argument
197 jpeg_v1_0_decode_ring_insert_end(struct amdgpu_ring *ring) argument
219 jpeg_v1_0_decode_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, unsigned flags) argument
293 jpeg_v1_0_decode_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, struct amdgpu_ib *ib, uint32_t flags) argument
346 jpeg_v1_0_decode_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg, uint32_t val, uint32_t mask) argument
376 jpeg_v1_0_decode_ring_emit_vm_flush(struct amdgpu_ring *ring, unsigned vmid, uint64_t pd_addr) argument
391 jpeg_v1_0_decode_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg, uint32_t val) argument
412 jpeg_v1_0_decode_ring_nop(struct amdgpu_ring *ring, uint32_t count) argument
480 struct amdgpu_ring *ring; local
526 struct amdgpu_ring *ring = adev->jpeg.inst->ring_dec; local
597 jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring) argument
[all...]
H A Damdgpu_ib.c45 * command ring and the hw will fetch the commands from the IB
48 * put in IBs for execution by the requested ring.
105 * amdgpu_ib_schedule - schedule an IB (Indirect Buffer) on the ring
107 * @ring: ring index the IB is associated with
113 * Schedule an IB on the associated ring (all asics).
116 * On SI, there are two parallel engines fed from the primary ring,
123 * a CONST_IB), it will be put on the ring prior to the DE IB. Prior
126 int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned int num_ibs, argument
130 struct amdgpu_device *adev = ring
405 struct amdgpu_ring *ring = adev->rings[i]; local
[all...]
H A Dvcn_v2_0.h27 extern void vcn_v2_0_dec_ring_insert_start(struct amdgpu_ring *ring);
28 extern void vcn_v2_0_dec_ring_insert_end(struct amdgpu_ring *ring);
29 extern void vcn_v2_0_dec_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count);
30 extern void vcn_v2_0_dec_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq,
32 extern void vcn_v2_0_dec_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job,
34 extern void vcn_v2_0_dec_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg,
36 extern void vcn_v2_0_dec_ring_emit_vm_flush(struct amdgpu_ring *ring,
38 extern void vcn_v2_0_dec_ring_emit_wreg(struct amdgpu_ring *ring,
40 extern int vcn_v2_0_dec_ring_test_ring(struct amdgpu_ring *ring);
42 extern void vcn_v2_0_enc_ring_insert_end(struct amdgpu_ring *ring);
[all...]
H A Damdgpu_fence.c48 * are no longer in use by the associated ring on the GPU and
56 struct amdgpu_ring *ring; member in struct:amdgpu_fence
94 * @ring: ring the fence is associated with
99 static void amdgpu_fence_write(struct amdgpu_ring *ring, u32 seq) argument
101 struct amdgpu_fence_driver *drv = &ring->fence_drv;
110 * @ring: ring the fence is associated with
115 static u32 amdgpu_fence_read(struct amdgpu_ring *ring) argument
117 struct amdgpu_fence_driver *drv = &ring
139 amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f, struct amdgpu_job *job, unsigned int flags) argument
224 amdgpu_fence_emit_polling(struct amdgpu_ring *ring, uint32_t *s, uint32_t timeout) argument
255 amdgpu_fence_schedule_fallback(struct amdgpu_ring *ring) argument
272 amdgpu_fence_process(struct amdgpu_ring *ring) argument
327 struct amdgpu_ring *ring = from_timer(ring, t, local
342 amdgpu_fence_wait_empty(struct amdgpu_ring *ring) argument
375 amdgpu_fence_wait_polling(struct amdgpu_ring *ring, uint32_t wait_seq, signed long timeout) argument
395 amdgpu_fence_count_emitted(struct amdgpu_ring *ring) argument
415 amdgpu_fence_last_unsignaled_time_us(struct amdgpu_ring *ring) argument
446 amdgpu_fence_update_start_timestamp(struct amdgpu_ring *ring, uint32_t seq, ktime_t timestamp) argument
472 amdgpu_fence_driver_start_ring(struct amdgpu_ring *ring, struct amdgpu_irq_src *irq_src, unsigned int irq_type) argument
508 amdgpu_fence_driver_init_ring(struct amdgpu_ring *ring) argument
565 amdgpu_fence_need_ring_interrupt_restore(struct amdgpu_ring *ring) argument
603 struct amdgpu_ring *ring = adev->rings[i]; local
633 struct amdgpu_ring *ring = adev->rings[i]; local
650 struct amdgpu_ring *ring = adev->rings[i]; local
689 struct amdgpu_ring *ring = adev->rings[i]; local
708 amdgpu_fence_driver_clear_job_fences(struct amdgpu_ring *ring) argument
739 amdgpu_fence_driver_set_error(struct amdgpu_ring *ring, int error) argument
762 amdgpu_fence_driver_force_completion(struct amdgpu_ring *ring) argument
903 struct amdgpu_ring *ring = adev->rings[i]; local
[all...]
/linux-master/drivers/net/ethernet/marvell/octeon_ep_vf/
H A Doctep_vf_regs_cn9k.h33 #define CN93_VF_SDP_R_IN_CONTROL(ring) \
34 (CN93_VF_SDP_R_IN_CONTROL_START + ((ring) * CN93_VF_RING_OFFSET))
36 #define CN93_VF_SDP_R_IN_ENABLE(ring) \
37 (CN93_VF_SDP_R_IN_ENABLE_START + ((ring) * CN93_VF_RING_OFFSET))
39 #define CN93_VF_SDP_R_IN_INSTR_BADDR(ring) \
40 (CN93_VF_SDP_R_IN_INSTR_BADDR_START + ((ring) * CN93_VF_RING_OFFSET))
42 #define CN93_VF_SDP_R_IN_INSTR_RSIZE(ring) \
43 (CN93_VF_SDP_R_IN_INSTR_RSIZE_START + ((ring) * CN93_VF_RING_OFFSET))
45 #define CN93_VF_SDP_R_IN_INSTR_DBELL(ring) \
46 (CN93_VF_SDP_R_IN_INSTR_DBELL_START + ((ring) * CN93_VF_RING_OFFSE
[all...]
H A Doctep_vf_regs_cnxk.h34 #define CNXK_VF_SDP_R_ERR_TYPE(ring) \
35 (CNXK_VF_SDP_R_ERR_TYPE_START + ((ring) * CNXK_VF_RING_OFFSET))
37 #define CNXK_VF_SDP_R_IN_CONTROL(ring) \
38 (CNXK_VF_SDP_R_IN_CONTROL_START + ((ring) * CNXK_VF_RING_OFFSET))
40 #define CNXK_VF_SDP_R_IN_ENABLE(ring) \
41 (CNXK_VF_SDP_R_IN_ENABLE_START + ((ring) * CNXK_VF_RING_OFFSET))
43 #define CNXK_VF_SDP_R_IN_INSTR_BADDR(ring) \
44 (CNXK_VF_SDP_R_IN_INSTR_BADDR_START + ((ring) * CNXK_VF_RING_OFFSET))
46 #define CNXK_VF_SDP_R_IN_INSTR_RSIZE(ring) \
47 (CNXK_VF_SDP_R_IN_INSTR_RSIZE_START + ((ring) * CNXK_VF_RING_OFFSE
[all...]
/linux-master/drivers/bus/mhi/ep/
H A Dring.c10 size_t mhi_ep_ring_addr2offset(struct mhi_ep_ring *ring, u64 ptr) argument
12 return (ptr - ring->rbase) / sizeof(struct mhi_ring_element);
15 static u32 mhi_ep_ring_num_elems(struct mhi_ep_ring *ring) argument
19 memcpy_fromio(&rlen, (void __iomem *) &ring->ring_ctx->generic.rlen, sizeof(u64));
24 void mhi_ep_ring_inc_index(struct mhi_ep_ring *ring) argument
26 ring->rd_offset = (ring->rd_offset + 1) % ring->ring_size;
29 static int __mhi_ep_cache_ring(struct mhi_ep_ring *ring, size_t end) argument
31 struct mhi_ep_cntrl *mhi_cntrl = ring
79 mhi_ep_cache_ring(struct mhi_ep_ring *ring, u64 wr_ptr) argument
96 mhi_ep_update_wr_offset(struct mhi_ep_ring *ring) argument
106 mhi_ep_ring_add_element(struct mhi_ep_ring *ring, struct mhi_ring_element *el) argument
149 mhi_ep_ring_init(struct mhi_ep_ring *ring, enum mhi_ep_ring_type type, u32 id) argument
167 struct mhi_ep_ring *ring = container_of(work, struct mhi_ep_ring, intmodt_work.work); local
174 mhi_ep_ring_start(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring, union mhi_ep_ring_ctx *ctx) argument
221 mhi_ep_ring_reset(struct mhi_ep_cntrl *mhi_cntrl, struct mhi_ep_ring *ring) argument
[all...]
/linux-master/drivers/gpu/drm/i915/gt/
H A Dselftest_ring.c8 struct intel_ring *ring; local
10 ring = kzalloc(sizeof(*ring) + sz, GFP_KERNEL);
11 if (!ring)
14 kref_init(&ring->ref);
15 ring->size = sz;
16 ring->wrap = BITS_PER_TYPE(ring->size) - ilog2(sz);
17 ring->effective_size = sz;
18 ring
26 mock_ring_free(struct intel_ring *ring) argument
31 check_ring_direction(struct intel_ring *ring, u32 next, u32 prev, int expected) argument
52 check_ring_step(struct intel_ring *ring, u32 x, u32 step) argument
65 check_ring_offset(struct intel_ring *ring, u32 x, u32 step) argument
78 struct intel_ring *ring; local
[all...]
H A Dintel_ring.h21 unsigned int intel_ring_update_space(struct intel_ring *ring);
23 void __intel_ring_pin(struct intel_ring *ring);
24 int intel_ring_pin(struct intel_ring *ring, struct i915_gem_ww_ctx *ww);
25 void intel_ring_unpin(struct intel_ring *ring);
26 void intel_ring_reset(struct intel_ring *ring, u32 tail);
30 static inline struct intel_ring *intel_ring_get(struct intel_ring *ring) argument
32 kref_get(&ring->ref);
33 return ring;
36 static inline void intel_ring_put(struct intel_ring *ring) argument
38 kref_put(&ring
55 intel_ring_wrap(const struct intel_ring *ring, u32 pos) argument
60 intel_ring_direction(const struct intel_ring *ring, u32 next, u32 prev) argument
69 intel_ring_offset_valid(const struct intel_ring *ring, unsigned int pos) argument
91 assert_ring_tail_valid(const struct intel_ring *ring, unsigned int tail) argument
[all...]
/linux-master/drivers/soc/ti/
H A Dk3-ringacc.c114 int (*push_tail)(struct k3_ring *ring, void *elm);
115 int (*push_head)(struct k3_ring *ring, void *elm);
116 int (*pop_tail)(struct k3_ring *ring, void *elm);
117 int (*pop_head)(struct k3_ring *ring, void *elm);
147 * @elm_size: Size of the ring element
192 * @num_rings: number of ring in RA
193 * @rings_inuse: bitfield for ring usage tracking
205 * @dma_rings: indicate DMA ring (dual ring within BCDMA/PKTDMA)
240 static int k3_ringacc_ring_read_occ(struct k3_ring *ring) argument
245 k3_ringacc_ring_update_occ(struct k3_ring *ring) argument
255 k3_ringacc_ring_get_fifo_pos(struct k3_ring *ring) argument
261 k3_ringacc_get_elm_addr(struct k3_ring *ring, u32 idx) argument
310 k3_ringacc_ring_dump(struct k3_ring *ring) argument
463 k3_ringacc_ring_reset_sci(struct k3_ring *ring) argument
480 k3_ringacc_ring_reset(struct k3_ring *ring) argument
491 k3_ringacc_ring_reconfig_qmode_sci(struct k3_ring *ring, enum k3_ring_mode mode) argument
509 k3_ringacc_ring_reset_dma(struct k3_ring *ring, u32 occ) argument
568 k3_ringacc_ring_free_sci(struct k3_ring *ring) argument
584 k3_ringacc_ring_free(struct k3_ring *ring) argument
640 k3_ringacc_get_ring_id(struct k3_ring *ring) argument
649 k3_ringacc_get_tisci_dev_id(struct k3_ring *ring) argument
658 k3_ringacc_get_ring_irq_num(struct k3_ring *ring) argument
672 k3_ringacc_ring_cfg_sci(struct k3_ring *ring) argument
699 k3_dmaring_cfg(struct k3_ring *ring, struct k3_ring_cfg *cfg) argument
783 k3_ringacc_ring_cfg(struct k3_ring *ring, struct k3_ring_cfg *cfg) argument
887 k3_ringacc_ring_get_size(struct k3_ring *ring) argument
896 k3_ringacc_ring_get_free(struct k3_ring *ring) argument
908 k3_ringacc_ring_get_occ(struct k3_ring *ring) argument
917 k3_ringacc_ring_is_full(struct k3_ring *ring) argument
934 k3_ringacc_ring_cfg_proxy(struct k3_ring *ring, enum k3_ringacc_proxy_access_mode mode) argument
946 k3_ringacc_ring_access_proxy(struct k3_ring *ring, void *elem, enum k3_ringacc_access_mode access_mode) argument
994 k3_ringacc_ring_push_head_proxy(struct k3_ring *ring, void *elem) argument
1000 k3_ringacc_ring_push_tail_proxy(struct k3_ring *ring, void *elem) argument
1006 k3_ringacc_ring_pop_head_proxy(struct k3_ring *ring, void *elem) argument
1012 k3_ringacc_ring_pop_tail_proxy(struct k3_ring *ring, void *elem) argument
1018 k3_ringacc_ring_access_io(struct k3_ring *ring, void *elem, enum k3_ringacc_access_mode access_mode) argument
1065 k3_ringacc_ring_push_head_io(struct k3_ring *ring, void *elem) argument
1071 k3_ringacc_ring_push_io(struct k3_ring *ring, void *elem) argument
1077 k3_ringacc_ring_pop_io(struct k3_ring *ring, void *elem) argument
1083 k3_ringacc_ring_pop_tail_io(struct k3_ring *ring, void *elem) argument
1099 k3_dmaring_fwd_pop(struct k3_ring *ring, void *elem) argument
1129 k3_dmaring_reverse_pop(struct k3_ring *ring, void *elem) argument
1155 k3_ringacc_ring_push_mem(struct k3_ring *ring, void *elem) argument
1178 k3_ringacc_ring_pop_mem(struct k3_ring *ring, void *elem) argument
1195 k3_ringacc_ring_push(struct k3_ring *ring, void *elem) argument
1215 k3_ringacc_ring_push_head(struct k3_ring *ring, void *elem) argument
1235 k3_ringacc_ring_pop(struct k3_ring *ring, void *elem) argument
1258 k3_ringacc_ring_pop_tail(struct k3_ring *ring, void *elem) argument
1498 struct k3_ring *ring = &ringacc->rings[i]; local
[all...]
/linux-master/drivers/net/ethernet/apm/xgene/
H A Dxgene_enet_ring2.c12 static void xgene_enet_ring_init(struct xgene_enet_desc_ring *ring) argument
14 u32 *ring_cfg = ring->state;
15 u64 addr = ring->dma;
17 if (xgene_enet_ring_owner(ring->id) == RING_OWNER_CPU) {
18 ring_cfg[0] |= SET_VAL(X2_INTLINE, ring->id & RING_BUFNUM_MASK);
27 ring_cfg[3] |= SET_VAL(RINGSIZE, ring->cfgsize)
34 static void xgene_enet_ring_set_type(struct xgene_enet_desc_ring *ring) argument
36 u32 *ring_cfg = ring->state;
40 is_bufpool = xgene_enet_is_bufpool(ring->id);
47 static void xgene_enet_ring_set_recombbuf(struct xgene_enet_desc_ring *ring) argument
55 xgene_enet_ring_wr32(struct xgene_enet_desc_ring *ring, u32 offset, u32 data) argument
63 xgene_enet_write_ring_state(struct xgene_enet_desc_ring *ring) argument
75 xgene_enet_clr_ring_state(struct xgene_enet_desc_ring *ring) argument
81 xgene_enet_set_ring_state(struct xgene_enet_desc_ring *ring) argument
95 xgene_enet_set_ring_id(struct xgene_enet_desc_ring *ring) argument
118 xgene_enet_clr_desc_ring_id(struct xgene_enet_desc_ring *ring) argument
127 xgene_enet_setup_ring( struct xgene_enet_desc_ring *ring) argument
152 xgene_enet_clear_ring(struct xgene_enet_desc_ring *ring) argument
158 xgene_enet_wr_cmd(struct xgene_enet_desc_ring *ring, int count) argument
171 xgene_enet_ring_len(struct xgene_enet_desc_ring *ring) argument
182 xgene_enet_setup_coalescing(struct xgene_enet_desc_ring *ring) argument
[all...]
/linux-master/drivers/crypto/inside-secure/
H A Dsafexcel_ring.c21 /* Actual command descriptor ring */
32 /* Command descriptor shadow ring for storing additional token data */
78 struct safexcel_desc_ring *ring,
82 void *ptr = ring->write;
85 *atoken = ring->shwrite;
87 if ((ring->write == ring->read - ring->offset) ||
88 (ring->read == ring
77 safexcel_ring_next_cwptr(struct safexcel_crypto_priv *priv, struct safexcel_desc_ring *ring, bool first, struct safexcel_token **atoken) argument
102 safexcel_ring_next_rwptr(struct safexcel_crypto_priv *priv, struct safexcel_desc_ring *ring, struct result_data_desc **rtoken) argument
123 safexcel_ring_next_rptr(struct safexcel_crypto_priv *priv, struct safexcel_desc_ring *ring) argument
139 safexcel_ring_curr_rptr(struct safexcel_crypto_priv *priv, int ring) argument
147 safexcel_ring_first_rdr_index(struct safexcel_crypto_priv *priv, int ring) argument
155 safexcel_ring_rdr_rdesc_index(struct safexcel_crypto_priv *priv, int ring, struct safexcel_result_desc *rdesc) argument
164 safexcel_ring_rollback_wptr(struct safexcel_crypto_priv *priv, struct safexcel_desc_ring *ring) argument
[all...]
/linux-master/drivers/net/wireless/broadcom/b43legacy/
H A Ddma.c32 struct b43legacy_dmadesc32 *op32_idx2desc(struct b43legacy_dmaring *ring, argument
38 *meta = &(ring->meta[slot]);
39 desc = ring->descbase;
45 static void op32_fill_descriptor(struct b43legacy_dmaring *ring, argument
50 struct b43legacy_dmadesc32 *descbase = ring->descbase;
57 B43legacy_WARN_ON(!(slot >= 0 && slot < ring->nr_slots));
62 addr |= ring->dev->dma.translation;
63 ctl = (bufsize - ring->frameoffset)
65 if (slot == ring->nr_slots - 1)
80 static void op32_poke_tx(struct b43legacy_dmaring *ring, in argument
86 op32_tx_suspend(struct b43legacy_dmaring *ring) argument
93 op32_tx_resume(struct b43legacy_dmaring *ring) argument
100 op32_get_current_rxslot(struct b43legacy_dmaring *ring) argument
110 op32_set_current_rxslot(struct b43legacy_dmaring *ring, int slot) argument
117 free_slots(struct b43legacy_dmaring *ring) argument
122 next_slot(struct b43legacy_dmaring *ring, int slot) argument
131 update_max_used_slots(struct b43legacy_dmaring *ring, int current_used_slots) argument
146 update_max_used_slots(struct b43legacy_dmaring *ring, int current_used_slots) argument
153 request_slot(struct b43legacy_dmaring *ring) argument
175 struct b43legacy_dmaring *ring; local
226 map_descbuffer(struct b43legacy_dmaring *ring, unsigned char *buf, size_t len, int tx) argument
246 unmap_descbuffer(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len, int tx) argument
262 sync_descbuffer_for_cpu(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len) argument
273 sync_descbuffer_for_device(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t len) argument
284 free_descriptor_buffer(struct b43legacy_dmaring *ring, struct b43legacy_dmadesc_meta *meta, int irq_context) argument
297 alloc_ringmemory(struct b43legacy_dmaring *ring) argument
309 free_ringmemory(struct b43legacy_dmaring *ring) argument
390 b43legacy_dma_mapping_error(struct b43legacy_dmaring *ring, dma_addr_t addr, size_t buffersize, bool dma_to_device) argument
419 setup_rx_descbuffer(struct b43legacy_dmaring *ring, struct b43legacy_dmadesc32 *desc, struct b43legacy_dmadesc_meta *meta, gfp_t gfp_flags) argument
469 alloc_initial_descbuffers(struct b43legacy_dmaring *ring) argument
506 dmacontroller_setup(struct b43legacy_dmaring *ring) argument
548 dmacontroller_cleanup(struct b43legacy_dmaring *ring) argument
561 free_all_descbuffers(struct b43legacy_dmaring *ring) argument
608 struct b43legacy_dmaring *ring; local
707 b43legacy_destroy_dmaring(struct b43legacy_dmaring *ring) argument
758 struct b43legacy_dmaring *ring; local
852 generate_cookie(struct b43legacy_dmaring *ring, int slot) argument
895 struct b43legacy_dmaring *ring = NULL; local
925 dma_tx_fragment(struct b43legacy_dmaring *ring, struct sk_buff **in_skb) argument
1026 should_inject_overflow(struct b43legacy_dmaring *ring) argument
1051 struct b43legacy_dmaring *ring; local
1104 struct b43legacy_dmaring *ring; local
1220 dma_rx(struct b43legacy_dmaring *ring, int *slot) argument
1318 b43legacy_dma_rx(struct b43legacy_dmaring *ring) argument
1338 b43legacy_dma_tx_suspend_ring(struct b43legacy_dmaring *ring) argument
1344 b43legacy_dma_tx_resume_ring(struct b43legacy_dmaring *ring) argument
[all...]
/linux-master/drivers/thunderbolt/
H A Dnhi.c28 #define RING_TYPE(ring) ((ring)->is_tx ? "TX ring" : "RX ring")
53 static int ring_interrupt_index(const struct tb_ring *ring) argument
55 int bit = ring->hop;
56 if (!ring->is_tx)
57 bit += ring->nhi->hop_count;
61 static void nhi_mask_interrupt(struct tb_nhi *nhi, int mask, int ring) argument
66 val = ioread32(nhi->iobase + REG_RING_INTERRUPT_BASE + ring);
73 nhi_clear_interrupt(struct tb_nhi *nhi, int ring) argument
86 ring_interrupt_active(struct tb_ring *ring, bool active) argument
176 ring_desc_base(struct tb_ring *ring) argument
184 ring_options_base(struct tb_ring *ring) argument
192 ring_iowrite_cons(struct tb_ring *ring, u16 cons) argument
202 ring_iowrite_prod(struct tb_ring *ring, u16 prod) argument
208 ring_iowrite32desc(struct tb_ring *ring, u32 value, u32 offset) argument
213 ring_iowrite64desc(struct tb_ring *ring, u64 value, u32 offset) argument
219 ring_iowrite32options(struct tb_ring *ring, u32 value, u32 offset) argument
224 ring_full(struct tb_ring *ring) argument
229 ring_empty(struct tb_ring *ring) argument
239 ring_write_descriptors(struct tb_ring *ring) argument
275 struct tb_ring *ring = container_of(work, typeof(*ring), work); local
323 __tb_ring_enqueue(struct tb_ring *ring, struct ring_frame *frame) argument
349 tb_ring_poll(struct tb_ring *ring) argument
381 __ring_interrupt_mask(struct tb_ring *ring, bool mask) argument
397 __ring_interrupt(struct tb_ring *ring) argument
417 tb_ring_poll_complete(struct tb_ring *ring) argument
430 ring_clear_msix(const struct tb_ring *ring) argument
447 struct tb_ring *ring = data; local
459 ring_request_msix(struct tb_ring *ring, bool no_suspend) argument
493 ring_release_msix(struct tb_ring *ring) argument
504 nhi_alloc_hop(struct tb_nhi *nhi, struct tb_ring *ring) argument
582 struct tb_ring *ring = NULL; local
680 tb_ring_start(struct tb_ring *ring) argument
764 tb_ring_stop(struct tb_ring *ring) argument
809 tb_ring_free(struct tb_ring *ring) argument
912 struct tb_ring *ring; local
[all...]
/linux-master/drivers/net/ethernet/marvell/octeon_ep/
H A Doctep_regs_cnxk_pf.h73 #define CNXK_SDP_R_IN_CONTROL(ring) \
74 (CNXK_SDP_R_IN_CONTROL_START + ((ring) * CNXK_RING_OFFSET))
76 #define CNXK_SDP_R_IN_ENABLE(ring) \
77 (CNXK_SDP_R_IN_ENABLE_START + ((ring) * CNXK_RING_OFFSET))
79 #define CNXK_SDP_R_IN_INSTR_BADDR(ring) \
80 (CNXK_SDP_R_IN_INSTR_BADDR_START + ((ring) * CNXK_RING_OFFSET))
82 #define CNXK_SDP_R_IN_INSTR_RSIZE(ring) \
83 (CNXK_SDP_R_IN_INSTR_RSIZE_START + ((ring) * CNXK_RING_OFFSET))
85 #define CNXK_SDP_R_IN_INSTR_DBELL(ring) \
86 (CNXK_SDP_R_IN_INSTR_DBELL_START + ((ring) * CNXK_RING_OFFSE
[all...]
/linux-master/drivers/gpu/drm/msm/
H A Dmsm_ringbuffer.c17 struct msm_fence_context *fctx = submit->ring->fctx;
36 /* TODO move submit path over to using a per-ring lock.. */
62 struct msm_ringbuffer *ring; local
70 ring = kzalloc(sizeof(*ring), GFP_KERNEL);
71 if (!ring) {
76 ring->gpu = gpu;
77 ring->id = id;
79 ring->start = msm_gem_kernel_new(gpu->dev, MSM_GPU_RINGBUFFER_SZ,
81 gpu->aspace, &ring
124 msm_ringbuffer_destroy(struct msm_ringbuffer *ring) argument
[all...]
/linux-master/drivers/net/wireless/broadcom/b43/
H A Ddma.c72 struct b43_dmadesc_generic *op32_idx2desc(struct b43_dmaring *ring, argument
78 *meta = &(ring->meta[slot]);
79 desc = ring->descbase;
85 static void op32_fill_descriptor(struct b43_dmaring *ring, argument
90 struct b43_dmadesc32 *descbase = ring->descbase;
97 B43_WARN_ON(!(slot >= 0 && slot < ring->nr_slots));
99 addr = b43_dma_address(&ring->dev->dma, dmaaddr, B43_DMA_ADDR_LOW);
100 addrext = b43_dma_address(&ring->dev->dma, dmaaddr, B43_DMA_ADDR_EXT);
103 if (slot == ring->nr_slots - 1)
118 static void op32_poke_tx(struct b43_dmaring *ring, in argument
124 op32_tx_suspend(struct b43_dmaring *ring) argument
130 op32_tx_resume(struct b43_dmaring *ring) argument
136 op32_get_current_rxslot(struct b43_dmaring *ring) argument
146 op32_set_current_rxslot(struct b43_dmaring *ring, int slot) argument
164 op64_idx2desc(struct b43_dmaring *ring, int slot, struct b43_dmadesc_meta **meta) argument
177 op64_fill_descriptor(struct b43_dmaring *ring, struct b43_dmadesc_generic *desc, dma_addr_t dmaaddr, u16 bufsize, int start, int end, int irq) argument
213 op64_poke_tx(struct b43_dmaring *ring, int slot) argument
219 op64_tx_suspend(struct b43_dmaring *ring) argument
225 op64_tx_resume(struct b43_dmaring *ring) argument
231 op64_get_current_rxslot(struct b43_dmaring *ring) argument
241 op64_set_current_rxslot(struct b43_dmaring *ring, int slot) argument
257 free_slots(struct b43_dmaring *ring) argument
262 next_slot(struct b43_dmaring *ring, int slot) argument
270 prev_slot(struct b43_dmaring *ring, int slot) argument
279 update_max_used_slots(struct b43_dmaring *ring, int current_used_slots) argument
294 update_max_used_slots(struct b43_dmaring *ring, int current_used_slots) argument
300 request_slot(struct b43_dmaring *ring) argument
347 map_descbuffer(struct b43_dmaring *ring, unsigned char *buf, size_t len, int tx) argument
364 unmap_descbuffer(struct b43_dmaring *ring, dma_addr_t addr, size_t len, int tx) argument
377 sync_descbuffer_for_cpu(struct b43_dmaring *ring, dma_addr_t addr, size_t len) argument
386 sync_descbuffer_for_device(struct b43_dmaring *ring, dma_addr_t addr, size_t len) argument
395 free_descriptor_buffer(struct b43_dmaring *ring, struct b43_dmadesc_meta *meta) argument
407 alloc_ringmemory(struct b43_dmaring *ring) argument
430 free_ringmemory(struct b43_dmaring *ring) argument
538 b43_dma_mapping_error(struct b43_dmaring *ring, dma_addr_t addr, size_t buffersize, bool dma_to_device) argument
570 b43_rx_buffer_is_poisoned(struct b43_dmaring *ring, struct sk_buff *skb) argument
577 b43_poison_rx_buffer(struct b43_dmaring *ring, struct sk_buff *skb) argument
592 setup_rx_descbuffer(struct b43_dmaring *ring, struct b43_dmadesc_generic *desc, struct b43_dmadesc_meta *meta, gfp_t gfp_flags) argument
636 alloc_initial_descbuffers(struct b43_dmaring *ring) argument
672 dmacontroller_setup(struct b43_dmaring *ring) argument
753 dmacontroller_cleanup(struct b43_dmaring *ring) argument
774 free_all_descbuffers(struct b43_dmaring *ring) argument
837 struct b43_dmaring *ring; local
966 b43_destroy_dmaring(struct b43_dmaring *ring, const char *ringname) argument
1136 generate_cookie(struct b43_dmaring *ring, int slot) argument
1160 struct b43_dmaring *ring = NULL; local
1189 dma_tx_fragment(struct b43_dmaring *ring, struct sk_buff *skb) argument
1288 should_inject_overflow(struct b43_dmaring *ring) argument
1313 struct b43_dmaring *ring; local
1342 struct b43_dmaring *ring; local
1418 struct b43_dmaring *ring; local
1582 dma_rx(struct b43_dmaring *ring, int *slot) argument
1668 b43_dma_handle_rx_overflow(struct b43_dmaring *ring) argument
1687 b43_dma_rx(struct b43_dmaring *ring) argument
1707 b43_dma_tx_suspend_ring(struct b43_dmaring *ring) argument
1713 b43_dma_tx_resume_ring(struct b43_dmaring *ring) argument
[all...]
/linux-master/virt/kvm/
H A Ddirty_ring.c3 * KVM dirty ring implementation
38 static u32 kvm_dirty_ring_used(struct kvm_dirty_ring *ring) argument
40 return READ_ONCE(ring->dirty_index) - READ_ONCE(ring->reset_index);
43 static bool kvm_dirty_ring_soft_full(struct kvm_dirty_ring *ring) argument
45 return kvm_dirty_ring_used(ring) >= ring->soft_limit;
48 static bool kvm_dirty_ring_full(struct kvm_dirty_ring *ring) argument
50 return kvm_dirty_ring_used(ring) >= ring
74 kvm_dirty_ring_alloc(struct kvm_dirty_ring *ring, int index, u32 size) argument
104 kvm_dirty_ring_reset(struct kvm *kvm, struct kvm_dirty_ring *ring) argument
171 struct kvm_dirty_ring *ring = &vcpu->dirty_ring; local
213 kvm_dirty_ring_get_page(struct kvm_dirty_ring *ring, u32 offset) argument
218 kvm_dirty_ring_free(struct kvm_dirty_ring *ring) argument
[all...]

Completed in 400 milliseconds

1234567891011>>