Home
last modified time | relevance | path

Searched refs:vring (Results 1 – 25 of 38) sorted by relevance

12

/linux-6.3-rc2/drivers/platform/mellanox/
A Dmlxbf-tmfifo.c236 size = vring_size(vring->num, vring->align); in mlxbf_tmfifo_free_vrings()
238 vring->va, vring->dma); in mlxbf_tmfifo_free_vrings()
267 size = vring_size(vring->num, vring->align); in mlxbf_tmfifo_alloc_vrings()
309 const struct vring *vr = virtqueue_get_vring(vring->vq); in mlxbf_tmfifo_get_next_desc()
333 const struct vring *vr = virtqueue_get_vring(vring->vq); in mlxbf_tmfifo_release_desc()
355 const struct vring *vr = virtqueue_get_vring(vring->vq); in mlxbf_tmfifo_get_pkt_len()
437 const struct vring *vr = virtqueue_get_vring(vring->vq); in mlxbf_tmfifo_console_output_one()
687 vring->rem_len = vring->pkt_len; in mlxbf_tmfifo_rxtx_header()
688 fifo->vring[is_rx] = vring; in mlxbf_tmfifo_rxtx_header()
791 if (fifo->vring[is_rx] && fifo->vring[is_rx] != vring) in mlxbf_tmfifo_rxtx()
[all …]
/linux-6.3-rc2/drivers/net/wireless/ath/wil6210/
A Dtxrx.c122 vring->ctx = kcalloc(vring->size, sizeof(vring->ctx[0]), GFP_KERNEL); in wil_vring_alloc()
166 vring->va, &vring->pa, vring->ctx); in wil_vring_alloc()
200 vring_index, vring->size, vring->va, in wil_vring_free()
201 &vring->pa, vring->ctx); in wil_vring_free()
204 vring->size, vring->va, in wil_vring_free()
205 &vring->pa, vring->ctx); in wil_vring_free()
216 &vring->va[vring->swtail].tx.legacy; in wil_vring_free()
218 ctx = &vring->ctx[vring->swtail]; in wil_vring_free()
234 &vring->va[vring->swhead].rx.legacy; in wil_vring_free()
236 ctx = &vring->ctx[vring->swhead]; in wil_vring_free()
[all …]
A Dtrace.h212 TP_PROTO(u8 vring, u16 index, unsigned int len, u8 frags),
213 TP_ARGS(vring, index, len, frags),
215 __field(u8, vring)
221 __entry->vring = vring;
227 __entry->vring, __entry->index, __entry->len, __entry->frags)
231 TP_PROTO(u8 vring, u16 index, unsigned int len, u8 err),
232 TP_ARGS(vring, index, len, err),
234 __field(u8, vring)
240 __entry->vring = vring;
246 __entry->vring, __entry->index, __entry->len,
/linux-6.3-rc2/drivers/vdpa/ifcvf/
A Difcvf_main.c34 if (vring->cb.callback) in ifcvf_vq_intr_handler()
35 return vring->cb.callback(vring->cb.private); in ifcvf_vq_intr_handler()
43 struct vring_info *vring; in ifcvf_vqs_reused_intr_handler() local
47 vring = &vf->vring[i]; in ifcvf_vqs_reused_intr_handler()
48 if (vring->cb.callback) in ifcvf_vqs_reused_intr_handler()
49 vring->cb.callback(vring->cb.private); in ifcvf_vqs_reused_intr_handler()
79 devm_free_irq(&pdev->dev, vf->vring[i].irq, &vf->vring[i]); in ifcvf_free_per_vq_irq()
170 &vf->vring[i]); in ifcvf_request_per_vq_irq()
176 vf->vring[i].irq = irq; in ifcvf_request_per_vq_irq()
385 vf->vring[i].desc = 0; in ifcvf_reset_vring()
[all …]
A Difcvf_base.c141 hw->vring[i].notify_addr = hw->notify_base + in ifcvf_init_hw()
143 hw->vring[i].notify_pa = hw->notify_base_pa + in ifcvf_init_hw()
145 hw->vring[i].irq = -EINVAL; in ifcvf_init_hw()
326 hw->vring[qid].last_avail_idx = num; in ifcvf_set_vq_state()
339 if (!hw->vring[i].ready) in ifcvf_hw_enable()
343 vp_iowrite64_twopart(hw->vring[i].desc, &cfg->queue_desc_lo, in ifcvf_hw_enable()
345 vp_iowrite64_twopart(hw->vring[i].avail, &cfg->queue_avail_lo, in ifcvf_hw_enable()
347 vp_iowrite64_twopart(hw->vring[i].used, &cfg->queue_used_lo, in ifcvf_hw_enable()
349 vp_iowrite16(hw->vring[i].size, &cfg->queue_size); in ifcvf_hw_enable()
350 ifcvf_set_vq_state(hw, i, hw->vring[i].last_avail_idx); in ifcvf_hw_enable()
[all …]
/linux-6.3-rc2/drivers/virtio/
A Dvirtio_ring.c91 struct vring vring; member
125 } vring; member
570 desc = vq->split.vring.desc; in virtqueue_add_split()
986 num = vq->split.vring.num; in virtqueue_reinit_split()
1044 vring_split->vring.desc, in vring_free_split()
2649 if ((vq->packed_ring ? vq->packed.vring.num : vq->split.vring.num) == num) in virtqueue_resize()
2709 vq->packed.vring.desc, in vring_free()
2730 vq->split.vring.desc, in vring_free()
2794 return vq->packed_ring ? vq->packed.vring.num : vq->split.vring.num; in virtqueue_get_vring_size()
2894 ((char *)vq->split.vring.avail - (char *)vq->split.vring.desc); in virtqueue_get_avail_addr()
[all …]
/linux-6.3-rc2/drivers/vdpa/alibaba/
A Deni_vdpa.c41 struct eni_vring *vring; member
104 int irq = eni_vdpa->vring[idx].irq; in eni_vdpa_get_vq_irq()
122 &eni_vdpa->vring[i]); in eni_vdpa_free_irq()
141 struct eni_vring *vring = arg; in eni_vdpa_vq_handler() local
143 if (vring->cb.callback) in eni_vdpa_vq_handler()
144 return vring->cb.callback(vring->cb.private); in eni_vdpa_vq_handler()
184 &eni_vdpa->vring[i]); in eni_vdpa_request_irq()
190 eni_vdpa->vring[i].irq = irq; in eni_vdpa_request_irq()
286 eni_vdpa->vring[qid].cb = *cb; in eni_vdpa_set_vq_cb()
495 sizeof(*eni_vdpa->vring), in eni_vdpa_probe()
[all …]
/linux-6.3-rc2/drivers/vdpa/virtio_pci/
A Dvp_vdpa.c37 struct vp_vring *vring; member
102 int irq = vp_vdpa->vring[idx].irq; in vp_vdpa_get_vq_irq()
120 &vp_vdpa->vring[i]); in vp_vdpa_free_irq()
139 struct vp_vring *vring = arg; in vp_vdpa_vq_handler() local
141 if (vring->cb.callback) in vp_vdpa_vq_handler()
142 return vring->cb.callback(vring->cb.private); in vp_vdpa_vq_handler()
182 &vp_vdpa->vring[i]); in vp_vdpa_request_irq()
189 vp_vdpa->vring[i].irq = irq; in vp_vdpa_request_irq()
305 vp_vdpa->vring[qid].cb = *cb; in vp_vdpa_set_vq_cb()
521 if (!vp_vdpa->vring) { in vp_vdpa_dev_add()
[all …]
/linux-6.3-rc2/drivers/vhost/
A Dvringh.c49 &vrh->vring.avail->idx); in __vringh_get_head()
54 return vrh->vring.num; in __vringh_get_head()
70 head, vrh->vring.num); in __vringh_get_head()
241 *descs = vrh->vring.desc; in return_from_indirect()
301 descs = vrh->vring.desc; in __vringh_iov()
302 desc_max = vrh->vring.num; in __vringh_iov()
664 vrh->vring.num = num; in vringh_init_user()
702 *head = vrh->vring.num; in vringh_getdesc_user()
938 vrh->vring.num = num; in vringh_init_kern()
939 vrh->vring.desc = desc; in vringh_init_kern()
[all …]
/linux-6.3-rc2/tools/virtio/
A Dvringh_test.c116 err = get_user(avail_idx, &vrh->vring.avail->idx); in vringh_get_head()
126 i = vrh->last_avail_idx & (vrh->vring.num - 1); in vringh_get_head()
128 err = get_user(*head, &vrh->vring.avail->ring[i]); in vringh_get_head()
190 vrh.vring.desc, vrh.vring.avail, vrh.vring.used); in parallel_test()
496 vrh.vring.desc, vrh.vring.avail, vrh.vring.used); in main()
652 assert(vrh.vring.used->idx % RINGSIZE != 0); in main()
667 struct vring vring; in main() local
690 assert(vring.desc[0].addr == (unsigned long)d); in main()
694 vring.desc[0].flags |= VRING_DESC_F_INDIRECT; in main()
695 vring.desc[1].flags |= VRING_DESC_F_INDIRECT; in main()
[all …]
A Dvirtio_test.c34 struct vring vring; member
75 .desc_user_addr = (uint64_t)(unsigned long)info->vring.desc, in vhost_vq_setup()
76 .avail_user_addr = (uint64_t)(unsigned long)info->vring.avail, in vhost_vq_setup()
77 .used_user_addr = (uint64_t)(unsigned long)info->vring.used, in vhost_vq_setup()
82 state.num = info->vring.num; in vhost_vq_setup()
104 vring_init(&info->vring, num, info->ring, 4096); in vq_reset()
193 batch = (random() % vq->vring.num) + 1; in run_test()
236 vq_reset(vq, vq->vring.num, &dev->vdev); in run_test()
/linux-6.3-rc2/drivers/vdpa/vdpa_sim/
A Dvdpa_sim_blk.c92 ret = vringh_getdesc_iotlb(&vq->vring, &vq->out_iov, &vq->in_iov, in vdpasim_blk_handle_req()
115 bytes = vringh_iov_pull_iotlb(&vq->vring, &vq->out_iov, &hdr, in vdpasim_blk_handle_req()
147 bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, in vdpasim_blk_handle_req()
169 bytes = vringh_iov_pull_iotlb(&vq->vring, &vq->out_iov, in vdpasim_blk_handle_req()
182 bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, in vdpasim_blk_handle_req()
212 bytes = vringh_iov_pull_iotlb(&vq->vring, &vq->out_iov, &range, in vdpasim_blk_handle_req()
272 bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, &status, 1); in vdpasim_blk_handle_req()
284 vringh_complete_iotlb(&vq->vring, vq->head, pushed); in vdpasim_blk_handle_req()
315 if (vringh_need_notify_iotlb(&vq->vring) > 0) in vdpasim_blk_work()
316 vringh_notify(&vq->vring); in vdpasim_blk_work()
A Dvdpa_sim_net.c74 vringh_complete_iotlb(&vq->vring, vq->head, len); in vdpasim_net_complete()
80 if (vringh_need_notify_iotlb(&vq->vring) > 0) in vdpasim_net_complete()
81 vringh_notify(&vq->vring); in vdpasim_net_complete()
114 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->in_iov, in vdpasim_handle_ctrl_mac()
143 err = vringh_getdesc_iotlb(&cvq->vring, &cvq->in_iov, in vdpasim_handle_cvq()
173 write = vringh_iov_push_iotlb(&cvq->vring, &cvq->out_iov, in vdpasim_handle_cvq()
175 vringh_complete_iotlb(&cvq->vring, cvq->head, write); in vdpasim_handle_cvq()
220 err = vringh_getdesc_iotlb(&txq->vring, &txq->out_iov, NULL, in vdpasim_net_work()
229 read = vringh_iov_pull_iotlb(&txq->vring, &txq->out_iov, in vdpasim_net_work()
241 err = vringh_getdesc_iotlb(&rxq->vring, NULL, &rxq->in_iov, in vdpasim_net_work()
[all …]
A Dvdpa_sim.c47 static void vdpasim_vq_notify(struct vringh *vring) in vdpasim_vq_notify() argument
50 container_of(vring, struct vdpasim_virtqueue, vring); in vdpasim_vq_notify()
61 uint16_t last_avail_idx = vq->vring.last_avail_idx; in vdpasim_queue_ready()
63 vringh_init_iotlb(&vq->vring, vdpasim->features, vq->num, true, in vdpasim_queue_ready()
70 vq->vring.last_avail_idx = last_avail_idx; in vdpasim_queue_ready()
71 vq->vring.notify = vdpasim_vq_notify; in vdpasim_queue_ready()
86 vq->vring.notify = NULL; in vdpasim_vq_reset()
97 vringh_set_iotlb(&vdpasim->vqs[i].vring, &vdpasim->iommu[0], in vdpasim_do_reset()
281 struct vringh *vrh = &vq->vring; in vdpasim_set_vq_state()
295 struct vringh *vrh = &vq->vring; in vdpasim_get_vq_state()
[all …]
/linux-6.3-rc2/arch/arm/boot/dts/
A Dkeystone-k2hk.dtsi167 interrupt-names = "vring", "exception";
183 interrupt-names = "vring", "exception";
199 interrupt-names = "vring", "exception";
215 interrupt-names = "vring", "exception";
231 interrupt-names = "vring", "exception";
247 interrupt-names = "vring", "exception";
263 interrupt-names = "vring", "exception";
279 interrupt-names = "vring", "exception";
A Dkeystone-k2l.dtsi337 interrupt-names = "vring", "exception";
353 interrupt-names = "vring", "exception";
369 interrupt-names = "vring", "exception";
385 interrupt-names = "vring", "exception";
/linux-6.3-rc2/drivers/remoteproc/
A Dremoteproc_virtio.c119 if (id >= ARRAY_SIZE(rvdev->vring)) in rp_find_vq()
131 rvring = &rvdev->vring[id]; in rp_find_vq()
161 rsc->vring[id].da = mem->da; in rp_find_vq()
299 cfg = &rsc->vring[rsc->num_of_vrings]; in rproc_virtio_get()
317 cfg = &rsc->vring[rsc->num_of_vrings]; in rproc_virtio_set()
567 rproc_free_vring(&rvdev->vring[i]); in rproc_virtio_probe()
579 for (id = 0; id < ARRAY_SIZE(rvdev->vring); id++) { in rproc_virtio_remove()
580 rvring = &rvdev->vring[id]; in rproc_virtio_remove()
A Dremoteproc_core.c349 size, rsc->vring[i].da, in rproc_alloc_vring()
381 rsc->vring[i].notifyid = notifyid; in rproc_alloc_vring()
390 struct fw_rsc_vdev_vring *vring = &rsc->vring[i]; in rproc_parse_vring() local
394 i, vring->da, vring->num, vring->align); in rproc_parse_vring()
397 if (!vring->num || !vring->align) { in rproc_parse_vring()
399 vring->num, vring->align); in rproc_parse_vring()
403 rvring->num = vring->num; in rproc_parse_vring()
404 rvring->align = vring->align; in rproc_parse_vring()
413 int idx = rvring - rvring->rvdev->vring; in rproc_free_vring()
431 rsc->vring[idx].da = 0; in rproc_free_vring()
[all …]
A Dremoteproc_debugfs.c341 seq_printf(seq, " Device Address 0x%x\n", v->vring[j].da); in rproc_rsc_table_show()
342 seq_printf(seq, " Alignment %d\n", v->vring[j].align); in rproc_rsc_table_show()
343 seq_printf(seq, " Number of buffers %d\n", v->vring[j].num); in rproc_rsc_table_show()
344 seq_printf(seq, " Notify ID %d\n", v->vring[j].notifyid); in rproc_rsc_table_show()
346 v->vring[j].pa); in rproc_rsc_table_show()
A Dingenic_rproc.c156 u32 vring; in vpu_interrupt() local
158 vring = readl(vpu->aux_base + REG_AUX_MSG); in vpu_interrupt()
163 return rproc_vq_interrupt(rproc, vring); in vpu_interrupt()
/linux-6.3-rc2/include/uapi/linux/
A Dvirtio_ring.h158 struct vring { struct
199 static inline void vring_init(struct vring *vr, unsigned int num, void *p, in vring_init()
/linux-6.3-rc2/Documentation/devicetree/bindings/remoteproc/
A Dti,keystone-rproc.txt63 "vring" - interrupt for virtio based IPC
139 interrupt-names = "vring", "exception";
178 interrupt-names = "vring", "exception";
/linux-6.3-rc2/include/linux/
A Dvringh.h45 struct vring vring; member
A Dremoteproc.h311 struct fw_rsc_vdev_vring vring[]; member
652 struct rproc_vring vring[RVDEV_NUM_VRINGS]; member
/linux-6.3-rc2/drivers/vdpa/mlx5/net/
A Dmlx5_vnet.c1857 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, &vlan, sizeof(vlan)); in handle_ctrl_vlan()
1868 read = vringh_iov_pull_iotlb(&cvq->vring, &cvq->riov, &vlan, sizeof(vlan)); in handle_ctrl_vlan()
1939 vringh_complete_iotlb(&cvq->vring, cvq->head, write); in mlx5_cvq_kick_handler()
1943 if (vringh_need_notify_iotlb(&cvq->vring)) in mlx5_cvq_kick_handler()
1944 vringh_notify(&cvq->vring); in mlx5_cvq_kick_handler()
2026 static void mlx5_cvq_notify(struct vringh *vring) in mlx5_cvq_notify() argument
2028 struct mlx5_control_vq *cvq = container_of(vring, struct mlx5_control_vq, vring); in mlx5_cvq_notify()
2044 cvq->vring.notify = mlx5_cvq_notify; in set_cvq_ready()
2105 mvdev->cvq.vring.last_avail_idx = state->split.avail_index; in mlx5_vdpa_set_vq_state()
2132 state->split.avail_index = mvdev->cvq.vring.last_avail_idx; in mlx5_vdpa_get_vq_state()
[all …]

Completed in 56 milliseconds

12