Lines Matching refs:virtqueue
58 struct virtqueue { struct
123 static int virtqueue_init_indirect(struct virtqueue *vq, int);
124 static void virtqueue_free_indirect(struct virtqueue *vq);
125 static void virtqueue_init_indirect_list(struct virtqueue *,
128 static void vq_ring_init(struct virtqueue *);
129 static void vq_ring_update_avail(struct virtqueue *, uint16_t);
130 static uint16_t vq_ring_enqueue_segments(struct virtqueue *,
132 static int vq_ring_use_indirect(struct virtqueue *, int);
133 static void vq_ring_enqueue_indirect(struct virtqueue *, void *,
135 static int vq_ring_enable_interrupt(struct virtqueue *, uint16_t);
136 static int vq_ring_must_notify_host(struct virtqueue *);
137 static void vq_ring_notify_host(struct virtqueue *);
138 static void vq_ring_free_chain(struct virtqueue *, uint16_t);
151 struct vq_alloc_info *info, struct virtqueue **vqp) in virtqueue_alloc()
153 struct virtqueue *vq; in virtqueue_alloc()
177 vq = malloc(sizeof(struct virtqueue) + in virtqueue_alloc()
228 virtqueue_init_indirect(struct virtqueue *vq, int indirect_size) in virtqueue_init_indirect()
271 virtqueue_free_indirect(struct virtqueue *vq) in virtqueue_free_indirect()
292 virtqueue_init_indirect_list(struct virtqueue *vq, in virtqueue_init_indirect_list()
305 virtqueue_reinit(struct virtqueue *vq, uint16_t size) in virtqueue_reinit()
347 virtqueue_free(struct virtqueue *vq) in virtqueue_free()
369 virtqueue_paddr(struct virtqueue *vq) in virtqueue_paddr()
376 virtqueue_desc_paddr(struct virtqueue *vq) in virtqueue_desc_paddr()
383 virtqueue_avail_paddr(struct virtqueue *vq) in virtqueue_avail_paddr()
390 virtqueue_used_paddr(struct virtqueue *vq) in virtqueue_used_paddr()
397 virtqueue_index(struct virtqueue *vq) in virtqueue_index()
404 virtqueue_size(struct virtqueue *vq) in virtqueue_size()
411 virtqueue_nfree(struct virtqueue *vq) in virtqueue_nfree()
418 virtqueue_empty(struct virtqueue *vq) in virtqueue_empty()
425 virtqueue_full(struct virtqueue *vq) in virtqueue_full()
432 virtqueue_notify(struct virtqueue *vq) in virtqueue_notify()
444 virtqueue_nused(struct virtqueue *vq) in virtqueue_nused()
457 virtqueue_intr_filter(struct virtqueue *vq) in virtqueue_intr_filter()
469 virtqueue_intr(struct virtqueue *vq) in virtqueue_intr()
476 virtqueue_enable_intr(struct virtqueue *vq) in virtqueue_enable_intr()
483 virtqueue_postpone_intr(struct virtqueue *vq, vq_postpone_t hint) in virtqueue_postpone_intr()
508 virtqueue_disable_intr(struct virtqueue *vq) in virtqueue_disable_intr()
521 virtqueue_enqueue(struct virtqueue *vq, void *cookie, struct sglist *sg, in virtqueue_enqueue()
574 virtqueue_dequeue(struct virtqueue *vq, uint32_t *len) in virtqueue_dequeue()
601 virtqueue_poll(struct virtqueue *vq, uint32_t *len) in virtqueue_poll()
615 virtqueue_drain(struct virtqueue *vq, int *last) in virtqueue_drain()
638 virtqueue_dump(struct virtqueue *vq) in virtqueue_dump()
657 vq_ring_init(struct virtqueue *vq) in vq_ring_init()
675 vq_ring_update_avail(struct virtqueue *vq, uint16_t desc_idx) in vq_ring_update_avail()
698 vq_ring_enqueue_segments(struct virtqueue *vq, struct vring_desc *desc, in vq_ring_enqueue_segments()
729 vq_ring_use_indirect(struct virtqueue *vq, int needed) in vq_ring_use_indirect()
745 vq_ring_enqueue_indirect(struct virtqueue *vq, void *cookie, in vq_ring_enqueue_indirect()
785 vq_ring_enable_interrupt(struct virtqueue *vq, uint16_t ndesc) in vq_ring_enable_interrupt()
814 vq_ring_must_notify_host(struct virtqueue *vq) in vq_ring_must_notify_host()
831 vq_ring_notify_host(struct virtqueue *vq) in vq_ring_notify_host()
839 vq_ring_free_chain(struct virtqueue *vq, uint16_t desc_idx) in vq_ring_free_chain()