/linux-6.3-rc2/include/linux/ |
A D | vfio.h | 36 struct vfio_device { struct 94 int (*init)(struct vfio_device *vdev); 95 void (*release)(struct vfio_device *vdev); 96 int (*bind_iommufd)(struct vfio_device *vdev, 100 int (*open_device)(struct vfio_device *vdev); 101 void (*close_device)(struct vfio_device *vdev); 130 ((void (*)(struct vfio_device *vdev)) NULL) 137 ((void (*)(struct vfio_device *vdev)) NULL) 159 struct vfio_device *device, 181 int (*log_start)(struct vfio_device *device, [all …]
|
A D | vfio_pci_core.h | 53 struct vfio_device vdev; 108 void vfio_pci_core_close_device(struct vfio_device *core_vdev); 109 int vfio_pci_core_init_dev(struct vfio_device *core_vdev); 110 void vfio_pci_core_release_dev(struct vfio_device *core_vdev); 116 long vfio_pci_core_ioctl(struct vfio_device *core_vdev, unsigned int cmd, 118 int vfio_pci_core_ioctl_feature(struct vfio_device *device, u32 flags, 120 ssize_t vfio_pci_core_read(struct vfio_device *core_vdev, char __user *buf, 122 ssize_t vfio_pci_core_write(struct vfio_device *core_vdev, const char __user *buf, 124 int vfio_pci_core_mmap(struct vfio_device *core_vdev, struct vm_area_struct *vma); 125 void vfio_pci_core_request(struct vfio_device *core_vdev, unsigned int count); [all …]
|
/linux-6.3-rc2/drivers/vfio/ |
A D | vfio.h | 19 void vfio_device_put_registration(struct vfio_device *device); 22 void vfio_device_close(struct vfio_device *device, 79 int vfio_device_set_group(struct vfio_device *device, 81 void vfio_device_remove_group(struct vfio_device *device); 82 void vfio_device_group_register(struct vfio_device *device); 86 void vfio_device_group_close(struct vfio_device *device); 87 bool vfio_device_has_container(struct vfio_device *device); 121 struct vfio_device *vdev); 123 struct vfio_device *vdev); 221 void vfio_iommufd_unbind(struct vfio_device *device); [all …]
|
A D | iommufd.c | 13 int vfio_iommufd_bind(struct vfio_device *vdev, struct iommufd_ctx *ictx) in vfio_iommufd_bind() 65 void vfio_iommufd_unbind(struct vfio_device *vdev) in vfio_iommufd_unbind() 81 int vfio_iommufd_physical_bind(struct vfio_device *vdev, in vfio_iommufd_physical_bind() 94 void vfio_iommufd_physical_unbind(struct vfio_device *vdev) in vfio_iommufd_physical_unbind() 107 int vfio_iommufd_physical_attach_ioas(struct vfio_device *vdev, u32 *pt_id) in vfio_iommufd_physical_attach_ioas() 128 struct vfio_device *vdev = data; in vfio_emulated_unmap() 138 int vfio_iommufd_emulated_bind(struct vfio_device *vdev, in vfio_iommufd_emulated_bind() 149 void vfio_iommufd_emulated_unbind(struct vfio_device *vdev) in vfio_iommufd_emulated_unbind() 162 int vfio_iommufd_emulated_attach_ioas(struct vfio_device *vdev, u32 *pt_id) in vfio_iommufd_emulated_attach_ioas()
|
A D | vfio_main.c | 133 struct vfio_device *cur; in vfio_device_set_open_count() 165 struct vfio_device *device = in vfio_device_release() 166 container_of(dev, struct vfio_device, device); in vfio_device_release() 195 struct vfio_device *device; in _vfio_alloc_device() 198 if (WARN_ON(size < sizeof(struct vfio_device))) in _vfio_alloc_device() 381 void vfio_device_put_kvm(struct vfio_device *device) in vfio_device_put_kvm() 470 void vfio_device_close(struct vfio_device *device, in vfio_device_close() 519 struct vfio_device *device = filep->private_data; in vfio_device_fops_release() 978 struct vfio_device *device = opaque; in vfio_device_log_read_and_clear() 1089 struct vfio_device *device = filep->private_data; in vfio_device_fops_unl_ioctl() [all …]
|
A D | group.c | 29 struct vfio_device *it, *device = ERR_PTR(-ENODEV); in vfio_device_get_from_name() 172 static int vfio_device_group_open(struct vfio_device *device) in vfio_device_group_open() 205 void vfio_device_group_close(struct vfio_device *device) in vfio_device_group_close() 264 struct vfio_device *device; in vfio_group_ioctl_get_device_fd() 570 struct vfio_device *device; in vfio_group_has_device() 634 int vfio_device_set_group(struct vfio_device *device, in vfio_device_set_group() 652 void vfio_device_remove_group(struct vfio_device *device) in vfio_device_remove_group() 699 void vfio_device_group_register(struct vfio_device *device) in vfio_device_group_register() 713 int vfio_device_group_use_iommu(struct vfio_device *device) in vfio_device_group_use_iommu() 743 bool vfio_device_has_container(struct vfio_device *device) in vfio_device_has_container() [all …]
|
A D | container.c | 164 void vfio_device_container_register(struct vfio_device *device) in vfio_device_container_register() 174 void vfio_device_container_unregister(struct vfio_device *device) in vfio_device_container_unregister() 531 int vfio_device_container_pin_pages(struct vfio_device *device, in vfio_device_container_pin_pages() 548 void vfio_device_container_unpin_pages(struct vfio_device *device, in vfio_device_container_unpin_pages() 560 int vfio_device_container_dma_rw(struct vfio_device *device, in vfio_device_container_dma_rw()
|
/linux-6.3-rc2/drivers/vfio/platform/ |
A D | vfio_platform_private.h | 46 struct vfio_device vdev; 84 int vfio_platform_open_device(struct vfio_device *core_vdev); 85 void vfio_platform_close_device(struct vfio_device *core_vdev); 86 long vfio_platform_ioctl(struct vfio_device *core_vdev, 88 ssize_t vfio_platform_read(struct vfio_device *core_vdev, 91 ssize_t vfio_platform_write(struct vfio_device *core_vdev, 94 int vfio_platform_mmap(struct vfio_device *core_vdev,
|
A D | vfio_platform.c | 40 static int vfio_platform_init_dev(struct vfio_device *core_vdev) in vfio_platform_init_dev() 80 static void vfio_platform_release_dev(struct vfio_device *core_vdev) in vfio_platform_release_dev()
|
A D | vfio_platform_common.c | 217 void vfio_platform_close_device(struct vfio_device *core_vdev) in vfio_platform_close_device() 237 int vfio_platform_open_device(struct vfio_device *core_vdev) in vfio_platform_open_device() 275 long vfio_platform_ioctl(struct vfio_device *core_vdev, in vfio_platform_ioctl() 440 ssize_t vfio_platform_read(struct vfio_device *core_vdev, in vfio_platform_read() 518 ssize_t vfio_platform_write(struct vfio_device *core_vdev, const char __user *buf, in vfio_platform_write() 562 int vfio_platform_mmap(struct vfio_device *core_vdev, struct vm_area_struct *vma) in vfio_platform_mmap()
|
A D | vfio_amba.c | 44 static int vfio_amba_init_dev(struct vfio_device *core_vdev) in vfio_amba_init_dev() 91 static void vfio_amba_release_dev(struct vfio_device *core_vdev) in vfio_amba_release_dev()
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gvt/ |
A D | kvmgt.c | 154 ret = vfio_pin_pages(&vgpu->vfio_device, cur_iova, 1, in gvt_pin_guest_page() 644 if (vgpu->vfio_device.kvm == itr->vfio_device.kvm) { in __kvmgt_vgpu_exist() 658 if (!vgpu->vfio_device.kvm || in intel_vgpu_open_device() 659 vgpu->vfio_device.kvm->mm != current->mm) { in intel_vgpu_open_device() 669 kvm_get_kvm(vgpu->vfio_device.kvm); in intel_vgpu_open_device() 706 kvm_put_kvm(vgpu->vfio_device.kvm); in intel_vgpu_close_device() 1501 vfio_put_device(&vgpu->vfio_device); in intel_vgpu_probe() 1509 vfio_unregister_group_dev(&vgpu->vfio_device); in intel_vgpu_remove() 1510 vfio_put_device(&vgpu->vfio_device); in intel_vgpu_remove() 1549 struct kvm *kvm = info->vfio_device.kvm; in intel_gvt_page_track_add() [all …]
|
A D | gvt.h | 182 struct vfio_device vfio_device; member 735 return vfio_dma_rw(&vgpu->vfio_device, gpa, buf, len, false); in intel_gvt_read_gpa() 753 return vfio_dma_rw(&vgpu->vfio_device, gpa, buf, len, true); in intel_gvt_write_gpa()
|
/linux-6.3-rc2/drivers/s390/cio/ |
A D | vfio_ccw_cp.c | 92 struct vfio_device *vdev, int pa_nr, bool unaligned) in page_array_unpin() 131 static int page_array_pin(struct page_array *pa, struct vfio_device *vdev, bool unaligned) in page_array_pin() 169 static void page_array_unpin_free(struct page_array *pa, struct vfio_device *vdev, bool unaligned) in page_array_unpin_free() 422 struct vfio_device *vdev = in ccwchain_handle_ccw() 508 struct vfio_device *vdev = in get_guest_idal() 562 struct vfio_device *vdev = in ccw_count_idaws() 605 struct vfio_device *vdev = in ccwchain_fetch_ccw() 706 struct vfio_device *vdev = in cp_init() 751 struct vfio_device *vdev = in cp_free()
|
A D | vfio_ccw_ops.c | 35 static void vfio_ccw_dma_unmap(struct vfio_device *vdev, u64 iova, u64 length) in vfio_ccw_dma_unmap() 47 static int vfio_ccw_mdev_init_dev(struct vfio_device *vdev) in vfio_ccw_mdev_init_dev() 129 static void vfio_ccw_mdev_release_dev(struct vfio_device *vdev) in vfio_ccw_mdev_release_dev() 165 static int vfio_ccw_mdev_open_device(struct vfio_device *vdev) in vfio_ccw_mdev_open_device() 200 static void vfio_ccw_mdev_close_device(struct vfio_device *vdev) in vfio_ccw_mdev_close_device() 230 static ssize_t vfio_ccw_mdev_read(struct vfio_device *vdev, in vfio_ccw_mdev_read() 282 static ssize_t vfio_ccw_mdev_write(struct vfio_device *vdev, in vfio_ccw_mdev_write() 507 static ssize_t vfio_ccw_mdev_ioctl(struct vfio_device *vdev, in vfio_ccw_mdev_ioctl() 603 static void vfio_ccw_mdev_request(struct vfio_device *vdev, unsigned int count) in vfio_ccw_mdev_request()
|
/linux-6.3-rc2/drivers/vfio/fsl-mc/ |
A D | vfio_fsl_mc.c | 22 static int vfio_fsl_mc_open_device(struct vfio_device *core_vdev) in vfio_fsl_mc_open_device() 97 static void vfio_fsl_mc_close_device(struct vfio_device *core_vdev) in vfio_fsl_mc_close_device() 120 static long vfio_fsl_mc_ioctl(struct vfio_device *core_vdev, in vfio_fsl_mc_ioctl() 240 static ssize_t vfio_fsl_mc_read(struct vfio_device *core_vdev, char __user *buf, in vfio_fsl_mc_read() 318 static ssize_t vfio_fsl_mc_write(struct vfio_device *core_vdev, in vfio_fsl_mc_write() 384 static int vfio_fsl_mc_mmap(struct vfio_device *core_vdev, in vfio_fsl_mc_mmap() 512 static int vfio_fsl_mc_init_dev(struct vfio_device *core_vdev) in vfio_fsl_mc_init_dev() 564 static void vfio_fsl_mc_release_dev(struct vfio_device *core_vdev) in vfio_fsl_mc_release_dev()
|
A D | vfio_fsl_mc_private.h | 34 struct vfio_device vdev;
|
/linux-6.3-rc2/Documentation/driver-api/ |
A D | vfio.rst | 255 int vfio_register_group_dev(struct vfio_device *device); 262 vfio_device:: 265 void vfio_put_device(struct vfio_device *device); 276 int (*init)(struct vfio_device *vdev); 277 void (*release)(struct vfio_device *vdev); 278 int (*bind_iommufd)(struct vfio_device *vdev, 280 void (*unbind_iommufd)(struct vfio_device *vdev); 281 int (*attach_ioas)(struct vfio_device *vdev, u32 *pt_id); 282 int (*open_device)(struct vfio_device *vdev); 283 void (*close_device)(struct vfio_device *vdev); [all …]
|
/linux-6.3-rc2/drivers/vfio/pci/mlx5/ |
A D | cmd.h | 220 int mlx5vf_start_page_tracker(struct vfio_device *vdev, 222 int mlx5vf_stop_page_tracker(struct vfio_device *vdev); 223 int mlx5vf_tracker_read_and_clear(struct vfio_device *vdev, unsigned long iova,
|
A D | main.c | 1166 mlx5vf_pci_set_device_state(struct vfio_device *vdev, in mlx5vf_pci_set_device_state() 1197 static int mlx5vf_pci_get_data_size(struct vfio_device *vdev, in mlx5vf_pci_get_data_size() 1214 static int mlx5vf_pci_get_device_state(struct vfio_device *vdev, in mlx5vf_pci_get_device_state() 1250 static int mlx5vf_pci_open_device(struct vfio_device *core_vdev) in mlx5vf_pci_open_device() 1267 static void mlx5vf_pci_close_device(struct vfio_device *core_vdev) in mlx5vf_pci_close_device() 1288 static int mlx5vf_pci_init_dev(struct vfio_device *core_vdev) in mlx5vf_pci_init_dev() 1304 static void mlx5vf_pci_release_dev(struct vfio_device *core_vdev) in mlx5vf_pci_release_dev()
|
/linux-6.3-rc2/samples/vfio-mdev/ |
A D | mdpy.c | 95 struct vfio_device vdev; 222 static int mdpy_init_dev(struct vfio_device *vdev) in mdpy_init_dev() 279 static void mdpy_release_dev(struct vfio_device *vdev) in mdpy_release_dev() 298 static ssize_t mdpy_read(struct vfio_device *vdev, char __user *buf, in mdpy_read() 359 static ssize_t mdpy_write(struct vfio_device *vdev, const char __user *buf, in mdpy_write() 418 static int mdpy_mmap(struct vfio_device *vdev, struct vm_area_struct *vma) in mdpy_mmap() 512 static long mdpy_ioctl(struct vfio_device *vdev, unsigned int cmd, in mdpy_ioctl()
|
A D | mbochs.c | 172 struct vfio_device vdev; 516 static int mbochs_init_dev(struct vfio_device *vdev) in mbochs_init_dev() 589 static void mbochs_release_dev(struct vfio_device *vdev) in mbochs_release_dev() 607 static ssize_t mbochs_read(struct vfio_device *vdev, char __user *buf, in mbochs_read() 668 static ssize_t mbochs_write(struct vfio_device *vdev, const char __user *buf, in mbochs_write() 795 static int mbochs_mmap(struct vfio_device *vdev, struct vm_area_struct *vma) in mbochs_mmap() 1185 static long mbochs_ioctl(struct vfio_device *vdev, unsigned int cmd, in mbochs_ioctl() 1305 static void mbochs_close_device(struct vfio_device *vdev) in mbochs_close_device()
|
/linux-6.3-rc2/drivers/vfio/pci/hisilicon/ |
A D | hisi_acc_vfio_pci.c | 1042 hisi_acc_vfio_pci_set_device_state(struct vfio_device *vdev, in hisi_acc_vfio_pci_set_device_state() 1076 hisi_acc_vfio_pci_get_data_size(struct vfio_device *vdev, in hisi_acc_vfio_pci_get_data_size() 1084 hisi_acc_vfio_pci_get_device_state(struct vfio_device *vdev, in hisi_acc_vfio_pci_get_device_state() 1189 static int hisi_acc_pci_rw_access_check(struct vfio_device *core_vdev, in hisi_acc_pci_rw_access_check() 1211 static int hisi_acc_vfio_pci_mmap(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_mmap() 1235 static ssize_t hisi_acc_vfio_pci_write(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_write() 1249 static ssize_t hisi_acc_vfio_pci_read(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_read() 1263 static long hisi_acc_vfio_pci_ioctl(struct vfio_device *core_vdev, unsigned int cmd, in hisi_acc_vfio_pci_ioctl() 1302 static int hisi_acc_vfio_pci_open_device(struct vfio_device *core_vdev) in hisi_acc_vfio_pci_open_device() 1326 static void hisi_acc_vfio_pci_close_device(struct vfio_device *core_vdev) in hisi_acc_vfio_pci_close_device() [all …]
|
/linux-6.3-rc2/drivers/vfio/pci/ |
A D | vfio_pci_core.c | 305 static int vfio_pci_core_pm_entry(struct vfio_device *device, u32 flags, in vfio_pci_core_pm_entry() 326 struct vfio_device *device, u32 flags, in vfio_pci_core_pm_entry_with_wakeup() 382 static int vfio_pci_core_pm_exit(struct vfio_device *device, u32 flags, in vfio_pci_core_pm_exit() 682 void vfio_pci_core_close_device(struct vfio_device *core_vdev) in vfio_pci_core_close_device() 1377 long vfio_pci_core_ioctl(struct vfio_device *core_vdev, unsigned int cmd, in vfio_pci_core_ioctl() 1435 int vfio_pci_core_ioctl_feature(struct vfio_device *device, u32 flags, in vfio_pci_core_ioctl_feature() 1501 ssize_t vfio_pci_core_read(struct vfio_device *core_vdev, char __user *buf, in vfio_pci_core_read() 1921 int vfio_pci_core_match(struct vfio_device *core_vdev, char *buf) in vfio_pci_core_match() 2089 int vfio_pci_core_init_dev(struct vfio_device *core_vdev) in vfio_pci_core_init_dev() 2110 void vfio_pci_core_release_dev(struct vfio_device *core_vdev) in vfio_pci_core_release_dev() [all …]
|
/linux-6.3-rc2/drivers/s390/crypto/ |
A D | vfio_ap_private.h | 112 struct vfio_device vdev;
|