Lines Matching refs:vdev

28 	struct virtio_device vdev;  member
36 return container_of(dev, struct virtio_vdpa_device, vdev); in to_virtio_vdpa_device()
39 static struct vdpa_device *vd_get_vdpa(struct virtio_device *vdev) in vd_get_vdpa() argument
41 return to_virtio_vdpa_device(vdev)->vdpa; in vd_get_vdpa()
44 static void virtio_vdpa_get(struct virtio_device *vdev, unsigned int offset, in virtio_vdpa_get() argument
47 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get()
52 static void virtio_vdpa_set(struct virtio_device *vdev, unsigned int offset, in virtio_vdpa_set() argument
55 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_set()
60 static u32 virtio_vdpa_generation(struct virtio_device *vdev) in virtio_vdpa_generation() argument
62 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_generation()
71 static u8 virtio_vdpa_get_status(struct virtio_device *vdev) in virtio_vdpa_get_status() argument
73 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get_status()
79 static void virtio_vdpa_set_status(struct virtio_device *vdev, u8 status) in virtio_vdpa_set_status() argument
81 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_set_status()
86 static void virtio_vdpa_reset(struct virtio_device *vdev) in virtio_vdpa_reset() argument
88 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_reset()
95 struct vdpa_device *vdpa = vd_get_vdpa(vq->vdev); in virtio_vdpa_notify()
105 struct vdpa_device *vdpa = vd_get_vdpa(vq->vdev); in virtio_vdpa_notify_with_data()
118 virtio_config_changed(&vd_dev->vdev); in virtio_vdpa_config_cb()
131 virtio_vdpa_setup_vq(struct virtio_device *vdev, unsigned int index, in virtio_vdpa_setup_vq() argument
135 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_setup_vq()
155 if (__virtio_test_bit(vdev, VIRTIO_F_NOTIFICATION_DATA)) { in virtio_vdpa_setup_vq()
159 __virtio_clear_bit(vdev, VIRTIO_F_NOTIFICATION_DATA); in virtio_vdpa_setup_vq()
189 vq = vring_create_virtqueue_map(index, max_num, align, vdev, in virtio_vdpa_setup_vq()
198 vdev->vmap = map; in virtio_vdpa_setup_vq()
221 if (virtio_has_feature(vdev, VIRTIO_F_RING_PACKED)) { in virtio_vdpa_setup_vq()
248 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vq->vdev); in virtio_vdpa_del_vq()
259 static void virtio_vdpa_del_vqs(struct virtio_device *vdev) in virtio_vdpa_del_vqs() argument
263 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in virtio_vdpa_del_vqs()
328 static int virtio_vdpa_find_vqs(struct virtio_device *vdev, unsigned int nvqs, in virtio_vdpa_find_vqs() argument
333 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vdev); in virtio_vdpa_find_vqs()
334 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_find_vqs()
355 vqs[i] = virtio_vdpa_setup_vq(vdev, queue_idx++, vqi->callback, in virtio_vdpa_find_vqs()
375 virtio_vdpa_del_vqs(vdev); in virtio_vdpa_find_vqs()
381 static u64 virtio_vdpa_get_features(struct virtio_device *vdev) in virtio_vdpa_get_features() argument
383 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get_features()
389 static int virtio_vdpa_finalize_features(struct virtio_device *vdev) in virtio_vdpa_finalize_features() argument
391 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_finalize_features()
394 vring_transport_features(vdev); in virtio_vdpa_finalize_features()
396 return vdpa_set_features(vdpa, vdev->features); in virtio_vdpa_finalize_features()
399 static const char *virtio_vdpa_bus_name(struct virtio_device *vdev) in virtio_vdpa_bus_name() argument
401 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vdev); in virtio_vdpa_bus_name()
410 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vq->vdev); in virtio_vdpa_set_vq_affinity()
422 virtio_vdpa_get_vq_affinity(struct virtio_device *vdev, int index) in virtio_vdpa_get_vq_affinity() argument
424 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get_vq_affinity()
451 struct virtio_device *vdev = in virtio_vdpa_release_dev() local
454 container_of(vdev, struct virtio_vdpa_device, vdev); in virtio_vdpa_release_dev()
469 vd_dev->vdev.dev.parent = vdpa->map ? &vdpa->dev : in virtio_vdpa_probe()
471 vd_dev->vdev.dev.release = virtio_vdpa_release_dev; in virtio_vdpa_probe()
472 vd_dev->vdev.config = &virtio_vdpa_config_ops; in virtio_vdpa_probe()
473 vd_dev->vdev.map = vdpa->map; in virtio_vdpa_probe()
476 vd_dev->vdev.id.device = ops->get_device_id(vdpa); in virtio_vdpa_probe()
477 if (vd_dev->vdev.id.device == 0) in virtio_vdpa_probe()
480 vd_dev->vdev.id.vendor = ops->get_vendor_id(vdpa); in virtio_vdpa_probe()
481 ret = register_virtio_device(&vd_dev->vdev); in virtio_vdpa_probe()
492 put_device(&vd_dev->vdev.dev); in virtio_vdpa_probe()
502 unregister_virtio_device(&vd_dev->vdev); in virtio_vdpa_remove()