Home
last modified time | relevance | path

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

/arch/powerpc/platforms/pseries/
Diommu.c71 struct iommu_table_group *table_group; in iommu_pseries_alloc_group() local
73 table_group = kzalloc_node(sizeof(*table_group), GFP_KERNEL, node); in iommu_pseries_alloc_group()
74 if (!table_group) in iommu_pseries_alloc_group()
77 table_group->tables[0] = iommu_pseries_alloc_table(node); 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()
85 static void iommu_pseries_free_group(struct iommu_table_group *table_group, in iommu_pseries_free_group() argument
88 if (!table_group) in iommu_pseries_free_group()
92 if (table_group->group) { in iommu_pseries_free_group()
[all …]
/arch/powerpc/include/asm/
Diommu.h168 long (*create_table)(struct iommu_table_group *table_group,
174 long (*set_window)(struct iommu_table_group *table_group,
177 long (*unset_window)(struct iommu_table_group *table_group,
180 void (*take_ownership)(struct iommu_table_group *table_group);
182 void (*release_ownership)(struct iommu_table_group *table_group);
188 struct iommu_table_group *table_group; member
206 extern void iommu_register_group(struct iommu_table_group *table_group,
208 extern int iommu_add_device(struct iommu_table_group *table_group,
221 static inline void iommu_register_group(struct iommu_table_group *table_group, in iommu_register_group() argument
227 static inline int iommu_add_device(struct iommu_table_group *table_group, in iommu_add_device() argument
Dpci-bridge.h200 struct iommu_table_group *table_group; /* for phb's or bridges */ member
/arch/powerpc/platforms/powernv/
Dpci-ioda-tce.c372 struct iommu_table_group *table_group) in pnv_pci_unlink_table_and_group() argument
378 if (!tbl || !table_group) in pnv_pci_unlink_table_and_group()
386 if (tgl->table_group == table_group) { in pnv_pci_unlink_table_and_group()
401 if (table_group->tables[i] == tbl) { in pnv_pci_unlink_table_and_group()
403 table_group->tables[i] = NULL; in pnv_pci_unlink_table_and_group()
413 struct iommu_table_group *table_group) in pnv_pci_link_table_and_group() argument
417 if (WARN_ON(!tbl || !table_group)) in pnv_pci_link_table_and_group()
425 tgl->table_group = table_group; in pnv_pci_link_table_and_group()
428 table_group->tables[num] = iommu_tce_table_get(tbl); in pnv_pci_link_table_and_group()
Dpci-ioda.c1154 set_iommu_table_base(&pdev->dev, pe->table_group.tables[0]); in pnv_pci_ioda_dma_dev_setup()
1157 if (pe->table_group.group) in pnv_pci_ioda_dma_dev_setup()
1158 iommu_add_device(&pe->table_group, &pdev->dev); in pnv_pci_ioda_dma_dev_setup()
1283 struct pnv_ioda_pe *pe = container_of(tgl->table_group, in pnv_pci_p7ioc_tce_invalidate()
1284 struct pnv_ioda_pe, table_group); in pnv_pci_p7ioc_tce_invalidate()
1415 struct pnv_ioda_pe *pe = container_of(tgl->table_group, in pnv_pci_ioda2_tce_invalidate()
1416 struct pnv_ioda_pe, table_group); in pnv_pci_ioda2_tce_invalidate()
1566 iommu_register_group(&pe->table_group, phb->hose->global_number, in pnv_pci_ioda1_setup_dma_pe()
1568 pnv_pci_link_table_and_group(phb->hose->node, 0, tbl, &pe->table_group); in pnv_pci_ioda1_setup_dma_pe()
1619 pe->table_group.tce32_start = tbl->it_offset << tbl->it_page_shift; in pnv_pci_ioda1_setup_dma_pe()
[all …]
Dpci.h80 struct iommu_table_group table_group; member
327 struct iommu_table_group *table_group);
329 struct iommu_table_group *table_group);
/arch/powerpc/kvm/
Dbook3s_64_vio.c74 struct iommu_table_group *table_group = NULL; in kvm_spapr_tce_release_iommu_group() local
79 table_group = iommu_group_get_iommudata(grp); in kvm_spapr_tce_release_iommu_group()
80 if (WARN_ON(!table_group)) in kvm_spapr_tce_release_iommu_group()
85 if (table_group->tables[i] != stit->tbl) in kvm_spapr_tce_release_iommu_group()
102 struct iommu_table_group *table_group; in kvm_spapr_tce_attach_iommu_group() local
125 table_group = iommu_group_get_iommudata(grp); in kvm_spapr_tce_attach_iommu_group()
126 if (WARN_ON(!table_group)) in kvm_spapr_tce_attach_iommu_group()
130 struct iommu_table *tbltmp = table_group->tables[i]; in kvm_spapr_tce_attach_iommu_group()
/arch/powerpc/kernel/
Diommu.c992 struct iommu_table_group *table_group = iommu_data; in group_release() local
994 table_group->group = NULL; in group_release()
997 void iommu_register_group(struct iommu_table_group *table_group, in iommu_register_group() argument
1009 table_group->group = grp; in iommu_register_group()
1010 iommu_group_set_iommudata(grp, table_group, group_release); in iommu_register_group()
1154 int iommu_add_device(struct iommu_table_group *table_group, struct device *dev) in iommu_add_device() argument
1172 __func__, dev_name(dev), iommu_group_id(table_group->group)); in iommu_add_device()
1174 return iommu_group_add_device(table_group->group, dev); in iommu_add_device()