Lines Matching refs:vdev
113 container_of(_plat_dev, struct virtio_mmio_device, vdev)
116 struct virtio_device vdev; member
145 static u32 vm_get_features(struct virtio_device *vdev) in vm_get_features() argument
147 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_get_features()
155 static void vm_finalize_features(struct virtio_device *vdev) in vm_finalize_features() argument
157 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_finalize_features()
161 vring_transport_features(vdev); in vm_finalize_features()
163 for (i = 0; i < ARRAY_SIZE(vdev->features); i++) { in vm_finalize_features()
165 writel(vdev->features[i], in vm_finalize_features()
170 static void vm_get(struct virtio_device *vdev, unsigned offset, in vm_get() argument
173 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_get()
181 static void vm_set(struct virtio_device *vdev, unsigned offset, in vm_set() argument
184 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_set()
192 static u8 vm_get_status(struct virtio_device *vdev) in vm_get_status() argument
194 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_get_status()
199 static void vm_set_status(struct virtio_device *vdev, u8 status) in vm_set_status() argument
201 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_set_status()
209 static void vm_reset(struct virtio_device *vdev) in vm_reset() argument
211 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_reset()
224 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); in vm_notify()
236 struct virtio_driver *vdrv = container_of(vm_dev->vdev.dev.driver, in vm_interrupt()
248 vdrv->config_changed(&vm_dev->vdev); in vm_interrupt()
266 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); in vm_del_vq()
286 static void vm_del_vqs(struct virtio_device *vdev) in vm_del_vqs() argument
288 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_del_vqs()
291 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in vm_del_vqs()
299 static struct virtqueue *vm_setup_vq(struct virtio_device *vdev, unsigned index, in vm_setup_vq() argument
303 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_setup_vq()
368 vq = vring_new_virtqueue(index, info->num, VIRTIO_MMIO_VRING_ALIGN, vdev, in vm_setup_vq()
394 static int vm_find_vqs(struct virtio_device *vdev, unsigned nvqs, in vm_find_vqs() argument
399 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_find_vqs()
404 dev_name(&vdev->dev), vm_dev); in vm_find_vqs()
409 vqs[i] = vm_setup_vq(vdev, i, callbacks[i], names[i]); in vm_find_vqs()
411 vm_del_vqs(vdev); in vm_find_vqs()
419 static const char *vm_bus_name(struct virtio_device *vdev) in vm_bus_name() argument
421 struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vdev); in vm_bus_name()
461 vm_dev->vdev.dev.parent = &pdev->dev; in virtio_mmio_probe()
462 vm_dev->vdev.config = &virtio_mmio_config_ops; in virtio_mmio_probe()
486 vm_dev->vdev.id.device = readl(vm_dev->base + VIRTIO_MMIO_DEVICE_ID); in virtio_mmio_probe()
487 vm_dev->vdev.id.vendor = readl(vm_dev->base + VIRTIO_MMIO_VENDOR_ID); in virtio_mmio_probe()
493 return register_virtio_device(&vm_dev->vdev); in virtio_mmio_probe()
500 unregister_virtio_device(&vm_dev->vdev); in virtio_mmio_remove()