Lines Matching full:vdev
27 struct virtio_device vdev; member
48 return container_of(dev, struct virtio_vdpa_device, vdev); in to_virtio_vdpa_device()
51 static struct vdpa_device *vd_get_vdpa(struct virtio_device *vdev) in vd_get_vdpa() argument
53 return to_virtio_vdpa_device(vdev)->vdpa; in vd_get_vdpa()
56 static void virtio_vdpa_get(struct virtio_device *vdev, unsigned offset, in virtio_vdpa_get() argument
59 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get()
64 static void virtio_vdpa_set(struct virtio_device *vdev, unsigned offset, in virtio_vdpa_set() argument
67 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_set()
73 static u32 virtio_vdpa_generation(struct virtio_device *vdev) in virtio_vdpa_generation() argument
75 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_generation()
84 static u8 virtio_vdpa_get_status(struct virtio_device *vdev) in virtio_vdpa_get_status() argument
86 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get_status()
92 static void virtio_vdpa_set_status(struct virtio_device *vdev, u8 status) in virtio_vdpa_set_status() argument
94 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_set_status()
100 static void virtio_vdpa_reset(struct virtio_device *vdev) in virtio_vdpa_reset() argument
102 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_reset()
109 struct vdpa_device *vdpa = vd_get_vdpa(vq->vdev); in virtio_vdpa_notify()
121 virtio_config_changed(&vd_dev->vdev); in virtio_vdpa_config_cb()
134 virtio_vdpa_setup_vq(struct virtio_device *vdev, unsigned int index, in virtio_vdpa_setup_vq() argument
138 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vdev); in virtio_vdpa_setup_vq()
139 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_setup_vq()
174 vq = vring_create_virtqueue(index, num, align, vdev, in virtio_vdpa_setup_vq()
200 if (virtio_has_feature(vdev, VIRTIO_F_RING_PACKED)) { in virtio_vdpa_setup_vq()
235 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vq->vdev); in virtio_vdpa_del_vq()
254 static void virtio_vdpa_del_vqs(struct virtio_device *vdev) in virtio_vdpa_del_vqs() argument
258 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in virtio_vdpa_del_vqs()
262 static int virtio_vdpa_find_vqs(struct virtio_device *vdev, unsigned nvqs, in virtio_vdpa_find_vqs() argument
269 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vdev); in virtio_vdpa_find_vqs()
270 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_find_vqs()
281 vqs[i] = virtio_vdpa_setup_vq(vdev, queue_idx++, in virtio_vdpa_find_vqs()
297 virtio_vdpa_del_vqs(vdev); in virtio_vdpa_find_vqs()
301 static u64 virtio_vdpa_get_features(struct virtio_device *vdev) in virtio_vdpa_get_features() argument
303 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_get_features()
309 static int virtio_vdpa_finalize_features(struct virtio_device *vdev) in virtio_vdpa_finalize_features() argument
311 struct vdpa_device *vdpa = vd_get_vdpa(vdev); in virtio_vdpa_finalize_features()
314 vring_transport_features(vdev); in virtio_vdpa_finalize_features()
316 return vdpa_set_features(vdpa, vdev->features); in virtio_vdpa_finalize_features()
319 static const char *virtio_vdpa_bus_name(struct virtio_device *vdev) in virtio_vdpa_bus_name() argument
321 struct virtio_vdpa_device *vd_dev = to_virtio_vdpa_device(vdev); in virtio_vdpa_bus_name()
343 struct virtio_device *vdev = in virtio_vdpa_release_dev() local
346 container_of(vdev, struct virtio_vdpa_device, vdev); in virtio_vdpa_release_dev()
361 vd_dev->vdev.dev.parent = vdpa_get_dma_dev(vdpa); in virtio_vdpa_probe()
362 vd_dev->vdev.dev.release = virtio_vdpa_release_dev; in virtio_vdpa_probe()
363 vd_dev->vdev.config = &virtio_vdpa_config_ops; in virtio_vdpa_probe()
368 vd_dev->vdev.id.device = ops->get_device_id(vdpa); in virtio_vdpa_probe()
369 if (vd_dev->vdev.id.device == 0) in virtio_vdpa_probe()
372 vd_dev->vdev.id.vendor = ops->get_vendor_id(vdpa); in virtio_vdpa_probe()
373 ret = register_virtio_device(&vd_dev->vdev); in virtio_vdpa_probe()
384 put_device(&vd_dev->vdev.dev); in virtio_vdpa_probe()
394 unregister_virtio_device(&vd_dev->vdev); in virtio_vdpa_remove()