Home
last modified time | relevance | path

Searched refs:virtqueue (Results 1 – 21 of 21) sorted by relevance

/freebsd/sys/dev/virtio/
H A Dvirtqueue.h32 struct virtqueue;
56 struct virtqueue **vqai_vq;
70 struct vq_alloc_info *info, struct virtqueue **vqp);
71 void *virtqueue_drain(struct virtqueue *vq, int *last);
72 void virtqueue_free(struct virtqueue *vq);
73 int virtqueue_reinit(struct virtqueue *vq, uint16_t size);
75 int virtqueue_intr_filter(struct virtqueue *vq);
76 void virtqueue_intr(struct virtqueue *vq);
77 int virtqueue_enable_intr(struct virtqueue *vq);
78 int virtqueue_postpone_intr(struct virtqueue *vq, vq_postpone_t hint);
[all …]
H A Dvirtqueue.c57 struct virtqueue { struct
131 static int virtqueue_init_indirect(struct virtqueue *vq, int);
132 static void virtqueue_free_indirect(struct virtqueue *vq);
133 static void virtqueue_init_indirect_list(struct virtqueue *,
136 static void vq_ring_init(struct virtqueue *);
137 static void vq_ring_update_avail(struct virtqueue *, uint16_t);
138 static uint16_t vq_ring_enqueue_segments(struct virtqueue *,
140 static bool vq_ring_use_indirect(struct virtqueue *, int);
141 static void vq_ring_enqueue_indirect(struct virtqueue *, void *,
143 static int vq_ring_enable_interrupt(struct virtqueue *, uint16_t);
[all …]
/freebsd/sys/dev/virtio/console/
H A Dvirtio_console.c80 struct virtqueue *vtcport_invq;
81 struct virtqueue *vtcport_outvq;
99 struct virtqueue *vcsp_invq;
100 struct virtqueue *vcsp_outvq;
121 struct virtqueue *vtcon_ctrl_rxvq;
122 struct virtqueue *vtcon_ctrl_txvq;
201 static void vtcon_port_drain_bufs(struct virtqueue *);
570 struct virtqueue *vq; in vtcon_destroy_ports()
613 struct virtqueue *vq; in vtcon_ctrl_event_enqueue()
659 struct virtqueue *vq; in vtcon_ctrl_event_populate()
[all …]
/freebsd/sys/dev/virtio/scsi/
H A Dvirtio_scsivar.h61 struct virtqueue *vtscsi_control_vq;
62 struct virtqueue *vtscsi_event_vq;
63 struct virtqueue *vtscsi_request_vq;
160 * (SCSI) virtqueue is full, not caring if the control (TMF)
161 * virtqueue unlikely gets full. However, both queues share the
H A Dvirtio_scsi.c61 #include <dev/virtio/virtqueue.h>
162 static void vtscsi_drain_vq(struct vtscsi_softc *, struct virtqueue *);
175 static void vtscsi_complete_vq(struct vtscsi_softc *, struct virtqueue *);
205 * control virtqueue). But this isn't very useful if things really go off
338 device_printf(dev, "cannot setup virtqueue interrupts\n"); in vtscsi_attach()
1099 struct virtqueue *vq; in vtscsi_execute_scsi_cmd()
1431 struct virtqueue *vq; in vtscsi_execute_ctrl_req()
1441 * Return EAGAIN when the virtqueue does not have enough in vtscsi_execute_ctrl_req()
1845 struct virtqueue *vq; in vtscsi_init_event_vq()
1876 * when attempting to notify the event virtqueue in vtscsi_init_event_vq()
[all...]
/freebsd/sys/dev/virtio/balloon/
H A Dvirtio_balloon.c65 struct virtqueue *vtballoon_inflate_vq;
66 struct virtqueue *vtballoon_deflate_vq;
100 struct virtqueue *, int);
334 struct virtqueue *vq; in vtballoon_inflate()
365 struct virtqueue *vq; in vtballoon_deflate()
405 vtballoon_send_page_frames(struct vtballoon_softc *sc, struct virtqueue *vq, in vtballoon_send_page_frames()
/freebsd/sys/dev/virtio/random/
H A Dvirtio_random.c53 struct virtqueue *vtrnd_vq;
273 struct virtqueue *vq; in vtrnd_enqueue()
290 struct virtqueue *vq; in vtrnd_harvest()
/freebsd/sys/dev/netmap/
H A Dif_vtnet_netmap.h71 struct virtqueue *vq = txq->vtntx_vq; in vtnet_netmap_txsync()
165 struct virtqueue *vq = rxq->vtnrx_vq; in vtnet_netmap_kring_refill()
260 struct virtqueue *vq = rxq->vtnrx_vq; in vtnet_netmap_rxsync()
357 struct virtqueue *txvq = txq->vtntx_vq; in vtnet_netmap_intr()
/freebsd/sys/dev/virtio/network/
H A Dif_vtnetvar.h82 struct virtqueue *vtnrx_vq;
115 struct virtqueue *vtntx_vq;
179 struct virtqueue *vtnet_ctrl_vq;
230 * Additional completed entries can appear in a virtqueue before we can
237 * Similarly, additional completed entries can appear in a virtqueue
H A Dif_vtnet.c84 #include <dev/virtio/virtqueue.h>
822 * LRO is disabled since the virtqueue will not contain very in vtnet_setup_features()
1231 struct virtqueue *vq = sc->vtnet_txqs[0].vtntx_vq; in vtnet_rx_cluster_size()
1609 struct virtqueue *vq; in vtnet_rxq_replace_lro_nomrg_buf()
1630 * EMSGSIZE signifies the virtqueue did not have enough in vtnet_rxq_replace_lro_nomrg_buf()
1644 struct virtqueue *vq; in vtnet_rxq_replace_lro_nomrg_buf()
2096 struct virtqueue *vq; in vtnet_rxq_eof()
2244 struct virtqueue *vq;
2481 * virtqueue before transmitting new frames and in the watchdog in vtnet_txq_offload()
2502 struct virtqueue *v in vtnet_txq_offload()
[all...]
/freebsd/sys/dev/virtio/pci/
H A Dvirtio_pci_if.m33 struct virtqueue;
53 struct virtqueue *vq;
H A Dvirtio_pci.c127 vtpci_set_vq(struct vtpci_common *cn, struct virtqueue *vq) in vtpci_set_vq()
355 struct virtqueue *vq; in vtpci_alloc_virtqueues()
833 struct virtqueue *vq; in vtpci_reinit_virtqueue()
909 struct virtqueue *vq; in vtpci_vq_intr_filter()
921 struct virtqueue *vq; in vtpci_vq_intr()
H A Dvirtio_pci.h39 struct virtqueue *vtv_vq;
H A Dvirtio_pci_modern.c103 static void vtpci_modern_set_vq(device_t, struct virtqueue *);
1262 vtpci_modern_set_vq(device_t dev, struct virtqueue *vq) in vtpci_modern_set_vq()
/freebsd/sys/dev/virtio/mmio/
H A Dvirtio_mmio.c60 struct virtqueue *vtv_vq;
76 struct virtqueue *vq, uint32_t size);
467 vtmmio_set_virtqueue(struct vtmmio_softc *sc, struct virtqueue *vq, in vtmmio_set_virtqueue()
510 struct virtqueue *vq; in vtmmio_alloc_virtqueues()
868 struct virtqueue *vq; in vtmmio_reinit_virtqueue()
956 struct virtqueue *vq; in vtmmio_vq_intr()
/freebsd/sys/dev/virtio/p9fs/
H A Dvirtio_p9fs.c28 * the virtqueue infrastructure which include creating the virtqueue, host
50 #include <dev/virtio/virtqueue.h>
69 struct virtqueue *vt9p_vq;
128 * into the virtqueue. Since we have implemented a synchronous version, the in vt9p_req_wait()
140 struct virtqueue *vq;
203 * Completion of the request from the virtqueue. This interrupt handler is in vt9p_request()
211 struct virtqueue *vq;
234 * Allocation of the virtqueue with interrupt complete routines. in vt9p_intr_complete()
351 /* We expect one virtqueue, fo in vt9p_attach()
[all...]
/freebsd/sys/modules/virtio/virtio/
H A DMakefile29 SRCS= virtio.c virtqueue.c
/freebsd/sys/dev/virtio/block/
H A Dvirtio_blk.c98 struct virtqueue *vtblk_vq;
1179 struct virtqueue *vq; in vtblk_request_execute_cb()
1401 struct virtqueue *vq; in vtblk_drain_vq()
1452 struct virtqueue *vq; in vtblk_startio()
1595 struct virtqueue *vq; in vtblk_poll_request()
1648 struct virtqueue *vq; in vtblk_vq_intr()
/freebsd/sys/dev/virtio/scmi/
H A Dvirtio_scmi.c60 struct virtqueue *vq;
/freebsd/sys/dev/virtio/gpu/
H A Dvirtio_gpu.c72 struct virtqueue *vtgpu_ctrl_vq;
/freebsd/sys/conf/
H A Dfiles3513 dev/virtio/virtqueue.c optional virtio