Home
last modified time | relevance | path

Searched refs:table_group (Results 1 – 9 of 9) sorted by relevance

/linux-6.3-rc2/drivers/vfio/
A Dvfio_iommu_spapr_tce.c626 ret = table_group->ops->create_table(table_group, num, in tce_iommu_create_table()
687 ret = table_group->ops->set_window(table_group, num, tbl); in tce_iommu_create_window()
702 table_group->ops->unset_window(table_group, num); in tce_iommu_create_window()
734 if (!table_group->ops || !table_group->ops->unset_window) in tce_iommu_remove_window()
737 table_group->ops->unset_window(table_group, num); in tce_iommu_remove_window()
1248 table_group->ops->unset_window(table_group, i); in tce_iommu_release_ownership_ddw()
1250 table_group->ops->release_ownership(table_group); in tce_iommu_release_ownership_ddw()
1264 table_group->ops->take_ownership(table_group); in tce_iommu_take_ownership_ddw()
1273 ret = table_group->ops->set_window(table_group, i, tbl); in tce_iommu_take_ownership_ddw()
1282 table_group->ops->unset_window(table_group, i); in tce_iommu_take_ownership_ddw()
[all …]
/linux-6.3-rc2/arch/powerpc/platforms/pseries/
A Diommu.c73 table_group = kzalloc_node(sizeof(*table_group), GFP_KERNEL, node); in iommu_pseries_alloc_group()
74 if (!table_group) in iommu_pseries_alloc_group()
78 if (table_group->tables[0]) in iommu_pseries_alloc_group()
79 return table_group; in iommu_pseries_alloc_group()
81 kfree(table_group); in iommu_pseries_alloc_group()
90 if (!table_group) in iommu_pseries_free_group()
93 tbl = table_group->tables[0]; in iommu_pseries_free_group()
95 if (table_group->group) { in iommu_pseries_free_group()
97 BUG_ON(table_group->group); in iommu_pseries_free_group()
102 kfree(table_group); in iommu_pseries_free_group()
[all …]
/linux-6.3-rc2/arch/powerpc/include/asm/
A Diommu.h166 long (*create_table)(struct iommu_table_group *table_group,
172 long (*set_window)(struct iommu_table_group *table_group,
175 long (*unset_window)(struct iommu_table_group *table_group,
178 void (*take_ownership)(struct iommu_table_group *table_group);
180 void (*release_ownership)(struct iommu_table_group *table_group);
186 struct iommu_table_group *table_group; member
204 extern void iommu_register_group(struct iommu_table_group *table_group,
206 extern int iommu_add_device(struct iommu_table_group *table_group,
219 static inline void iommu_register_group(struct iommu_table_group *table_group, in iommu_register_group() argument
225 static inline int iommu_add_device(struct iommu_table_group *table_group, in iommu_add_device() argument
A Dpci-bridge.h206 struct iommu_table_group *table_group; /* for phb's or bridges */ member
/linux-6.3-rc2/arch/powerpc/platforms/powernv/
A Dpci-ioda-tce.c371 struct iommu_table_group *table_group) in pnv_pci_unlink_table_and_group() argument
377 if (!tbl || !table_group) in pnv_pci_unlink_table_and_group()
385 if (tgl->table_group == table_group) { in pnv_pci_unlink_table_and_group()
400 if (table_group->tables[i] == tbl) { in pnv_pci_unlink_table_and_group()
402 table_group->tables[i] = NULL; in pnv_pci_unlink_table_and_group()
412 struct iommu_table_group *table_group) in pnv_pci_link_table_and_group() argument
416 if (WARN_ON(!tbl || !table_group)) in pnv_pci_link_table_and_group()
424 tgl->table_group = table_group; in pnv_pci_link_table_and_group()
427 table_group->tables[num] = iommu_tce_table_get(tbl); in pnv_pci_link_table_and_group()
A Dpci-ioda.c1158 if (pe->table_group.group) in pnv_pci_ioda_dma_dev_setup()
1632 table_group); in pnv_pci_ioda2_set_window()
1661 tbl, &pe->table_group); in pnv_pci_ioda2_set_window()
1700 table_group); in pnv_pci_ioda2_create_table()
1811 table_group); in pnv_pci_ioda2_unset_window()
1826 pnv_pci_unlink_table_and_group(table_group->tables[num], table_group); in pnv_pci_ioda2_unset_window()
1894 table_group); in pnv_ioda2_take_ownership()
1910 table_group); in pnv_ioda2_release_ownership()
2719 pnv_pci_unlink_table_and_group(table_group->tables[num], table_group); in pnv_pci_ioda1_unset_window()
2736 if (pe->table_group.group) { in pnv_pci_ioda1_release_pe_dma()
[all …]
A Dpci.h80 struct iommu_table_group table_group; member
326 struct iommu_table_group *table_group);
328 struct iommu_table_group *table_group);
/linux-6.3-rc2/arch/powerpc/kvm/
A Dbook3s_64_vio.c86 struct iommu_table_group *table_group = NULL; in kvm_spapr_tce_release_iommu_group() local
91 table_group = iommu_group_get_iommudata(grp); in kvm_spapr_tce_release_iommu_group()
92 if (WARN_ON(!table_group)) in kvm_spapr_tce_release_iommu_group()
97 if (table_group->tables[i] != stit->tbl) in kvm_spapr_tce_release_iommu_group()
114 struct iommu_table_group *table_group; in kvm_spapr_tce_attach_iommu_group() local
137 table_group = iommu_group_get_iommudata(grp); in kvm_spapr_tce_attach_iommu_group()
138 if (WARN_ON(!table_group)) in kvm_spapr_tce_attach_iommu_group()
142 struct iommu_table *tbltmp = table_group->tables[i]; in kvm_spapr_tce_attach_iommu_group()
/linux-6.3-rc2/arch/powerpc/kernel/
A Diommu.c980 struct iommu_table_group *table_group = iommu_data; in group_release() local
982 table_group->group = NULL; in group_release()
985 void iommu_register_group(struct iommu_table_group *table_group, in iommu_register_group() argument
997 table_group->group = grp; in iommu_register_group()
998 iommu_group_set_iommudata(grp, table_group, group_release); in iommu_register_group()
1142 int iommu_add_device(struct iommu_table_group *table_group, struct device *dev) in iommu_add_device() argument
1160 __func__, dev_name(dev), iommu_group_id(table_group->group)); in iommu_add_device()
1162 return iommu_group_add_device(table_group->group, dev); in iommu_add_device()

Completed in 25 milliseconds