/linux/include/linux/ |
H A D | vfio.h | 37 struct vfio_device { struct 41 * mig_ops/log_ops is a static property of the vfio_device which must argument 42 * be set prior to registering the vfio_device. 75 * debug_root is a static property of the vfio_device 76 * which must be set prior to registering the vfio_device. 111 int (*init)(struct vfio_device *vdev); 112 void (*release)(struct vfio_device *vdev); 113 int (*bind_iommufd)(struct vfio_device *vdev, 115 void (*unbind_iommufd)(struct vfio_device *vdev); 116 int (*attach_ioas)(struct vfio_device *vde 39 opsvfio_device global() argument 51 dev_setvfio_device global() argument 74 cdev_openedvfio_device global() argument 82 debug_rootvfio_device global() argument [all...] |
H A D | vfio_pci_core.h | 53 struct vfio_device vdev; 106 void vfio_pci_core_close_device(struct vfio_device *core_vdev); 107 int vfio_pci_core_init_dev(struct vfio_device *core_vdev); 108 void vfio_pci_core_release_dev(struct vfio_device *core_vdev); 114 long vfio_pci_core_ioctl(struct vfio_device *core_vdev, unsigned int cmd, 116 int vfio_pci_core_ioctl_feature(struct vfio_device *device, u32 flags, 118 ssize_t vfio_pci_core_read(struct vfio_device *core_vdev, char __user *buf, 120 ssize_t vfio_pci_core_write(struct vfio_device *core_vdev, const char __user *buf, 122 int vfio_pci_core_mmap(struct vfio_device *core_vdev, struct vm_area_struct *vma); 123 void vfio_pci_core_request(struct vfio_device *core_vdev, unsigned int count); [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() 31 int vfio_iommufd_compat_attach_ioas(struct vfio_device *vdev, in vfio_iommufd_compat_attach_ioas() 53 struct vfio_device *vdev = df->device; in vfio_df_iommufd_unbind() 64 struct iommufd_ctx *vfio_iommufd_device_ictx(struct vfio_device *vdev) in vfio_iommufd_device_ictx() 72 static int vfio_iommufd_device_id(struct vfio_device *vdev) in vfio_iommufd_device_id() 85 int vfio_iommufd_get_dev_id(struct vfio_device *vdev, struct iommufd_ctx *ictx) in vfio_iommufd_get_dev_id() 113 int vfio_iommufd_physical_bind(struct vfio_device *vdev, in vfio_iommufd_physical_bind() 126 void vfio_iommufd_physical_unbind(struct vfio_device *vdev) in vfio_iommufd_physical_unbind() 139 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 | 66 int vfio_assign_device_set(struct vfio_device *device, void *set_id) in vfio_assign_device_set() 116 static void vfio_release_device_set(struct vfio_device *device) in vfio_release_device_set() 139 struct vfio_device *cur; in vfio_device_set_open_count() 150 struct vfio_device * 154 struct vfio_device *cur; in vfio_find_device_in_devset() 169 void vfio_device_put_registration(struct vfio_device *device) in vfio_device_put_registration() 175 bool vfio_device_try_get_registration(struct vfio_device *device) in vfio_device_try_get_registration() 186 struct vfio_device *device = in vfio_device_release() 187 container_of(dev, struct vfio_device, device); in vfio_device_release() 200 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() 236 struct vfio_device *device = df->device; in vfio_df_group_close() 251 static struct file *vfio_device_open_file(struct vfio_device *device) in vfio_device_open_file() 314 struct vfio_device *device; in vfio_group_ioctl_get_device_fd() 410 int vfio_device_block_group(struct vfio_device *device) in vfio_device_block_group() 428 void vfio_device_unblock_group(struct vfio_device *device) in vfio_device_unblock_group() 653 struct vfio_device *device; in vfio_group_has_device() [all …]
|
H A D | debugfs.c | 17 struct vfio_device *vdev = container_of(vf_dev, in vfio_device_state_read() 18 struct vfio_device, device); in vfio_device_state_read() 61 void vfio_device_debugfs_init(struct vfio_device *vdev) in vfio_device_debugfs_init() 78 void vfio_device_debugfs_exit(struct vfio_device *vdev) in vfio_device_debugfs_exit()
|
H 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/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 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,
|
H 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()
|
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 long vfio_platform_ioctl(struct vfio_device *core_vdev, in vfio_platform_ioctl() 445 ssize_t vfio_platform_read(struct vfio_device *core_vdev, in vfio_platform_read() 528 ssize_t vfio_platform_write(struct vfio_device *core_vdev, const char __user *buf, in vfio_platform_write() 572 int vfio_platform_mmap(struct vfio_device *core_vdev, struct vm_area_struct *vma) in vfio_platform_mmap()
|
H 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/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() 212 static long vfio_cdx_ioctl(struct vfio_device *core_vdev, in vfio_cdx_ioctl() 255 static int vfio_cdx_mmap(struct vfio_device *core_vdev, in vfio_cdx_mmap()
|
/linux/drivers/gpu/drm/i915/gvt/ |
H A D | kvmgt.c | 107 container_of((vfio_dev), struct intel_vgpu, vfio_device) 131 vfio_unpin_pages(&vgpu->vfio_device, gfn << PAGE_SHIFT, in gvt_unpin_guest_page() 152 ret = vfio_pin_pages(&vgpu->vfio_device, cur_iova, 1, in gvt_pin_guest_page() 620 static void intel_vgpu_dma_unmap(struct vfio_device *vfio_dev, u64 iova, in intel_vgpu_dma_unmap() 652 if (vgpu->vfio_device.kvm == itr->vfio_device.kvm) { in __kvmgt_vgpu_exist() 662 static int intel_vgpu_open_device(struct vfio_device *vfio_dev) in intel_vgpu_open_device() 672 ret = kvm_page_track_register_notifier(vgpu->vfio_device.kvm, in intel_vgpu_open_device() 700 static void intel_vgpu_close_device(struct vfio_device *vfio_dev) in intel_vgpu_close_device() 710 kvm_page_track_unregister_notifier(vgpu->vfio_device.kvm, in intel_vgpu_close_device() 865 static ssize_t intel_vgpu_read(struct vfio_device *vfio_dev, char __user *buf, in intel_vgpu_read() [all …]
|
H A D | gvt.h | 183 struct vfio_device vfio_device; member 728 return vfio_dma_rw(&vgpu->vfio_device, gpa, buf, len, false); in intel_gvt_read_gpa() 746 return vfio_dma_rw(&vgpu->vfio_device, gpa, buf, len, true); in intel_gvt_write_gpa()
|
/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() 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()
|
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/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 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()
|
/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() 515 static long mdpy_ioctl(struct vfio_device *vdev, unsigned int cmd, in mdpy_ioctl()
|
H A D | mtty.c | 154 struct vfio_device vdev; 1224 static struct file *mtty_set_state(struct vfio_device *vdev, in mtty_set_state() 1259 static int mtty_get_state(struct vfio_device *vdev, in mtty_get_state() 1271 static int mtty_get_data_size(struct vfio_device *vdev, in mtty_get_data_size() 1287 static int mtty_log_start(struct vfio_device *vdev, in mtty_log_start() 1294 static int mtty_log_stop(struct vfio_device *vdev) in mtty_log_stop() 1299 static int mtty_log_read_and_clear(struct vfio_device *vdev, in mtty_log_read_and_clear() 1312 static int mtty_init_dev(struct vfio_device *vdev) in mtty_init_dev() 1382 static void mtty_release_dev(struct vfio_device *vdev) in mtty_release_dev() 1417 static ssize_t mtty_read(struct vfio_device *vdev, char __user *buf, in mtty_read() [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 | 235 int mlx5vf_start_page_tracker(struct vfio_device *vdev, 237 int mlx5vf_stop_page_tracker(struct vfio_device *vdev); 238 int mlx5vf_tracker_read_and_clear(struct vfio_device *vdev, unsigned long iova,
|
/linux/drivers/vfio/pci/ |
H A D | vfio_pci_core.c | 303 static int vfio_pci_core_pm_entry(struct vfio_device *device, u32 flags, in vfio_pci_core_pm_entry() 324 struct vfio_device *device, u32 flags, in vfio_pci_core_pm_entry_with_wakeup() 380 static int vfio_pci_core_pm_exit(struct vfio_device *device, u32 flags, in vfio_pci_core_pm_exit() 683 void vfio_pci_core_close_device(struct vfio_device *core_vdev) in vfio_pci_core_close_device() 777 struct vfio_device *vdev; 801 struct vfio_device *vdev; in vfio_pci_fill_devs() 1455 long vfio_pci_core_ioctl(struct vfio_device *core_vdev, unsigned int cmd, in vfio_pci_core_ioctl() 1485 static int vfio_pci_core_feature_token(struct vfio_device *device, u32 flags, in vfio_pci_core_feature_token() 1513 int vfio_pci_core_ioctl_feature(struct vfio_device *device, u32 flags, in vfio_pci_core_ioctl_feature() 1579 ssize_t vfio_pci_core_read(struct vfio_device *core_vdev, char __user *buf, in vfio_pci_core_read() [all …]
|