Home
last modified time | relevance | path

Searched refs:vfio_device (Results 1 – 25 of 40) sorted by relevance

12

/linux/include/linux/
H A Dvfio.h38 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 Dvfio_pci_core.h99 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 Dvfio.h20 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 Diommufd.c13 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 Dvfio_main.c67 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 Dgroup.c26 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 Ddevice_cdev.c12 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 Dvfio_platform_private.h46 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 Dvfio_platform_common.c217 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 Dvfio_dev.c40 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 Ddirty.h34 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 Dmain.c11 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 Dvfio_ccw_ops.c35 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 Dvfio_ccw_cp.c92 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 Dmain.c134 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 Dmain.c21 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 Dcommon.h112 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 Dlegacy_io.c124 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 Dvfio_fsl_mc.c22 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 Dkvmgt.c108 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 Dmdpy.c98 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 Dmain.c69 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 Dhisi_acc_vfio_pci.c728 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 Dmain.c58 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 Dcmd.h242 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,

12