/arch/powerpc/include/asm/ |
D | iommu.h | 63 struct iommu_table { struct 80 void (*set_bypass)(struct iommu_table *tbl, bool enable); argument 85 int get_iommu_order(unsigned long size, struct iommu_table *tbl) in get_iommu_order() 104 extern void iommu_free_table(struct iommu_table *tbl, const char *node_name); 109 extern struct iommu_table *iommu_init_table(struct iommu_table * tbl, 112 extern void iommu_register_group(struct iommu_table *tbl, 117 static inline void iommu_register_group(struct iommu_table *tbl, in iommu_register_group() 140 extern int iommu_map_sg(struct device *dev, struct iommu_table *tbl, 144 extern void iommu_unmap_sg(struct iommu_table *tbl, struct scatterlist *sglist, 148 extern void *iommu_alloc_coherent(struct device *dev, struct iommu_table *tbl, [all …]
|
D | machdep.h | 27 struct iommu_table; 68 int (*tce_build)(struct iommu_table *tbl, 74 void (*tce_free)(struct iommu_table *tbl, 77 unsigned long (*tce_get)(struct iommu_table *tbl, 79 void (*tce_flush)(struct iommu_table *tbl); 82 int (*tce_build_rm)(struct iommu_table *tbl, 88 void (*tce_free_rm)(struct iommu_table *tbl, 91 void (*tce_flush_rm)(struct iommu_table *tbl);
|
D | pci-bridge.h | 150 struct iommu_table; 157 struct iommu_table *iommu_table; /* for phb's or bridges */ member
|
D | vio.h | 48 struct iommu_table;
|
/arch/x86/include/asm/ |
D | calgary.h | 33 struct iommu_table { struct 47 void (*handle_quirks)(struct iommu_table *tbl, struct pci_dev *dev); argument 48 void (*tce_cache_blast)(struct iommu_table *tbl); 49 void (*dump_error_regs)(struct iommu_table *tbl);
|
D | tce.h | 28 struct iommu_table; 41 extern void tce_build(struct iommu_table *tbl, unsigned long index, 43 extern void tce_free(struct iommu_table *tbl, long index, unsigned int npages);
|
/arch/powerpc/platforms/pseries/ |
D | iommu.c | 53 static void tce_invalidate_pSeries_sw(struct iommu_table *tbl, in tce_invalidate_pSeries_sw() 82 static int tce_build_pSeries(struct iommu_table *tbl, long index, in tce_build_pSeries() 113 static void tce_free_pSeries(struct iommu_table *tbl, long index, long npages) in tce_free_pSeries() 126 static unsigned long tce_get_pseries(struct iommu_table *tbl, long index) in tce_get_pseries() 135 static void tce_free_pSeriesLP(struct iommu_table*, long, long); 136 static void tce_freemulti_pSeriesLP(struct iommu_table*, long, long); 138 static int tce_build_pSeriesLP(struct iommu_table *tbl, long tcenum, in tce_build_pSeriesLP() 181 static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum, in tce_buildmulti_pSeriesLP() 264 static void tce_free_pSeriesLP(struct iommu_table *tbl, long tcenum, long npages) in tce_free_pSeriesLP() 283 static void tce_freemulti_pSeriesLP(struct iommu_table *tbl, long tcenum, long npages) in tce_freemulti_pSeriesLP() [all …]
|
/arch/powerpc/kernel/ |
D | iommu.c | 55 static void __iommu_free(struct iommu_table *, dma_addr_t, unsigned int); 177 struct iommu_table *tbl, in iommu_range_alloc() 306 static dma_addr_t iommu_alloc(struct device *dev, struct iommu_table *tbl, in iommu_alloc() 349 static bool iommu_free_check(struct iommu_table *tbl, dma_addr_t dma_addr, in iommu_free_check() 377 static struct iommu_pool *get_pool(struct iommu_table *tbl, in get_pool() 396 static void __iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, in __iommu_free() 418 static void iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, in iommu_free() 431 int iommu_map_sg(struct device *dev, struct iommu_table *tbl, in iommu_map_sg() 575 void iommu_unmap_sg(struct iommu_table *tbl, struct scatterlist *sglist, in iommu_unmap_sg() 607 static void iommu_table_clear(struct iommu_table *tbl) in iommu_table_clear() [all …]
|
D | dma-iommu.c | 78 struct iommu_table *tbl = get_iommu_table_base(dev); in dma_iommu_dma_supported() 97 struct iommu_table *tbl = get_iommu_table_base(dev); in dma_iommu_get_required_mask()
|
D | vio.c | 521 struct iommu_table *tbl; in vio_dma_iommu_map_page() 545 struct iommu_table *tbl; in vio_dma_iommu_unmap_page() 558 struct iommu_table *tbl; in vio_dma_iommu_map_sg() 594 struct iommu_table *tbl; in vio_dma_iommu_unmap_sg() 717 struct iommu_table *tbl; in vio_cmo_bus_probe() 1172 static struct iommu_table *vio_build_iommu_table(struct vio_dev *dev) in vio_build_iommu_table() 1175 struct iommu_table *tbl; in vio_build_iommu_table() 1313 struct iommu_table *tbl = get_iommu_table_base(dev); in vio_dev_release()
|
D | eeh.c | 1346 struct iommu_table *tbl; in dev_has_iommu_table()
|
/arch/x86/kernel/ |
D | tce_64.c | 49 void tce_build(struct iommu_table *tbl, unsigned long index, in tce_build() 75 void tce_free(struct iommu_table *tbl, long index, unsigned int npages) in tce_free() 98 static int tce_table_setparms(struct pci_dev *dev, struct iommu_table *tbl) in tce_table_setparms() 137 struct iommu_table *tbl; in build_tce_table() 146 tbl = kzalloc(sizeof(struct iommu_table), GFP_KERNEL); in build_tce_table()
|
D | pci-calgary_64.c | 174 static void calgary_handle_quirks(struct iommu_table *tbl, struct pci_dev *dev); 175 static void calgary_tce_cache_blast(struct iommu_table *tbl); 176 static void calgary_dump_error_regs(struct iommu_table *tbl); 177 static void calioc2_handle_quirks(struct iommu_table *tbl, struct pci_dev *dev); 178 static void calioc2_tce_cache_blast(struct iommu_table *tbl); 179 static void calioc2_dump_error_regs(struct iommu_table *tbl); 180 static void calgary_init_bitmap_from_tce_table(struct iommu_table *tbl); 197 static inline int translation_enabled(struct iommu_table *tbl) in translation_enabled() 203 static void iommu_range_reserve(struct iommu_table *tbl, in iommu_range_reserve() 228 struct iommu_table *tbl, in iommu_range_alloc() [all …]
|
D | vmlinux.lds.S | 250 .iommu_table : AT(ADDR(.iommu_table) - LOAD_OFFSET) { 252 *(.iommu_table) argument
|
D | Makefile | 49 obj-y += pci-iommu_table.o
|
/arch/powerpc/platforms/powernv/ |
D | pci.h | 56 struct iommu_table tce32_table; 141 struct iommu_table iommu_table; member 226 extern void pnv_pci_setup_iommu_table(struct iommu_table *tbl, 232 extern void pnv_pci_ioda_tce_invalidate(struct iommu_table *tbl,
|
D | pci-p5ioc2.c | 89 if (phb->p5ioc2.iommu_table.it_map == NULL) { in pnv_pci_p5ioc2_dma_dev_setup() 90 iommu_init_table(&phb->p5ioc2.iommu_table, phb->hose->node); in pnv_pci_p5ioc2_dma_dev_setup() 91 iommu_register_group(&phb->p5ioc2.iommu_table, in pnv_pci_p5ioc2_dma_dev_setup() 95 set_iommu_table_base_and_group(&pdev->dev, &phb->p5ioc2.iommu_table); in pnv_pci_p5ioc2_dma_dev_setup() 174 pnv_pci_setup_iommu_table(&phb->p5ioc2.iommu_table, in pnv_pci_init_p5ioc2_phb()
|
D | pci.c | 594 static int pnv_tce_build(struct iommu_table *tbl, long index, long npages, in pnv_tce_build() 624 static int pnv_tce_build_vm(struct iommu_table *tbl, long index, long npages, in pnv_tce_build_vm() 633 static void pnv_tce_free(struct iommu_table *tbl, long index, long npages, in pnv_tce_free() 647 static void pnv_tce_free_vm(struct iommu_table *tbl, long index, long npages) in pnv_tce_free_vm() 652 static unsigned long pnv_tce_get(struct iommu_table *tbl, long index) in pnv_tce_get() 657 static int pnv_tce_build_rm(struct iommu_table *tbl, long index, long npages, in pnv_tce_build_rm() 665 static void pnv_tce_free_rm(struct iommu_table *tbl, long index, long npages) in pnv_tce_free_rm() 670 void pnv_pci_setup_iommu_table(struct iommu_table *tbl, in pnv_pci_setup_iommu_table() 684 static struct iommu_table *pnv_pci_setup_bml_iommu(struct pci_controller *hose) in pnv_pci_setup_bml_iommu() 686 struct iommu_table *tbl; in pnv_pci_setup_bml_iommu() [all …]
|
D | pci-ioda.c | 937 struct iommu_table *tbl, in pnv_pci_ioda1_tce_invalidate() 984 struct iommu_table *tbl, in pnv_pci_ioda2_tce_invalidate() 1015 void pnv_pci_ioda_tce_invalidate(struct iommu_table *tbl, in pnv_pci_ioda_tce_invalidate() 1035 struct iommu_table *tbl; in pnv_pci_ioda_setup_dma_pe() 1121 static void pnv_pci_ioda2_set_bypass(struct iommu_table *tbl, bool enable) in pnv_pci_ioda2_set_bypass() 1181 struct iommu_table *tbl; in pnv_pci_ioda2_setup_dma_pe()
|
/arch/powerpc/platforms/pasemi/ |
D | iommu.c | 83 static struct iommu_table iommu_table_iobmap; 86 static int iobmap_build(struct iommu_table *tbl, long index, in iobmap_build() 115 static void iobmap_free(struct iommu_table *tbl, long index, in iobmap_free()
|
/arch/powerpc/sysdev/ |
D | dart_iommu.c | 67 static struct iommu_table iommu_table_dart; 154 static void dart_flush(struct iommu_table *tbl) in dart_flush() 163 static int dart_build(struct iommu_table *tbl, long index, in dart_build() 204 static void dart_free(struct iommu_table *tbl, long index, long npages) in dart_free()
|
/arch/powerpc/platforms/cell/ |
D | iommu.c | 118 struct iommu_table table; 166 static int tce_build_cell(struct iommu_table *tbl, long index, long npages, in tce_build_cell() 212 static void tce_free_cell(struct iommu_table *tbl, long index, long npages) in tce_free_cell() 544 static struct iommu_table *cell_get_iommu_table(struct device *dev) in cell_get_iommu_table()
|