Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/virtio/virtqueue.h
Show First 20 Lines • Show All 61 Lines • ▼ Show 20 Lines | #define VQ_ALLOC_INFO_INIT(_i,_nsegs,_intr,_arg,_vqp,_str,...) do { \ | ||||
snprintf((_i)->vqai_name, VIRTQUEUE_MAX_NAME_SZ, _str, \ | snprintf((_i)->vqai_name, VIRTQUEUE_MAX_NAME_SZ, _str, \ | ||||
##__VA_ARGS__); \ | ##__VA_ARGS__); \ | ||||
(_i)->vqai_maxindirsz = (_nsegs); \ | (_i)->vqai_maxindirsz = (_nsegs); \ | ||||
(_i)->vqai_intr = (_intr); \ | (_i)->vqai_intr = (_intr); \ | ||||
(_i)->vqai_intr_arg = (_arg); \ | (_i)->vqai_intr_arg = (_arg); \ | ||||
(_i)->vqai_vq = (_vqp); \ | (_i)->vqai_vq = (_vqp); \ | ||||
} while (0) | } while (0) | ||||
uint64_t virtqueue_filter_features(uint64_t features); | |||||
int virtqueue_alloc(device_t dev, uint16_t queue, uint16_t size, | int virtqueue_alloc(device_t dev, uint16_t queue, uint16_t size, | ||||
bus_size_t notify_offset, int align, vm_paddr_t highaddr, | bus_size_t notify_offset, int align, vm_paddr_t highaddr, | ||||
struct vq_alloc_info *info, struct virtqueue **vqp); | struct vq_alloc_info *info, struct virtqueue **vqp); | ||||
void *virtqueue_drain(struct virtqueue *vq, int *last); | void *virtqueue_drain(struct virtqueue *vq, int *last); | ||||
void virtqueue_free(struct virtqueue *vq); | void virtqueue_free(struct virtqueue *vq); | ||||
int virtqueue_reinit(struct virtqueue *vq, uint16_t size); | int virtqueue_reinit(struct virtqueue *vq, uint16_t size); | ||||
int virtqueue_intr_filter(struct virtqueue *vq); | int virtqueue_intr_filter(struct virtqueue *vq); | ||||
Show All 26 Lines |