184 unsigned long ring_size, heap_size;
209 goto err_activate_queue;
215 msix_vec =
vdev->
device->set_queue_vector(vq, msix_vec);
void vp_notify(struct virtqueue *vq)
#define STATUS_INSUFFICIENT_RESOURCES
#define iowrite32(vdev, val, addr)
#define VIRTIO_PCI_QUEUE_NOTIFY
const struct virtio_device_ops * device
#define VIRTIO_PCI_QUEUE_ADDR_SHIFT
static NTSTATUS vio_legacy_query_vq_alloc(VirtIODevice *vdev, unsigned index, unsigned short *pNumEntries, unsigned long *pRingSize, unsigned long *pHeapSize)
#define NT_SUCCESS(StatCode)
#define VIRTIO_PCI_QUEUE_PFN
#define ROUND_TO_PAGES(Size)
#define STATUS_DEVICE_BUSY
#define VIRTIO_MSI_NO_VECTOR
unsigned long vring_size(unsigned int num, unsigned long align, bool packed)
#define mem_alloc_contiguous_pages(vdev, size)
#define mem_free_contiguous_pages(vdev, virt)
static SERVICE_STATUS status
#define mem_get_physical_address(vdev, virt)
#define VIRTIO_PCI_VRING_ALIGN
struct virtqueue * vring_new_virtqueue_split(unsigned int index, unsigned int num, unsigned int vring_align, VirtIODevice *vdev, void *pages, void(*notify)(struct virtqueue *), void *control)