Lines Matching refs:vq

101 	struct virtqueue *vq;  member
276 static bool vm_notify(struct virtqueue *vq) in vm_notify() argument
278 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); in vm_notify()
282 writel(vq->index, vm_dev->base + VIRTIO_MMIO_QUEUE_NOTIFY); in vm_notify()
307 ret |= vring_interrupt(irq, info->vq); in vm_interrupt()
316 static void vm_del_vq(struct virtqueue *vq) in vm_del_vq() argument
318 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); in vm_del_vq()
319 struct virtio_mmio_vq_info *info = vq->priv; in vm_del_vq()
321 unsigned int index = vq->index; in vm_del_vq()
336 vring_del_virtqueue(vq); in vm_del_vq()
344 struct virtqueue *vq, *n; in vm_del_vqs() local
346 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in vm_del_vqs()
347 vm_del_vq(vq); in vm_del_vqs()
353 void (*callback)(struct virtqueue *vq), in vm_setup_vq() argument
358 struct virtqueue *vq; in vm_setup_vq() local
390 vq = vring_create_virtqueue(index, num, VIRTIO_MMIO_VRING_ALIGN, vdev, in vm_setup_vq()
392 if (!vq) { in vm_setup_vq()
398 writel(virtqueue_get_vring_size(vq), vm_dev->base + VIRTIO_MMIO_QUEUE_NUM); in vm_setup_vq()
400 u64 q_pfn = virtqueue_get_desc_addr(vq) >> PAGE_SHIFT; in vm_setup_vq()
420 addr = virtqueue_get_desc_addr(vq); in vm_setup_vq()
425 addr = virtqueue_get_avail_addr(vq); in vm_setup_vq()
430 addr = virtqueue_get_used_addr(vq); in vm_setup_vq()
438 vq->priv = info; in vm_setup_vq()
439 info->vq = vq; in vm_setup_vq()
445 return vq; in vm_setup_vq()
448 vring_del_virtqueue(vq); in vm_setup_vq()