Home
last modified time | relevance | path

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

12

/linux-6.12.1/include/linux/
Dvfio.h37 struct vfio_device { struct
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 *vdev, u32 *pt_id);
117 void (*detach_ioas)(struct vfio_device *vdev);
118 int (*open_device)(struct vfio_device *vdev);
119 void (*close_device)(struct vfio_device *vdev);
120 ssize_t (*read)(struct vfio_device *vdev, char __user *buf,
[all …]
Dvfio_pci_core.h53 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-6.12.1/drivers/vfio/
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 …]
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()
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 …]
Dvfio_main.c66 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 …]
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()
160 static void vfio_device_group_get_kvm_safe(struct vfio_device *device) in vfio_device_group_get_kvm_safe()
169 struct vfio_device *device = df->device; in vfio_df_group_open()
238 struct vfio_device *device = df->device; in vfio_df_group_close()
253 static struct file *vfio_device_open_file(struct vfio_device *device) in vfio_device_open_file()
316 struct vfio_device *device; in vfio_group_ioctl_get_device_fd()
412 int vfio_device_block_group(struct vfio_device *device) in vfio_device_block_group()
430 void vfio_device_unblock_group(struct vfio_device *device) in vfio_device_unblock_group()
655 struct vfio_device *device; in vfio_group_has_device()
[all …]
Ddebugfs.c17 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()
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()
66 struct vfio_device *device = df->device; in vfio_df_ioctl_bind_iommufd()
143 struct vfio_device *device = df->device; in vfio_df_unbind_iommufd()
165 struct vfio_device *device = df->device; in vfio_df_ioctl_attach_pt()
201 struct vfio_device *device = df->device; in vfio_df_ioctl_detach_pt()
Dcontainer.c164 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.12.1/drivers/vfio/platform/
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 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,
Dvfio_platform.c40 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()
/linux-6.12.1/drivers/vfio/pci/pds/
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()
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-6.12.1/drivers/vfio/pci/virtio/
Dmain.c135 static ssize_t virtiovf_pci_read_config(struct vfio_device *core_vdev, in virtiovf_pci_read_config()
221 virtiovf_pci_core_read(struct vfio_device *core_vdev, char __user *buf, in virtiovf_pci_core_read()
241 static ssize_t virtiovf_pci_write_config(struct vfio_device *core_vdev, in virtiovf_pci_write_config()
276 virtiovf_pci_core_write(struct vfio_device *core_vdev, const char __user *buf, in virtiovf_pci_core_write()
297 virtiovf_pci_ioctl_get_region_info(struct vfio_device *core_vdev, in virtiovf_pci_ioctl_get_region_info()
325 virtiovf_vfio_pci_core_ioctl(struct vfio_device *core_vdev, unsigned int cmd, in virtiovf_vfio_pci_core_ioctl()
356 static int virtiovf_pci_open_device(struct vfio_device *core_vdev) in virtiovf_pci_open_device()
407 static int virtiovf_pci_init_device(struct vfio_device *core_vdev) in virtiovf_pci_init_device()
434 static void virtiovf_pci_core_release_dev(struct vfio_device *core_vdev) in virtiovf_pci_core_release_dev()
/linux-6.12.1/drivers/vfio/cdx/
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()
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-6.12.1/drivers/vfio/pci/nvgrace-gpu/
Dmain.c51 static void nvgrace_gpu_init_fake_bar_emu_regs(struct vfio_device *core_vdev) in nvgrace_gpu_init_fake_bar_emu_regs()
75 static int nvgrace_gpu_open_device(struct vfio_device *core_vdev) in nvgrace_gpu_open_device()
98 static void nvgrace_gpu_close_device(struct vfio_device *core_vdev) in nvgrace_gpu_close_device()
121 static int nvgrace_gpu_mmap(struct vfio_device *core_vdev, in nvgrace_gpu_mmap()
197 nvgrace_gpu_ioctl_get_region_info(struct vfio_device *core_vdev, in nvgrace_gpu_ioctl_get_region_info()
280 static long nvgrace_gpu_ioctl(struct vfio_device *core_vdev, in nvgrace_gpu_ioctl()
317 nvgrace_gpu_read_config_emu(struct vfio_device *core_vdev, in nvgrace_gpu_read_config_emu()
368 nvgrace_gpu_write_config_emu(struct vfio_device *core_vdev, in nvgrace_gpu_write_config_emu()
547 nvgrace_gpu_read(struct vfio_device *core_vdev, in nvgrace_gpu_read()
657 nvgrace_gpu_write(struct vfio_device *core_vdev, in nvgrace_gpu_write()
/linux-6.12.1/drivers/s390/cio/
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()
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()
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-6.12.1/drivers/gpu/drm/i915/gvt/
Dkvmgt.c107 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 …]
/linux-6.12.1/drivers/vfio/fsl-mc/
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 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-6.12.1/Documentation/driver-api/
Dvfio.rst386 int vfio_register_group_dev(struct vfio_device *device);
387 int vfio_register_emulated_iommu_dev(struct vfio_device *device);
388 void vfio_unregister_group_dev(struct vfio_device *device);
390 The driver should embed the vfio_device in its own structure and use
393 vfio_device::
396 void vfio_put_device(struct vfio_device *device);
407 int (*init)(struct vfio_device *vdev);
408 void (*release)(struct vfio_device *vdev);
409 int (*bind_iommufd)(struct vfio_device *vdev,
411 void (*unbind_iommufd)(struct vfio_device *vdev);
[all …]
/linux-6.12.1/drivers/vfio/pci/qat/
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-6.12.1/samples/vfio-mdev/
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()
515 static long mdpy_ioctl(struct vfio_device *vdev, unsigned int cmd, in mdpy_ioctl()
/linux-6.12.1/drivers/vfio/pci/mlx5/
Dcmd.h235 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-6.12.1/drivers/vfio/pci/hisilicon/
Dhisi_acc_vfio_pci.c1031 hisi_acc_vfio_pci_set_device_state(struct vfio_device *vdev, in hisi_acc_vfio_pci_set_device_state()
1065 hisi_acc_vfio_pci_get_data_size(struct vfio_device *vdev, in hisi_acc_vfio_pci_get_data_size()
1073 hisi_acc_vfio_pci_get_device_state(struct vfio_device *vdev, in hisi_acc_vfio_pci_get_device_state()
1166 static int hisi_acc_pci_rw_access_check(struct vfio_device *core_vdev, in hisi_acc_pci_rw_access_check()
1188 static int hisi_acc_vfio_pci_mmap(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_mmap()
1212 static ssize_t hisi_acc_vfio_pci_write(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_write()
1226 static ssize_t hisi_acc_vfio_pci_read(struct vfio_device *core_vdev, in hisi_acc_vfio_pci_read()
1240 static long hisi_acc_vfio_pci_ioctl(struct vfio_device *core_vdev, unsigned int cmd, in hisi_acc_vfio_pci_ioctl()
1279 static int hisi_acc_vfio_pci_open_device(struct vfio_device *core_vdev) in hisi_acc_vfio_pci_open_device()
1303 static void hisi_acc_vfio_pci_close_device(struct vfio_device *core_vdev) in hisi_acc_vfio_pci_close_device()
[all …]

12