/linux-6.6.21/drivers/vfio/ ! |
D | group.c | 123 if (!group->iommu_group) { in vfio_group_ioctl_set_container() 361 if (!group->iommu_group) { in vfio_group_ioctl_get_status() 376 else if (!iommu_group_dma_owner_claimed(group->iommu_group)) in vfio_group_ioctl_get_status() 509 vfio_group_find_from_iommu(struct iommu_group *iommu_group) in vfio_group_find_from_iommu() argument 520 if (group->iommu_group == iommu_group) in vfio_group_find_from_iommu() 532 WARN_ON(group->iommu_group); in vfio_group_release() 538 static struct vfio_group *vfio_group_alloc(struct iommu_group *iommu_group, in vfio_group_alloc() argument 566 group->iommu_group = iommu_group; in vfio_group_alloc() 568 iommu_group_ref_get(iommu_group); in vfio_group_alloc() 575 static struct vfio_group *vfio_create_group(struct iommu_group *iommu_group, in vfio_create_group() argument [all …]
|
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 …]
|
D | vfio.h | 16 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);
|
D | vfio_iommu_type1.c | 113 struct iommu_group *iommu_group; member 158 struct iommu_group *iommu_group); 797 struct iommu_group *iommu_group, in vfio_iommu_type1_pin_pages() argument 893 group = vfio_iommu_find_iommu_group(iommu, iommu_group); in vfio_iommu_type1_pin_pages() 1864 struct iommu_group *iommu_group) in find_iommu_group() argument 1869 if (g->iommu_group == iommu_group) in find_iommu_group() 1878 struct iommu_group *iommu_group) in vfio_iommu_find_iommu_group() argument 1884 group = find_iommu_group(domain, iommu_group); in vfio_iommu_find_iommu_group() 1890 if (group->iommu_group == iommu_group) in vfio_iommu_find_iommu_group() 2153 struct iommu_group *iommu_group, enum vfio_group_type type) in vfio_iommu_type1_attach_group() argument [all …]
|
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() 1232 struct iommu_group *iommu_group, enum vfio_group_type type) in tce_iommu_attach_group() argument 1246 table_group = iommu_group_get_iommudata(iommu_group); in tce_iommu_attach_group() 1271 if (tcegrp->grp == iommu_group) { in tce_iommu_attach_group() 1273 iommu_group_id(iommu_group)); in tce_iommu_attach_group() 1281 iommu_group_id(iommu_group), in tce_iommu_attach_group() 1299 tcegrp->grp = iommu_group; in tce_iommu_attach_group() 1313 struct iommu_group *iommu_group) in tce_iommu_detach_group() argument [all …]
|
D | iommufd.c | 87 struct iommu_group *group; in vfio_iommufd_get_dev_id()
|
/linux-6.6.21/include/linux/ ! |
D | iommu.h | 35 struct iommu_group; 275 struct iommu_group *(*device_group)(struct device *dev); 467 extern bool iommu_group_has_isolated_msi(struct iommu_group *group); 500 extern int iommu_get_group_resv_regions(struct iommu_group *group, 504 struct iommu_group *group); 506 struct iommu_group *group); 507 extern struct iommu_group *iommu_group_alloc(void); 508 extern void *iommu_group_get_iommudata(struct iommu_group *group); 509 extern void iommu_group_set_iommudata(struct iommu_group *group, 512 extern int iommu_group_set_name(struct iommu_group *group, const char *name); [all …]
|
D | iommufd.h | 19 struct iommu_group; 61 bool iommufd_ctx_has_group(struct iommufd_ctx *ictx, struct iommu_group *group);
|
D | host1x.h | 27 struct iommu_group; 96 struct iommu_group *group;
|
D | device.h | 46 struct iommu_group; 788 struct iommu_group *iommu_group; member 847 return (dev->iommu_group != NULL); in device_iommu_mapped()
|
/linux-6.6.21/drivers/iommu/ ! |
D | iommu.c | 50 struct iommu_group { struct 80 ssize_t (*show)(struct iommu_group *group, char *buf); 81 ssize_t (*store)(struct iommu_group *group, 104 struct iommu_group *group); 110 static int __iommu_device_set_domain(struct iommu_group *group, 114 static int __iommu_group_set_domain_internal(struct iommu_group *group, 117 static int __iommu_group_set_domain(struct iommu_group *group, in __iommu_group_set_domain() 122 static void __iommu_group_set_domain_nofail(struct iommu_group *group, in __iommu_group_set_domain_nofail() 129 static int iommu_setup_default_domain(struct iommu_group *group, 133 static ssize_t iommu_group_store_type(struct iommu_group *group, [all …]
|
D | iommu-priv.h | 20 int iommu_group_replace_domain(struct iommu_group *group,
|
D | fsl_pamu_domain.c | 348 static struct iommu_group *fsl_pamu_device_group(struct device *dev) in fsl_pamu_device_group() 350 struct iommu_group *group; in fsl_pamu_device_group()
|
D | apple-dart.c | 222 struct iommu_group *sid2group[DART_MAX_STREAMS]; 837 static struct iommu_group *apple_dart_device_group(struct device *dev) in apple_dart_device_group() 843 struct iommu_group *group = NULL; in apple_dart_device_group() 844 struct iommu_group *res = ERR_PTR(-EINVAL); in apple_dart_device_group() 850 struct iommu_group *stream_group = in apple_dart_device_group()
|
D | omap-iommu.h | 83 struct iommu_group *group;
|
D | sprd-iommu.c | 73 struct iommu_group *group; 402 static struct iommu_group *sprd_iommu_device_group(struct device *dev) in sprd_iommu_device_group()
|
D | ipmmu-vmsa.c | 67 struct iommu_group *group; 836 static struct iommu_group *ipmmu_find_group(struct device *dev) in ipmmu_find_group() 839 struct iommu_group *group; in ipmmu_find_group()
|
/linux-6.6.21/virt/kvm/ ! |
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() 254 if (!kvf->iommu_group) { in kvm_vfio_file_set_spapr_tce() 255 kvf->iommu_group = kvm_vfio_file_iommu_group(kvf->file); in kvm_vfio_file_set_spapr_tce() [all …]
|
/linux-6.6.21/drivers/media/platform/nvidia/tegra-vde/ ! |
D | vde.h | 46 struct iommu_group; 115 struct iommu_group *group;
|
/linux-6.6.21/arch/powerpc/platforms/pseries/ ! |
D | pseries.h | 127 struct iommu_group *pSeries_pci_device_group(struct pci_controller *hose,
|
/linux-6.6.21/drivers/iommu/iommufd/ ! |
D | iommufd_private.h | 13 struct iommu_group; 269 struct iommu_group *group;
|
D | device.c | 40 struct iommu_group *group) in iommufd_group_try_get() 66 struct iommu_group *group; in iommufd_get_group() 246 bool iommufd_ctx_has_group(struct iommufd_ctx *ictx, struct iommu_group *group) in iommufd_ctx_has_group()
|
/linux-6.6.21/arch/powerpc/kernel/ ! |
D | iommu.c | 1003 struct iommu_group *grp; in iommu_register_group() 1170 iommu_group_id(dev->iommu_group)); in iommu_add_device() 1286 struct iommu_group *grp = iommu_group_get(dev); in spapr_tce_blocking_iommu_attach_dev() 1302 struct iommu_group *grp = iommu_group_get(dev); in spapr_tce_blocking_iommu_set_platform_dma() 1359 static struct iommu_group *spapr_tce_iommu_device_group(struct device *dev) in spapr_tce_iommu_device_group()
|
/linux-6.6.21/Documentation/networking/device_drivers/ethernet/amd/ ! |
D | pds_vfio_pci.rst | 50 After performing the steps above, a file in /dev/vfio/<iommu_group>
|
/linux-6.6.21/arch/powerpc/include/asm/ ! |
D | pci-bridge.h | 49 struct iommu_group *(*device_group)(struct pci_controller *hose,
|