Home
last modified time | relevance | path

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

/arch/powerpc/platforms/pseries/
Diommu.c58 struct iommu_table_group *table_group = NULL; in iommu_pseries_alloc_group() local
62 table_group = kzalloc_node(sizeof(struct iommu_table_group), GFP_KERNEL, in iommu_pseries_alloc_group()
64 if (!table_group) in iommu_pseries_alloc_group()
78 tgl->table_group = table_group; in iommu_pseries_alloc_group()
81 table_group->tables[0] = tbl; in iommu_pseries_alloc_group()
83 return table_group; in iommu_pseries_alloc_group()
87 kfree(table_group); in iommu_pseries_alloc_group()
93 static void iommu_pseries_free_group(struct iommu_table_group *table_group, in iommu_pseries_free_group() argument
101 if (!table_group) in iommu_pseries_free_group()
104 tbl = table_group->tables[0]; in iommu_pseries_free_group()
[all …]
/arch/powerpc/include/asm/
Diommu.h174 long (*create_table)(struct iommu_table_group *table_group,
180 long (*set_window)(struct iommu_table_group *table_group,
183 long (*unset_window)(struct iommu_table_group *table_group,
186 void (*take_ownership)(struct iommu_table_group *table_group);
188 void (*release_ownership)(struct iommu_table_group *table_group);
194 struct iommu_table_group *table_group; member
212 extern void iommu_register_group(struct iommu_table_group *table_group,
222 static inline void iommu_register_group(struct iommu_table_group *table_group, in iommu_register_group() argument
Dpci-bridge.h197 struct iommu_table_group *table_group; /* for phb's or bridges */ member
/arch/powerpc/platforms/powernv/
Dpci-ioda.c1409 static long pnv_pci_ioda2_unset_window(struct iommu_table_group *table_group,
1417 tbl = pe->table_group.tables[0]; in pnv_pci_ioda2_release_dma_pe()
1418 rc = pnv_pci_ioda2_unset_window(&pe->table_group, 0); in pnv_pci_ioda2_release_dma_pe()
1423 if (pe->table_group.group) { in pnv_pci_ioda2_release_dma_pe()
1424 iommu_group_put(pe->table_group.group); in pnv_pci_ioda2_release_dma_pe()
1425 BUG_ON(pe->table_group.group); in pnv_pci_ioda2_release_dma_pe()
1722 set_iommu_table_base(&pdev->dev, pe->table_group.tables[0]); in pnv_pci_ioda_dma_dev_setup()
1916 set_iommu_table_base(&dev->dev, pe->table_group.tables[0]); in pnv_ioda_setup_bus_dma()
1940 struct pnv_ioda_pe *pe = container_of(tgl->table_group, in pnv_pci_p7ioc_tce_invalidate()
1941 struct pnv_ioda_pe, table_group); in pnv_pci_p7ioc_tce_invalidate()
[all …]
Dpci.h66 struct iommu_table_group table_group; member
218 struct iommu_table_group *table_group);
220 struct iommu_table_group *table_group);
Dpci.c898 struct iommu_table_group *table_group) in pnv_pci_link_table_and_group() argument
902 if (WARN_ON(!tbl || !table_group)) in pnv_pci_link_table_and_group()
910 tgl->table_group = table_group; in pnv_pci_link_table_and_group()
913 table_group->tables[num] = tbl; in pnv_pci_link_table_and_group()
927 struct iommu_table_group *table_group) in pnv_pci_unlink_table_and_group() argument
933 if (!tbl || !table_group) in pnv_pci_unlink_table_and_group()
939 if (tgl->table_group == table_group) { in pnv_pci_unlink_table_and_group()
952 if (table_group->tables[i] == tbl) { in pnv_pci_unlink_table_and_group()
953 table_group->tables[i] = NULL; in pnv_pci_unlink_table_and_group()
Dnpu-dma.c218 tbl, &npe->table_group); in pnv_npu_set_window()
240 pnv_pci_unlink_table_and_group(npe->table_group.tables[num], in pnv_npu_unset_window()
241 &npe->table_group); in pnv_npu_unset_window()
266 rc = pnv_npu_set_window(npe, 0, gpe->table_group.tables[0]); in pnv_npu_dma_set_32()
355 if (npe->table_group.tables[0]) { in pnv_npu_take_ownership()
388 iommu_group_add_device(gpe->table_group.group, &npdev->dev); in pnv_pci_npu_setup_iommu()
/arch/powerpc/kvm/
Dbook3s_64_vio.c123 struct iommu_table_group *table_group = NULL; in kvm_spapr_tce_release_iommu_group() local
127 table_group = iommu_group_get_iommudata(grp); in kvm_spapr_tce_release_iommu_group()
128 if (WARN_ON(!table_group)) in kvm_spapr_tce_release_iommu_group()
133 if (table_group->tables[i] != stit->tbl) in kvm_spapr_tce_release_iommu_group()
148 struct iommu_table_group *table_group; in kvm_spapr_tce_attach_iommu_group() local
169 table_group = iommu_group_get_iommudata(grp); in kvm_spapr_tce_attach_iommu_group()
170 if (WARN_ON(!table_group)) in kvm_spapr_tce_attach_iommu_group()
174 struct iommu_table *tbltmp = table_group->tables[i]; in kvm_spapr_tce_attach_iommu_group()
/arch/powerpc/kernel/
Diommu.c914 struct iommu_table_group *table_group = iommu_data; in group_release() local
916 table_group->group = NULL; in group_release()
919 void iommu_register_group(struct iommu_table_group *table_group, in iommu_register_group() argument
931 table_group->group = grp; in iommu_register_group()
932 iommu_group_set_iommudata(grp, table_group, group_release); in iommu_register_group()
1137 iommu_group_id(tgl->table_group->group)); in iommu_add_device()
1146 return iommu_group_add_device(tgl->table_group->group, dev); in iommu_add_device()