/linux-6.12.1/include/linux/ |
D | vfio.h | 37 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 …]
|
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-6.12.1/drivers/vfio/ |
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 …]
|
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 …]
|
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 …]
|
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() 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 …]
|
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()
|
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() 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()
|
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.12.1/drivers/vfio/platform/ |
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,
|
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()
|
/linux-6.12.1/drivers/vfio/pci/pds/ |
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()
|
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-6.12.1/drivers/vfio/pci/virtio/ |
D | main.c | 135 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/ |
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-6.12.1/drivers/vfio/pci/nvgrace-gpu/ |
D | main.c | 51 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/ |
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()
|
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-6.12.1/drivers/gpu/drm/i915/gvt/ |
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 …]
|
/linux-6.12.1/drivers/vfio/fsl-mc/ |
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-6.12.1/Documentation/driver-api/ |
D | vfio.rst | 386 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/ |
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-6.12.1/samples/vfio-mdev/ |
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()
|
/linux-6.12.1/drivers/vfio/pci/mlx5/ |
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-6.12.1/drivers/vfio/pci/hisilicon/ |
D | hisi_acc_vfio_pci.c | 1031 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 …]
|