Lines Matching refs:vq

97 	struct virtqueue *vq;  member
272 static bool vm_notify(struct virtqueue *vq) in vm_notify() argument
274 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); in vm_notify()
278 writel(vq->index, vm_dev->base + VIRTIO_MMIO_QUEUE_NOTIFY); in vm_notify()
303 ret |= vring_interrupt(irq, info->vq); in vm_interrupt()
312 static void vm_del_vq(struct virtqueue *vq) in vm_del_vq() argument
314 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); in vm_del_vq()
315 struct virtio_mmio_vq_info *info = vq->priv; in vm_del_vq()
317 unsigned int index = vq->index; in vm_del_vq()
332 vring_del_virtqueue(vq); in vm_del_vq()
340 struct virtqueue *vq, *n; in vm_del_vqs() local
342 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in vm_del_vqs()
343 vm_del_vq(vq); in vm_del_vqs()
349 void (*callback)(struct virtqueue *vq), in vm_setup_vq() argument
354 struct virtqueue *vq; in vm_setup_vq() local
386 vq = vring_create_virtqueue(index, num, VIRTIO_MMIO_VRING_ALIGN, vdev, in vm_setup_vq()
388 if (!vq) { in vm_setup_vq()
394 writel(virtqueue_get_vring_size(vq), vm_dev->base + VIRTIO_MMIO_QUEUE_NUM); in vm_setup_vq()
396 u64 q_pfn = virtqueue_get_desc_addr(vq) >> PAGE_SHIFT; in vm_setup_vq()
416 addr = virtqueue_get_desc_addr(vq); in vm_setup_vq()
421 addr = virtqueue_get_avail_addr(vq); in vm_setup_vq()
426 addr = virtqueue_get_used_addr(vq); in vm_setup_vq()
434 vq->priv = info; in vm_setup_vq()
435 info->vq = vq; in vm_setup_vq()
441 return vq; in vm_setup_vq()
444 vring_del_virtqueue(vq); in vm_setup_vq()