virtqueue
struct virtqueue *vq;
vioif_net_enqueue(struct virtio_softc *vsc, struct virtqueue *vq,
vioif_net_enqueue_tx(struct virtio_softc *vsc, struct virtqueue *vq,
vioif_net_enqueue_rx(struct virtio_softc *vsc, struct virtqueue *vq,
vioif_net_dequeue_commit(struct virtio_softc *vsc, struct virtqueue *vq,
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = netq->netq_vq;
struct virtqueue *vq = ctrlq->ctrlq_vq;
struct virtqueue *vq = ctrlq->ctrlq_vq;
struct virtqueue *netq_vq;
struct virtqueue *ctrlq_vq;
struct virtqueue *sc_vqs;
vioif_notify(struct virtio_softc *vsc, struct virtqueue *vq)
struct virtqueue * const vq = &sc->sc_vq;
struct virtqueue sc_vq;
static int ld_virtio_vq_done(struct virtqueue *);
struct virtqueue *vq = &sc->sc_vq;
struct virtqueue *vq = &sc->sc_vq;
struct virtqueue *vq, int slot)
ld_virtio_vq_done(struct virtqueue *vq)
struct virtqueue *vq = &sc->sc_vq;
struct virtqueue *vq = &sc->sc_vq;
static int vio9p_request_done(struct virtqueue *);
struct virtqueue *vq = &sc->sc_vq[0];
struct virtqueue *vq = &sc->sc_vq[0];
vio9p_request_done(struct virtqueue *vq)
struct virtqueue sc_vq[1];
struct virtqueue sc_vqs[2];
struct virtqueue *vq = &sc->sc_vqs[VQCTRL];
viogpu_vq_done(struct virtqueue *vq)
static int viogpu_vq_done(struct virtqueue *vq);
static int inflateq_done(struct virtqueue *);
static int deflateq_done(struct virtqueue *);
struct virtqueue *vq = &sc->sc_vq[VQ_INFLATE];
inflateq_done(struct virtqueue *vq)
struct virtqueue *vq = &sc->sc_vq[VQ_INFLATE];
struct virtqueue *vq = &sc->sc_vq[VQ_DEFLATE];
deflateq_done(struct virtqueue *vq)
struct virtqueue *vq = &sc->sc_vq[VQ_DEFLATE];
struct virtqueue sc_vq[2];
viornd_vq_done(struct virtqueue *vq)
struct virtqueue sc_vq;
int viornd_vq_done(struct virtqueue *);
struct virtqueue *vq = &sc->sc_vq;
struct virtqueue *vq = &sc->sc_vqs[VIOSCSI_VQ_REQUEST];
struct vioscsi_req *vr, struct virtqueue *vq, int slot)
vioscsi_vq_done(struct virtqueue *vq)
struct virtqueue *vq = &sc->sc_vqs[VIOSCSI_VQ_REQUEST];
struct virtqueue sc_vqs[3];
static int vioscsi_vq_done(struct virtqueue *);
struct vioscsi_req *, struct virtqueue *, int);
vq_alloc_slot(struct virtio_softc *sc, struct virtqueue *vq, size_t nslots)
vq_free_slot(struct virtio_softc *sc, struct virtqueue *vq, uint16_t slot)
virtio_enqueue_prep(struct virtio_softc *sc, struct virtqueue *vq, int *slotp)
virtio_enqueue_reserve(struct virtio_softc *sc, struct virtqueue *vq,
virtio_enqueue(struct virtio_softc *sc, struct virtqueue *vq, int slot,
struct virtqueue *vq = &sc->sc_vqs[i];
virtio_enqueue_p(struct virtio_softc *sc, struct virtqueue *vq, int slot,
virtio_enqueue_commit(struct virtio_softc *sc, struct virtqueue *vq, int slot,
virtio_enqueue_abort(struct virtio_softc *sc, struct virtqueue *vq, int slot)
virtio_dequeue(struct virtio_softc *sc, struct virtqueue *vq,
virtio_dequeue_commit(struct virtio_softc *sc, struct virtqueue *vq, int slot)
struct virtqueue *vqs, size_t nvqs,
struct virtqueue *vq = xvq;
struct virtqueue *vq;
vq_sync_descs(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_aring_all(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_aring_header(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_aring_payload(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_aring_used(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_uring_all(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_uring_header(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_uring_payload(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_uring_avail(struct virtio_softc *sc, struct virtqueue *vq, int ops)
vq_sync_indirect(struct virtio_softc *sc, struct virtqueue *vq, int slot,
virtio_vq_is_enqueued(struct virtio_softc *sc, struct virtqueue *vq)
virtio_postpone_intr(struct virtio_softc *sc, struct virtqueue *vq,
virtio_postpone_intr_smart(struct virtio_softc *sc, struct virtqueue *vq)
virtio_postpone_intr_far(struct virtio_softc *sc, struct virtqueue *vq)
virtio_stop_vq_intr(struct virtio_softc *sc, struct virtqueue *vq)
virtio_start_vq_intr(struct virtio_softc *sc, struct virtqueue *vq)
virtio_reset_vq(struct virtio_softc *sc, struct virtqueue *vq)
virtio_init_vq_vqdone(struct virtio_softc *sc, struct virtqueue *vq,
int index, int (*vq_done)(struct virtqueue *))
virtio_init_vq(struct virtio_softc *sc, struct virtqueue *vq, int index,
struct virtqueue *);
virtio_alloc_vq(struct virtio_softc *sc, struct virtqueue *vq,
virtio_free_vq(struct virtio_softc *sc, struct virtqueue *vq)
vq_alloc_slot_locked(struct virtio_softc *sc, struct virtqueue *vq,
struct virtqueue *vq = &sc->sc_vqs[idx];
struct virtqueue *vq;
int (*vq_done)(struct virtqueue*); /* for compatibility */
struct virtqueue *sc_vqs; /* set by child */
void virtio_init_vq(struct virtio_softc *, struct virtqueue *, int,
void virtio_init_vq_vqdone(struct virtio_softc *,struct virtqueue *, int,
int (*)(struct virtqueue *));
int virtio_alloc_vq(struct virtio_softc*, struct virtqueue*, int, int,
int virtio_free_vq(struct virtio_softc*, struct virtqueue*);
struct virtqueue *, size_t,
int virtio_enqueue_prep(struct virtio_softc*, struct virtqueue*, int*);
int virtio_enqueue_reserve(struct virtio_softc*, struct virtqueue*, int, int);
int virtio_enqueue(struct virtio_softc*, struct virtqueue*, int,
int virtio_enqueue_p(struct virtio_softc*, struct virtqueue*, int,
int virtio_enqueue_commit(struct virtio_softc*, struct virtqueue*, int, bool);
int virtio_enqueue_abort(struct virtio_softc*, struct virtqueue*, int);
int virtio_dequeue(struct virtio_softc*, struct virtqueue*, int *, int *);
int virtio_dequeue_commit(struct virtio_softc*, struct virtqueue*, int);
bool virtio_vq_is_enqueued(struct virtio_softc *, struct virtqueue *);
int virtio_postpone_intr(struct virtio_softc *sc, struct virtqueue *vq,
int virtio_postpone_intr_smart(struct virtio_softc *sc, struct virtqueue *vq);
int virtio_postpone_intr_far(struct virtio_softc *sc, struct virtqueue *vq);
void virtio_stop_vq_intr(struct virtio_softc *, struct virtqueue *);
int virtio_start_vq_intr(struct virtio_softc *, struct virtqueue *);
struct virtqueue *vp_rx;
struct virtqueue *vp_tx;
struct virtqueue *sc_vqs;
struct virtqueue *sc_c_vq_rx;
struct virtqueue *sc_c_vq_tx;
int viocon_tx_intr(struct virtqueue *);
int viocon_tx_drain(struct viocon_port *, struct virtqueue *vq);
int viocon_rx_intr(struct virtqueue *);
viocon_tx_drain(struct viocon_port *vp, struct virtqueue *vq)
viocon_tx_intr(struct virtqueue *vq)
struct virtqueue *vq = vp->vp_rx;
viocon_rx_intr(struct virtqueue *vq)
struct virtqueue *vq = vp->vp_rx;
struct virtqueue *vq;
struct virtqueue *vq;