| /linux/drivers/iommu/ |
| H A D | iommu.c | 53 struct iommu_group { struct 88 ssize_t (*show)(struct iommu_group *group, char *buf); 89 ssize_t (*store)(struct iommu_group *group, 111 struct iommu_group *group); 120 static int __iommu_device_set_domain(struct iommu_group *group, 125 static int __iommu_group_set_domain_internal(struct iommu_group *group, 128 static int __iommu_group_set_domain(struct iommu_group *group, in __iommu_group_set_domain() 133 static void __iommu_group_set_domain_nofail(struct iommu_group *group, in __iommu_group_set_domain_nofail() 140 static int iommu_setup_default_domain(struct iommu_group *group, 144 static ssize_t iommu_group_store_type(struct iommu_group *group, [all …]
|
| H A D | io-pgfault.c | 125 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 D | iommu-sva.c | 74 struct iommu_group *group = dev->iommu_group; in iommu_sva_bind_device()
|
| H A D | fsl_pamu_domain.c | 383 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 D | apple-dart.c | 226 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 D | tegra-smmu.c | 28 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()
|
| H A D | mtk_iommu.c | 261 struct iommu_group *m4u_group[MTK_IOMMU_GROUP_MAX]; 974 static struct iommu_group *mtk_iommu_device_group(struct device *dev) in mtk_iommu_device_group() 978 struct iommu_group *group; in mtk_iommu_device_group()
|
| /linux/include/linux/ |
| H A D | iommu.h | 36 struct iommu_group; 689 struct iommu_group *(*device_group)(struct device *dev); 802 struct iommu_group *singleton_group; 904 extern bool iommu_group_has_isolated_msi(struct iommu_group *group); 944 extern int iommu_get_group_resv_regions(struct iommu_group *group, 948 struct iommu_group *group); 950 struct iommu_group *group); 951 extern struct iommu_group *iommu_group_alloc(void); 952 extern void *iommu_group_get_iommudata(struct iommu_group *group); 953 extern void iommu_group_set_iommudata(struct iommu_group *group, [all …]
|
| H A D | device.h | 45 struct iommu_group; 715 struct iommu_group *iommu_group; member 856 return (dev->iommu_group != NULL); in device_iommu_mapped()
|
| /linux/virt/kvm/ |
| H A D | vfio.c | 28 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/vfio/ |
| H A D | container.c | 56 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 D | vfio_iommu_spapr_tce.c | 35 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 D | iommufd.c | 91 struct iommu_group *group; in vfio_iommufd_get_dev_id()
|
| /linux/drivers/media/platform/nvidia/tegra-vde/ |
| H A D | vde.h | 46 struct iommu_group; 114 struct iommu_group *group;
|
| /linux/arch/powerpc/platforms/pseries/ |
| H A D | pseries.h | 127 struct iommu_group *pSeries_pci_device_group(struct pci_controller *hose,
|
| /linux/arch/powerpc/kernel/ |
| H A D | iommu.c | 1022 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 D | pds_vfio_pci.rst | 50 After performing the steps above, a file in /dev/vfio/<iommu_group>
|
| /linux/arch/powerpc/include/asm/ |
| H A D | pci-bridge.h | 49 struct iommu_group *(*device_group)(struct pci_controller *hose,
|
| H A D | iommu.h | 205 struct iommu_group *group;
|
| H A D | kvm_ppc.h | 177 struct iommu_group *grp); 179 struct iommu_group *grp);
|
| /linux/drivers/accel/rocket/ |
| H A D | rocket_job.c | 317 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/iommu/iommufd/ |
| H A D | driver.c | 267 iommu_attach_handle_get(dev->iommu_group, IOMMU_NO_PASID, 0); in iommufd_sw_msi()
|
| /linux/arch/powerpc/kvm/ |
| H A D | book3s_64_vio.c | 82 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 D | dev.h | 144 struct iommu_group *group;
|
| /linux/drivers/iommu/amd/ |
| H A D | amd_iommu_types.h | 796 struct iommu_group *group;
|