Home
last modified time | relevance | path

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

12

/linux/drivers/vfio/
H A Dgroup.c122 if (!group->iommu_group) { in vfio_group_ioctl_set_container()
335 if (!group->iommu_group) { in vfio_group_ioctl_get_status()
350 else if (!iommu_group_dma_owner_claimed(group->iommu_group)) in vfio_group_ioctl_get_status()
483 vfio_group_find_from_iommu(struct iommu_group *iommu_group) in vfio_group_find_from_iommu() argument
494 if (group->iommu_group == iommu_group) in vfio_group_find_from_iommu()
506 WARN_ON(group->iommu_group); in vfio_group_release()
512 static struct vfio_group *vfio_group_alloc(struct iommu_group *iommu_group, in vfio_group_alloc() argument
540 group->iommu_group = iommu_group; in vfio_group_alloc()
542 iommu_group_ref_get(iommu_group); in vfio_group_alloc()
549 static struct vfio_group *vfio_create_group(struct iommu_group *iommu_group, in vfio_create_group() argument
[all …]
H A Dcontainer.c56 struct iommu_group *iommu_group, enum vfio_group_type type) in vfio_noiommu_attach_group() argument
62 struct iommu_group *iommu_group) in vfio_noiommu_detach_group() argument
243 ret = driver->ops->attach_group(data, group->iommu_group, in __vfio_container_attach_groups()
254 driver->ops->detach_group(data, group->iommu_group); in __vfio_container_attach_groups()
437 ret = iommu_group_claim_dma_owner(group->iommu_group, group); in vfio_container_attach_group()
445 group->iommu_group, in vfio_container_attach_group()
450 group->iommu_group); in vfio_container_attach_group()
481 group->iommu_group); in vfio_group_detach_container()
484 iommu_group_release_dma_owner(group->iommu_group); in vfio_group_detach_container()
536 struct iommu_group *iommu_group = device->group->iommu_group; in vfio_device_container_pin_pages() local
[all …]
H A Dvfio.h16 struct iommu_group;
81 struct iommu_group *iommu_group; member
210 struct iommu_group *group,
213 struct iommu_group *group);
215 struct iommu_group *group,
228 struct iommu_group *group);
H A Dvfio_iommu_type1.c114 struct iommu_group *iommu_group; member
159 struct iommu_group *iommu_group);
895 struct iommu_group *iommu_group, in vfio_iommu_type1_pin_pages() argument
997 group = vfio_iommu_find_iommu_group(iommu, iommu_group); in vfio_iommu_type1_pin_pages()
1949 struct iommu_group *iommu_group) in find_iommu_group() argument
1954 if (g->iommu_group == iommu_group) in find_iommu_group()
1963 struct iommu_group *iommu_group) in vfio_iommu_find_iommu_group() argument
1969 group = find_iommu_group(domain, iommu_group); in vfio_iommu_find_iommu_group()
1975 if (group->iommu_group == iommu_group) in vfio_iommu_find_iommu_group()
2238 struct iommu_group *iommu_group, enum vfio_group_type type) in vfio_iommu_type1_attach_group() argument
[all …]
H A Dvfio_iommu_spapr_tce.c35 struct iommu_group *iommu_group);
46 struct iommu_group *grp;
777 static long vfio_spapr_ioctl_eeh_pe_op(struct iommu_group *group, in vfio_spapr_ioctl_eeh_pe_op()
1237 struct iommu_group *iommu_group, enum vfio_group_type type) in tce_iommu_attach_group() argument
1251 table_group = iommu_group_get_iommudata(iommu_group); in tce_iommu_attach_group()
1276 if (tcegrp->grp == iommu_group) { in tce_iommu_attach_group()
1278 iommu_group_id(iommu_group)); in tce_iommu_attach_group()
1286 iommu_group_id(iommu_group), in tce_iommu_attach_group()
1304 tcegrp->grp = iommu_group; in tce_iommu_attach_group()
1318 struct iommu_group *iommu_group) in tce_iommu_detach_group() argument
[all …]
H A Diommufd.c91 struct iommu_group *group; in vfio_iommufd_get_dev_id()
/linux/drivers/iommu/
H A Diommu.c52 struct iommu_group { struct
87 ssize_t (*show)(struct iommu_group *group, char *buf);
88 ssize_t (*store)(struct iommu_group *group,
110 struct iommu_group *group);
119 static int __iommu_device_set_domain(struct iommu_group *group,
124 static int __iommu_group_set_domain_internal(struct iommu_group *group,
127 static int __iommu_group_set_domain(struct iommu_group *group, in __iommu_group_set_domain()
132 static void __iommu_group_set_domain_nofail(struct iommu_group *group, in __iommu_group_set_domain_nofail()
139 static int iommu_setup_default_domain(struct iommu_group *group,
143 static ssize_t iommu_group_store_type(struct iommu_group *group,
[all …]
H A Dio-pgfault.c125 attach_handle = iommu_attach_handle_get(dev->iommu_group, in find_fault_handler()
139 dev->iommu_group, IOMMU_NO_PASID, in find_fault_handler()
145 attach_handle = iommu_attach_handle_get(dev->iommu_group, in find_fault_handler()
H A Diommu-sva.c74 struct iommu_group *group = dev->iommu_group; in iommu_sva_bind_device()
H A Dfsl_pamu_domain.c383 static struct iommu_group *fsl_pamu_device_group(struct device *dev) in fsl_pamu_device_group()
385 struct iommu_group *group; in fsl_pamu_device_group()
H A Dapple-dart.c226 struct iommu_group *sid2group[DART_MAX_STREAMS];
891 static struct iommu_group *apple_dart_device_group(struct device *dev) in apple_dart_device_group()
897 struct iommu_group *group = NULL; in apple_dart_device_group()
898 struct iommu_group *res = ERR_PTR(-EINVAL); in apple_dart_device_group()
904 struct iommu_group *stream_group = in apple_dart_device_group()
H A Dtegra-smmu.c28 struct iommu_group *group;
915 static struct iommu_group *tegra_smmu_device_group(struct device *dev) in tegra_smmu_device_group()
922 struct iommu_group *grp; in tegra_smmu_device_group()
/linux/virt/kvm/
H A Dvfio.c28 struct iommu_group *iommu_group; member
84 static struct iommu_group *kvm_vfio_file_iommu_group(struct file *file) in kvm_vfio_file_iommu_group()
86 struct iommu_group *(*fn)(struct file *file); in kvm_vfio_file_iommu_group()
87 struct iommu_group *ret; in kvm_vfio_file_iommu_group()
103 if (WARN_ON_ONCE(!kvf->iommu_group)) in kvm_spapr_tce_release_vfio_group()
106 kvm_spapr_tce_release_iommu_group(kvm, kvf->iommu_group); in kvm_spapr_tce_release_vfio_group()
107 iommu_group_put(kvf->iommu_group); in kvm_spapr_tce_release_vfio_group()
108 kvf->iommu_group = NULL; in kvm_spapr_tce_release_vfio_group()
247 if (!kvf->iommu_group) { in kvm_vfio_file_set_spapr_tce()
248 kvf->iommu_group = kvm_vfio_file_iommu_group(kvf->file); in kvm_vfio_file_set_spapr_tce()
[all …]
/linux/drivers/media/platform/nvidia/tegra-vde/
H A Dvde.h46 struct iommu_group;
114 struct iommu_group *group;
/linux/include/linux/
H A Ddevice.h45 struct iommu_group;
652 struct iommu_group *iommu_group; member
765 return (dev->iommu_group != NULL); in device_iommu_mapped()
/linux/arch/powerpc/platforms/pseries/
H A Dpseries.h127 struct iommu_group *pSeries_pci_device_group(struct pci_controller *hose,
/linux/arch/powerpc/kernel/
H A Diommu.c1022 struct iommu_group *grp; in iommu_register_group()
1136 iommu_group_id(dev->iommu_group)); in iommu_add_device()
1164 struct iommu_group *grp; in spapr_tce_platform_iommu_attach_dev()
1195 struct iommu_group *grp = iommu_group_get(dev); in spapr_tce_blocked_iommu_attach_dev()
1249 static struct iommu_group *spapr_tce_iommu_device_group(struct device *dev) in spapr_tce_iommu_device_group()
/linux/Documentation/networking/device_drivers/ethernet/amd/
H A Dpds_vfio_pci.rst50 After performing the steps above, a file in /dev/vfio/<iommu_group>
/linux/arch/powerpc/include/asm/
H A Dpci-bridge.h49 struct iommu_group *(*device_group)(struct pci_controller *hose,
H A Diommu.h205 struct iommu_group *group;
/linux/drivers/accel/rocket/
H A Drocket_job.c317 ret = iommu_attach_group(job->domain->domain, core->iommu_group); in rocket_job_run()
367 iommu_detach_group(NULL, core->iommu_group); in rocket_reset()
/linux/drivers/vfio/pci/
H A Dvfio_pci_core.c852 struct iommu_group *iommu_group; in vfio_pci_fill_devs() local
854 iommu_group = iommu_group_get(&pdev->dev); in vfio_pci_fill_devs()
855 if (!iommu_group) in vfio_pci_fill_devs()
858 info->group_id = iommu_group_id(iommu_group); in vfio_pci_fill_devs()
859 iommu_group_put(iommu_group); in vfio_pci_fill_devs()
/linux/drivers/iommu/iommufd/
H A Ddriver.c267 iommu_attach_handle_get(dev->iommu_group, IOMMU_NO_PASID, 0); in iommufd_sw_msi()
/linux/arch/powerpc/kvm/
H A Dbook3s_64_vio.c82 struct iommu_group *grp) in kvm_spapr_tce_release_iommu_group()
110 struct iommu_group *grp) in kvm_spapr_tce_attach_iommu_group()
/linux/drivers/gpu/host1x/
H A Ddev.h144 struct iommu_group *group;

12