Lines Matching refs:vdpa
22 #include <linux/vdpa.h>
27 #include <uapi/linux/vdpa.h>
73 struct vdpa_device vdpa;
147 static inline struct vduse_dev *vdpa_to_vduse(struct vdpa_device *vdpa)
149 struct vduse_vdpa *vdev = container_of(vdpa, struct vduse_vdpa, vdpa);
156 struct vdpa_device *vdpa = dev_to_vdpa(dev);
158 return vdpa_to_vduse(vdpa);
476 static int vduse_vdpa_set_vq_address(struct vdpa_device *vdpa, u16 idx,
480 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
512 static void vduse_vdpa_kick_vq(struct vdpa_device *vdpa, u16 idx)
514 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
524 static void vduse_vdpa_set_vq_cb(struct vdpa_device *vdpa, u16 idx,
527 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
537 static void vduse_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 idx, u32 num)
539 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
545 static void vduse_vdpa_set_vq_ready(struct vdpa_device *vdpa,
548 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
554 static bool vduse_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 idx)
556 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
562 static int vduse_vdpa_set_vq_state(struct vdpa_device *vdpa, u16 idx,
565 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
581 static int vduse_vdpa_get_vq_state(struct vdpa_device *vdpa, u16 idx,
584 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
593 static u32 vduse_vdpa_get_vq_align(struct vdpa_device *vdpa)
595 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
600 static u64 vduse_vdpa_get_device_features(struct vdpa_device *vdpa)
602 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
607 static int vduse_vdpa_set_driver_features(struct vdpa_device *vdpa, u64 features)
609 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
615 static u64 vduse_vdpa_get_driver_features(struct vdpa_device *vdpa)
617 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
622 static void vduse_vdpa_set_config_cb(struct vdpa_device *vdpa,
625 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
633 static u16 vduse_vdpa_get_vq_num_max(struct vdpa_device *vdpa)
635 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
646 static u32 vduse_vdpa_get_device_id(struct vdpa_device *vdpa)
648 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
653 static u32 vduse_vdpa_get_vendor_id(struct vdpa_device *vdpa)
655 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
660 static u8 vduse_vdpa_get_status(struct vdpa_device *vdpa)
662 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
667 static void vduse_vdpa_set_status(struct vdpa_device *vdpa, u8 status)
669 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
677 static size_t vduse_vdpa_get_config_size(struct vdpa_device *vdpa)
679 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
684 static void vduse_vdpa_get_config(struct vdpa_device *vdpa, unsigned int offset,
687 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
701 static void vduse_vdpa_set_config(struct vdpa_device *vdpa, unsigned int offset,
707 static int vduse_vdpa_reset(struct vdpa_device *vdpa)
709 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
717 static u32 vduse_vdpa_get_generation(struct vdpa_device *vdpa)
719 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
724 static int vduse_vdpa_set_vq_affinity(struct vdpa_device *vdpa, u16 idx,
727 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
738 vduse_vdpa_get_vq_affinity(struct vdpa_device *vdpa, u16 idx)
740 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
745 static int vduse_vdpa_set_map(struct vdpa_device *vdpa,
749 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
765 static void vduse_vdpa_free(struct vdpa_device *vdpa)
767 struct vduse_dev *dev = vdpa_to_vduse(vdpa);
1957 vdev = vdpa_alloc_device(struct vduse_vdpa, vdpa, dev->dev,
1964 vdev->vdpa.dev.dma_mask = &vdev->vdpa.dev.coherent_dma_mask;
1965 ret = dma_set_mask_and_coherent(&vdev->vdpa.dev, DMA_BIT_MASK(64));
1967 put_device(&vdev->vdpa.dev);
1970 set_dma_ops(&vdev->vdpa.dev, &vduse_dev_dma_ops);
1971 vdev->vdpa.dma_dev = &vdev->vdpa.dev;
1972 vdev->vdpa.mdev = &vduse_mgmt->mgmt_dev;
2000 put_device(&dev->vdev->vdpa.dev);
2004 ret = _vdpa_register_device(&dev->vdev->vdpa, dev->vq_num);
2006 put_device(&dev->vdev->vdpa.dev);