| /linux/include/linux/ |
| H A D | vfio.h | 38 struct vfio_device { struct 118 int (*init)(struct vfio_device *vdev); 119 void (*release)(struct vfio_device *vdev); 120 int (*bind_iommufd)(struct vfio_device *vdev, 122 void (*unbind_iommufd)(struct vfio_device *vdev); 123 int (*attach_ioas)(struct vfio_device *vdev, u32 *pt_id); 124 void (*detach_ioas)(struct vfio_device *vdev); 125 int (*pasid_attach_ioas)(struct vfio_device *vdev, u32 pasid, 127 void (*pasid_detach_ioas)(struct vfio_device *vdev, u32 pasid); 128 int (*open_device)(struct vfio_device *vdev); [all …]
|
| H A D | vfio_pci_core.h | 99 struct vfio_device vdev; 161 void vfio_pci_core_close_device(struct vfio_device *core_vdev); 162 int vfio_pci_core_init_dev(struct vfio_device *core_vdev); 163 void vfio_pci_core_release_dev(struct vfio_device *core_vdev); 169 long vfio_pci_core_ioctl(struct vfio_device *core_vdev, unsigned int cmd, 171 int vfio_pci_core_ioctl_feature(struct vfio_device *device, u32 flags, 173 int vfio_pci_ioctl_get_region_info(struct vfio_device *core_vdev, 176 ssize_t vfio_pci_core_read(struct vfio_device *core_vdev, char __user *buf, 178 ssize_t vfio_pci_core_write(struct vfio_device *core_vdev, const char __user *buf, 183 int vfio_pci_core_mmap(struct vfio_device *core_vdev, struct vm_area_struct *vma); [all …]
|
| /linux/drivers/vfio/ |
| H A D | vfio.h | 20 struct vfio_device *device; 30 void vfio_device_put_registration(struct vfio_device *device); 31 bool vfio_device_try_get_registration(struct vfio_device *device); 35 vfio_allocate_device_file(struct vfio_device *device); 99 int vfio_device_block_group(struct vfio_device *device); 100 void vfio_device_unblock_group(struct vfio_device *device); 101 int vfio_device_set_group(struct vfio_device *device, 103 void vfio_device_remove_group(struct vfio_device *device); 104 void vfio_device_group_register(struct vfio_device *device); 105 void vfio_device_group_unregister(struct vfio_device *device); [all …]
|
| H A D | iommufd.c | 13 bool vfio_iommufd_device_has_compat_ioas(struct vfio_device *vdev, in vfio_iommufd_device_has_compat_ioas() 23 struct vfio_device *vdev = df->device; in vfio_df_iommufd_bind() 35 int vfio_iommufd_compat_attach_ioas(struct vfio_device *vdev, in vfio_iommufd_compat_attach_ioas() 57 struct vfio_device *vdev = df->device; in vfio_df_iommufd_unbind() 68 struct iommufd_ctx *vfio_iommufd_device_ictx(struct vfio_device *vdev) in vfio_iommufd_device_ictx() 76 static int vfio_iommufd_device_id(struct vfio_device *vdev) in vfio_iommufd_device_id() 89 int vfio_iommufd_get_dev_id(struct vfio_device *vdev, struct iommufd_ctx *ictx) in vfio_iommufd_get_dev_id() 117 int vfio_iommufd_physical_bind(struct vfio_device *vdev, in vfio_iommufd_physical_bind() 131 void vfio_iommufd_physical_unbind(struct vfio_device *vdev) in vfio_iommufd_physical_unbind() 151 int vfio_iommufd_physical_attach_ioas(struct vfio_device *vdev, u32 *pt_id) in vfio_iommufd_physical_attach_ioas() [all …]
|
| H A D | vfio_main.c | 67 int vfio_assign_device_set(struct vfio_device *device, void *set_id) in vfio_assign_device_set() 117 static void vfio_release_device_set(struct vfio_device *device) in vfio_release_device_set() 140 struct vfio_device *cur; in vfio_device_set_open_count() 151 struct vfio_device * 155 struct vfio_device *cur; in vfio_find_device_in_devset() 170 void vfio_device_put_registration(struct vfio_device *device) in vfio_device_put_registration() 177 bool vfio_device_try_get_registration(struct vfio_device *device) in vfio_device_try_get_registration() 189 struct vfio_device *device = in vfio_device_release() 190 container_of(dev, struct vfio_device, device); in vfio_device_release() 203 static int vfio_init_device(struct vfio_device *device, struct device *dev, [all …]
|
| H A D | group.c | 26 static struct vfio_device *vfio_device_get_from_name(struct vfio_group *group, in vfio_device_get_from_name() 29 struct vfio_device *it, *device = ERR_PTR(-ENODEV); in vfio_device_get_from_name() 158 static void vfio_device_group_get_kvm_safe(struct vfio_device *device) in vfio_device_group_get_kvm_safe() 167 struct vfio_device *device = df->device; in vfio_df_group_open() 235 struct vfio_device *device = df->device; in vfio_df_group_close() 250 static struct file *vfio_device_open_file(struct vfio_device *device) in vfio_device_open_file() 301 struct vfio_device *device; in vfio_group_ioctl_get_device_fd() 379 int vfio_device_block_group(struct vfio_device *device) in vfio_device_block_group() 397 void vfio_device_unblock_group(struct vfio_device *device) in vfio_device_unblock_group() 622 struct vfio_device *device; in vfio_group_has_device() [all …]
|
| H A D | device_cdev.c | 12 void vfio_init_device_cdev(struct vfio_device *device) in vfio_init_device_cdev() 25 struct vfio_device *device = container_of(inode->i_cdev, in vfio_device_fops_cdev_open() 26 struct vfio_device, cdev); in vfio_device_fops_cdev_open() 63 static int vfio_df_check_token(struct vfio_device *device, in vfio_df_check_token() 87 struct vfio_device *device = df->device; in vfio_df_ioctl_bind_iommufd() 175 struct vfio_device *device = df->device; in vfio_df_unbind_iommufd() 198 struct vfio_device *device = df->device; in vfio_df_ioctl_attach_pt() 257 struct vfio_device *device = df->device; in vfio_df_ioctl_detach_pt()
|
| /linux/drivers/vfio/platform/ |
| H 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 int vfio_platform_ioctl_get_region_info(struct vfio_device *core_vdev, 91 ssize_t vfio_platform_read(struct vfio_device *core_vdev, 94 ssize_t vfio_platform_write(struct vfio_device *core_vdev, 97 int vfio_platform_mmap(struct vfio_device *core_vdev,
|
| H 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 int vfio_platform_ioctl_get_region_info(struct vfio_device *core_vdev, in vfio_platform_ioctl_get_region_info() 293 long vfio_platform_ioctl(struct vfio_device *core_vdev, in vfio_platform_ioctl() 441 ssize_t vfio_platform_read(struct vfio_device *core_vdev, in vfio_platform_read() 524 ssize_t vfio_platform_write(struct vfio_device *core_vdev, const char __user *buf, in vfio_platform_write() 568 int vfio_platform_mmap(struct vfio_device *core_vdev, struct vm_area_struct *vma) in vfio_platform_mmap()
|
| /linux/drivers/vfio/pci/pds/ |
| H A D | vfio_dev.c | 40 pds_vfio_set_device_state(struct vfio_device *vdev, in pds_vfio_set_device_state() 84 static int pds_vfio_get_device_state(struct vfio_device *vdev, in pds_vfio_get_device_state() 97 static int pds_vfio_get_device_state_size(struct vfio_device *vdev, in pds_vfio_get_device_state_size() 116 static int pds_vfio_init_device(struct vfio_device *vdev) in pds_vfio_init_device() 149 static void pds_vfio_release_device(struct vfio_device *vdev) in pds_vfio_release_device() 159 static int pds_vfio_open_device(struct vfio_device *vdev) in pds_vfio_open_device() 177 static void pds_vfio_close_device(struct vfio_device *vdev) in pds_vfio_close_device()
|
| H A D | dirty.h | 34 int pds_vfio_dma_logging_report(struct vfio_device *vdev, unsigned long iova, 37 int pds_vfio_dma_logging_start(struct vfio_device *vdev, 40 int pds_vfio_dma_logging_stop(struct vfio_device *vdev);
|
| /linux/drivers/vfio/cdx/ |
| H A D | main.c | 11 static int vfio_cdx_open_device(struct vfio_device *core_vdev) in vfio_cdx_open_device() 57 static void vfio_cdx_close_device(struct vfio_device *core_vdev) in vfio_cdx_close_device() 67 static int vfio_cdx_bm_ctrl(struct vfio_device *core_vdev, u32 flags, in vfio_cdx_bm_ctrl() 99 static int vfio_cdx_ioctl_feature(struct vfio_device *device, u32 flags, in vfio_cdx_ioctl_feature() 132 static int vfio_cdx_ioctl_get_region_info(struct vfio_device *core_vdev, in vfio_cdx_ioctl_get_region_info() 206 static long vfio_cdx_ioctl(struct vfio_device *core_vdev, in vfio_cdx_ioctl() 247 static int vfio_cdx_mmap(struct vfio_device *core_vdev, in vfio_cdx_mmap()
|
| /linux/drivers/s390/cio/ |
| H 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() 128 static void vfio_ccw_mdev_release_dev(struct vfio_device *vdev) in vfio_ccw_mdev_release_dev() 164 static int vfio_ccw_mdev_open_device(struct vfio_device *vdev) in vfio_ccw_mdev_open_device() 199 static void vfio_ccw_mdev_close_device(struct vfio_device *vdev) in vfio_ccw_mdev_close_device() 229 static ssize_t vfio_ccw_mdev_read(struct vfio_device *vdev, in vfio_ccw_mdev_read() 281 static ssize_t vfio_ccw_mdev_write(struct vfio_device *vdev, in vfio_ccw_mdev_write() 315 static int vfio_ccw_mdev_ioctl_get_region_info(struct vfio_device *vdev, in vfio_ccw_mdev_ioctl_get_region_info() 490 static ssize_t vfio_ccw_mdev_ioctl(struct vfio_device *vdev, in vfio_ccw_mdev_ioctl() 568 static void vfio_ccw_mdev_request(struct vfio_device *vdev, unsigned int count) in vfio_ccw_mdev_request()
|
| H 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() 423 struct vfio_device *vdev = in ccwchain_handle_ccw() 510 struct vfio_device *vdev = in get_guest_idal() 568 struct vfio_device *vdev = in ccw_count_idaws() 611 struct vfio_device *vdev = in ccwchain_fetch_ccw() 712 struct vfio_device *vdev = in cp_init() 757 struct vfio_device *vdev = in cp_free()
|
| /linux/drivers/vfio/pci/xe/ |
| H A D | main.c | 134 static int xe_vfio_pci_open_device(struct vfio_device *core_vdev) in xe_vfio_pci_open_device() 152 static void xe_vfio_pci_close_device(struct vfio_device *core_vdev) in xe_vfio_pci_close_device() 386 xe_vfio_pci_set_device_state(struct vfio_device *core_vdev, in xe_vfio_pci_set_device_state() 422 static int xe_vfio_pci_get_device_state(struct vfio_device *core_vdev, in xe_vfio_pci_get_device_state() 435 static int xe_vfio_pci_get_data_size(struct vfio_device *vdev, in xe_vfio_pci_get_data_size() 456 struct vfio_device *core_vdev = &xe_vdev->core_device.vdev; in xe_vfio_pci_migration_init() 484 static int xe_vfio_pci_init_dev(struct vfio_device *core_vdev) in xe_vfio_pci_init_dev() 494 static void xe_vfio_pci_release_dev(struct vfio_device *core_vdev) in xe_vfio_pci_release_dev()
|
| /linux/drivers/vfio/pci/virtio/ |
| H A D | main.c | 21 static int virtiovf_pci_open_device(struct vfio_device *core_vdev) in virtiovf_pci_open_device() 45 static void virtiovf_pci_close_device(struct vfio_device *core_vdev) in virtiovf_pci_close_device() 55 static int virtiovf_pci_init_device(struct vfio_device *core_vdev) in virtiovf_pci_init_device() 73 static void virtiovf_pci_core_release_dev(struct vfio_device *core_vdev) in virtiovf_pci_core_release_dev()
|
| H A D | common.h | 112 int virtiovf_pci_ioctl_get_region_info(struct vfio_device *core_vdev, 115 ssize_t virtiovf_pci_core_write(struct vfio_device *core_vdev, 118 ssize_t virtiovf_pci_core_read(struct vfio_device *core_vdev, char __user *buf,
|
| H A D | legacy_io.c | 124 static ssize_t virtiovf_pci_read_config(struct vfio_device *core_vdev, in virtiovf_pci_read_config() 209 ssize_t virtiovf_pci_core_read(struct vfio_device *core_vdev, char __user *buf, in virtiovf_pci_core_read() 229 static ssize_t virtiovf_pci_write_config(struct vfio_device *core_vdev, in virtiovf_pci_write_config() 263 ssize_t virtiovf_pci_core_write(struct vfio_device *core_vdev, const char __user *buf, in virtiovf_pci_core_write() 283 int virtiovf_pci_ioctl_get_region_info(struct vfio_device *core_vdev, in virtiovf_pci_ioctl_get_region_info()
|
| /linux/drivers/vfio/fsl-mc/ |
| H 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 int vfio_fsl_mc_ioctl_get_region_info(struct vfio_device *core_vdev, in vfio_fsl_mc_ioctl_get_region_info() 138 static long vfio_fsl_mc_ioctl(struct vfio_device *core_vdev, in vfio_fsl_mc_ioctl() 234 static ssize_t vfio_fsl_mc_read(struct vfio_device *core_vdev, char __user *buf, in vfio_fsl_mc_read() 312 static ssize_t vfio_fsl_mc_write(struct vfio_device *core_vdev, in vfio_fsl_mc_write() 378 static int vfio_fsl_mc_mmap(struct vfio_device *core_vdev, in vfio_fsl_mc_mmap() 506 static int vfio_fsl_mc_init_dev(struct vfio_device *core_vdev) in vfio_fsl_mc_init_dev() 558 static void vfio_fsl_mc_release_dev(struct vfio_device *core_vdev) in vfio_fsl_mc_release_dev()
|
| /linux/drivers/gpu/drm/i915/gvt/ |
| H A D | kvmgt.c | 108 container_of((vfio_dev), struct intel_vgpu, vfio_device) 132 vfio_unpin_pages(&vgpu->vfio_device, gfn << PAGE_SHIFT, in gvt_unpin_guest_page() 153 ret = vfio_pin_pages(&vgpu->vfio_device, cur_iova, 1, in gvt_pin_guest_page() 621 static void intel_vgpu_dma_unmap(struct vfio_device *vfio_dev, u64 iova, in intel_vgpu_dma_unmap() 653 if (vgpu->vfio_device.kvm == itr->vfio_device.kvm) { in __kvmgt_vgpu_exist() 663 static int intel_vgpu_open_device(struct vfio_device *vfio_dev) in intel_vgpu_open_device() 673 ret = kvm_page_track_register_notifier(vgpu->vfio_device.kvm, in intel_vgpu_open_device() 701 static void intel_vgpu_close_device(struct vfio_device *vfio_dev) in intel_vgpu_close_device() 711 kvm_page_track_unregister_notifier(vgpu->vfio_device.kvm, in intel_vgpu_close_device() 866 static ssize_t intel_vgpu_read(struct vfio_device *vfio_dev, char __user *buf, in intel_vgpu_read() [all …]
|
| /linux/samples/vfio-mdev/ |
| H A D | mdpy.c | 98 struct vfio_device vdev; 225 static int mdpy_init_dev(struct vfio_device *vdev) in mdpy_init_dev() 282 static void mdpy_release_dev(struct vfio_device *vdev) in mdpy_release_dev() 301 static ssize_t mdpy_read(struct vfio_device *vdev, char __user *buf, in mdpy_read() 362 static ssize_t mdpy_write(struct vfio_device *vdev, const char __user *buf, in mdpy_write() 421 static int mdpy_mmap(struct vfio_device *vdev, struct vm_area_struct *vma) in mdpy_mmap() 438 static int mdpy_ioctl_get_region_info(struct vfio_device *vdev, in mdpy_ioctl_get_region_info() 518 static long mdpy_ioctl(struct vfio_device *vdev, unsigned int cmd, in mdpy_ioctl()
|
| /linux/drivers/vfio/pci/nvgrace-gpu/ |
| H A D | main.c | 69 static void nvgrace_gpu_init_fake_bar_emu_regs(struct vfio_device *core_vdev) in nvgrace_gpu_init_fake_bar_emu_regs() 151 nvgrace_gpu_vfio_pci_register_pfn_range(struct vfio_device *core_vdev, in nvgrace_gpu_vfio_pci_register_pfn_range() 167 static int nvgrace_gpu_open_device(struct vfio_device *core_vdev) in nvgrace_gpu_open_device() 217 static void nvgrace_gpu_close_device(struct vfio_device *core_vdev) in nvgrace_gpu_close_device() 355 static int nvgrace_gpu_mmap(struct vfio_device *core_vdev, in nvgrace_gpu_mmap() 414 static int nvgrace_gpu_ioctl_get_region_info(struct vfio_device *core_vdev, in nvgrace_gpu_ioctl_get_region_info() 469 static long nvgrace_gpu_ioctl(struct vfio_device *core_vdev, in nvgrace_gpu_ioctl() 504 nvgrace_gpu_read_config_emu(struct vfio_device *core_vdev, in nvgrace_gpu_read_config_emu() 555 nvgrace_gpu_write_config_emu(struct vfio_device *core_vdev, in nvgrace_gpu_write_config_emu() 741 nvgrace_gpu_read(struct vfio_device *core_vdev, in nvgrace_gpu_read() [all …]
|
| /linux/drivers/vfio/pci/hisilicon/ |
| H A D | hisi_acc_vfio_pci.c | 728 static struct hisi_acc_vf_core_device *hisi_acc_get_vf_dev(struct vfio_device *vdev) in hisi_acc_get_vf_dev() 1139 hisi_acc_vfio_pci_set_device_state(struct vfio_device *vdev, in hisi_acc_vfio_pci_set_device_state() 1172 hisi_acc_vfio_pci_get_data_size(struct vfio_device *vdev, in hisi_acc_vfio_pci_get_data_size() 1180 hisi_acc_vfio_pci_get_device_state(struct vfio_device *vdev, in hisi_acc_vfio_pci_get_device_state() 1334 static int hisi_acc_pci_rw_access_check(struct vfio_device *core_vdev, in hisi_acc_pci_rw_access_check() 1357 static int hisi_acc_vfio_pci_mmap(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_mmap() 1382 static ssize_t hisi_acc_vfio_pci_write(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_write() 1396 static ssize_t hisi_acc_vfio_pci_read(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_read() 1410 static int hisi_acc_vfio_ioctl_get_region(struct vfio_device *core_vdev, in hisi_acc_vfio_ioctl_get_region() 1429 static int hisi_acc_vf_debug_check(struct seq_file *seq, struct vfio_device *vdev) in hisi_acc_vf_debug_check() [all …]
|
| /linux/drivers/vfio/pci/qat/ |
| H A D | main.c | 58 static int qat_vf_pci_open_device(struct vfio_device *core_vdev) in qat_vf_pci_open_device() 106 static void qat_vf_pci_close_device(struct vfio_device *core_vdev) in qat_vf_pci_close_device() 484 static struct file *qat_vf_pci_set_device_state(struct vfio_device *vdev, in qat_vf_pci_set_device_state() 516 static int qat_vf_pci_get_device_state(struct vfio_device *vdev, in qat_vf_pci_get_device_state() 529 static int qat_vf_pci_get_data_size(struct vfio_device *vdev, in qat_vf_pci_get_data_size() 548 static void qat_vf_pci_release_dev(struct vfio_device *core_vdev) in qat_vf_pci_release_dev() 559 static int qat_vf_pci_init_dev(struct vfio_device *core_vdev) in qat_vf_pci_init_dev()
|
| /linux/drivers/vfio/pci/mlx5/ |
| H A D | cmd.h | 242 int mlx5vf_start_page_tracker(struct vfio_device *vdev, 244 int mlx5vf_stop_page_tracker(struct vfio_device *vdev); 245 int mlx5vf_tracker_read_and_clear(struct vfio_device *vdev, unsigned long iova,
|