/arch/powerpc/kernel/ |
D | iommu.c | 45 struct iommu_table *tbl = data; in iommu_debugfs_weight_get() local 46 *val = bitmap_weight(tbl->it_map, tbl->it_size); in iommu_debugfs_weight_get() 51 static void iommu_debugfs_add(struct iommu_table *tbl) in iommu_debugfs_add() argument 56 sprintf(name, "%08lx", tbl->it_index); in iommu_debugfs_add() 59 debugfs_create_file_unsafe("weight", 0400, liobn_entry, tbl, &iommu_debugfs_fops_weight); in iommu_debugfs_add() 60 debugfs_create_ulong("it_size", 0400, liobn_entry, &tbl->it_size); in iommu_debugfs_add() 61 debugfs_create_ulong("it_page_shift", 0400, liobn_entry, &tbl->it_page_shift); in iommu_debugfs_add() 62 debugfs_create_ulong("it_reserved_start", 0400, liobn_entry, &tbl->it_reserved_start); in iommu_debugfs_add() 63 debugfs_create_ulong("it_reserved_end", 0400, liobn_entry, &tbl->it_reserved_end); in iommu_debugfs_add() 64 debugfs_create_ulong("it_indirect_levels", 0400, liobn_entry, &tbl->it_indirect_levels); in iommu_debugfs_add() [all …]
|
D | dma-iommu.c | 147 struct iommu_table *tbl; in dma_iommu_dma_supported() local 165 tbl = get_iommu_table_base(dev); in dma_iommu_dma_supported() 167 if (!tbl) { in dma_iommu_dma_supported() 172 if (tbl->it_offset > (mask >> tbl->it_page_shift)) { in dma_iommu_dma_supported() 175 mask, tbl->it_offset << tbl->it_page_shift); in dma_iommu_dma_supported() 186 struct iommu_table *tbl = get_iommu_table_base(dev); in dma_iommu_get_required_mask() local 198 if (!tbl) in dma_iommu_get_required_mask() 201 mask = 1ULL << (fls_long(tbl->it_offset + tbl->it_size) + in dma_iommu_get_required_mask() 202 tbl->it_page_shift - 1); in dma_iommu_get_required_mask()
|
/arch/powerpc/platforms/powernv/ |
D | pci-ioda-tce.c | 48 void pnv_pci_setup_iommu_table(struct iommu_table *tbl, in pnv_pci_setup_iommu_table() argument 52 tbl->it_blocksize = 16; in pnv_pci_setup_iommu_table() 53 tbl->it_base = (unsigned long)tce_mem; in pnv_pci_setup_iommu_table() 54 tbl->it_page_shift = page_shift; in pnv_pci_setup_iommu_table() 55 tbl->it_offset = dma_offset >> tbl->it_page_shift; in pnv_pci_setup_iommu_table() 56 tbl->it_index = 0; in pnv_pci_setup_iommu_table() 57 tbl->it_size = tce_size >> 3; in pnv_pci_setup_iommu_table() 58 tbl->it_busno = 0; in pnv_pci_setup_iommu_table() 59 tbl->it_type = TCE_PCI; in pnv_pci_setup_iommu_table() 83 static __be64 *pnv_tce(struct iommu_table *tbl, bool user, long idx, bool alloc) in pnv_tce() argument [all …]
|
D | pci.h | 304 extern int pnv_tce_build(struct iommu_table *tbl, long index, long npages, 307 extern void pnv_tce_free(struct iommu_table *tbl, long index, long npages); 308 extern int pnv_tce_xchg(struct iommu_table *tbl, long index, 310 extern __be64 *pnv_tce_useraddrptr(struct iommu_table *tbl, long index, 312 extern unsigned long pnv_tce_get(struct iommu_table *tbl, long index); 316 bool alloc_userspace_copy, struct iommu_table *tbl); 317 extern void pnv_pci_ioda2_table_free_pages(struct iommu_table *tbl); 320 struct iommu_table *tbl, 322 extern void pnv_pci_unlink_table_and_group(struct iommu_table *tbl, 324 extern void pnv_pci_setup_iommu_table(struct iommu_table *tbl,
|
D | pci-ioda.c | 1165 static int pnv_ioda_tce_xchg_no_kill(struct iommu_table *tbl, long index, in pnv_ioda_tce_xchg_no_kill() argument 1168 return pnv_tce_xchg(tbl, index, hpa, direction); in pnv_ioda_tce_xchg_no_kill() 1221 static void pnv_pci_ioda2_tce_invalidate(struct iommu_table *tbl, in pnv_pci_ioda2_tce_invalidate() argument 1226 list_for_each_entry_lockless(tgl, &tbl->it_group_list, next) { in pnv_pci_ioda2_tce_invalidate() 1230 unsigned int shift = tbl->it_page_shift; in pnv_pci_ioda2_tce_invalidate() 1243 static int pnv_ioda2_tce_build(struct iommu_table *tbl, long index, in pnv_ioda2_tce_build() argument 1248 int ret = pnv_tce_build(tbl, index, npages, uaddr, direction, in pnv_ioda2_tce_build() 1252 pnv_pci_ioda2_tce_invalidate(tbl, index, npages); in pnv_ioda2_tce_build() 1257 static void pnv_ioda2_tce_free(struct iommu_table *tbl, long index, in pnv_ioda2_tce_free() argument 1260 pnv_tce_free(tbl, index, npages); in pnv_ioda2_tce_free() [all …]
|
/arch/powerpc/include/asm/ |
D | iommu.h | 43 int (*set)(struct iommu_table *tbl, 54 int (*xchg_no_kill)(struct iommu_table *tbl, 59 void (*tce_kill)(struct iommu_table *tbl, 63 __be64 *(*useraddrptr)(struct iommu_table *tbl, long index, bool alloc); 65 void (*clear)(struct iommu_table *tbl, 68 unsigned long (*get)(struct iommu_table *tbl, long index); 69 void (*flush)(struct iommu_table *tbl); 70 void (*free)(struct iommu_table *tbl); 120 #define IOMMU_TABLE_USERSPACE_ENTRY_RO(tbl, entry) \ argument 121 ((tbl)->it_ops->useraddrptr((tbl), (entry), false)) [all …]
|
/arch/powerpc/kvm/ |
D | book3s_64_vio.c | 65 iommu_tce_table_put(stit->tbl); in kvm_spapr_tce_iommu_table_free() 97 if (table_group->tables[i] != stit->tbl) in kvm_spapr_tce_release_iommu_group() 113 struct iommu_table *tbl = NULL; in kvm_spapr_tce_attach_iommu_group() local 158 tbl = iommu_tce_table_get(tbltmp); in kvm_spapr_tce_attach_iommu_group() 162 if (!tbl) { in kvm_spapr_tce_attach_iommu_group() 169 if (tbl != stit->tbl) in kvm_spapr_tce_attach_iommu_group() 174 iommu_tce_table_put(tbl); in kvm_spapr_tce_attach_iommu_group() 191 iommu_tce_table_put(tbl); in kvm_spapr_tce_attach_iommu_group() 196 stit->tbl = tbl; in kvm_spapr_tce_attach_iommu_group() 400 long shift = stit->tbl->it_page_shift; in kvmppc_tce_validate() [all …]
|
/arch/loongarch/kernel/ |
D | efi.c | 100 struct efi_boot_memmap *tbl; in efi_init() local 129 tbl = early_memremap_ro(boot_memmap, sizeof(*tbl)); in efi_init() 130 if (tbl) { in efi_init() 133 data.phys_map = boot_memmap + sizeof(*tbl); in efi_init() 134 data.size = tbl->map_size; in efi_init() 135 data.desc_size = tbl->desc_size; in efi_init() 136 data.desc_version = tbl->desc_ver; in efi_init() 141 early_memunmap(tbl, sizeof(*tbl)); in efi_init()
|
/arch/sparc/kernel/ |
D | pci_sun4v.c | 189 struct iommu_map_table *tbl; in dma_4v_alloc_coherent() local 216 tbl = &iommu->tbl; in dma_4v_alloc_coherent() 218 tbl = &iommu->atu->tbl; in dma_4v_alloc_coherent() 220 entry = iommu_tbl_range_alloc(dev, tbl, npages, NULL, in dma_4v_alloc_coherent() 226 *dma_addrp = (tbl->table_map_base + (entry << IO_PAGE_SHIFT)); in dma_4v_alloc_coherent() 252 iommu_tbl_range_free(tbl, *dma_addrp, npages, IOMMU_ERROR_CODE); in dma_4v_alloc_coherent() 329 struct iommu_map_table *tbl; in dma_4v_free_coherent() local 341 tbl = &iommu->tbl; in dma_4v_free_coherent() 344 tbl = &atu->tbl; in dma_4v_free_coherent() 347 entry = ((dvma - tbl->table_map_base) >> IO_PAGE_SHIFT); in dma_4v_free_coherent() [all …]
|
D | iommu.c | 52 struct iommu *iommu = container_of(iommu_map_table, struct iommu, tbl); in iommu_flushall() 105 iommu->tbl.table_map_base = dma_offset; in iommu_table_init() 111 iommu->tbl.map = kzalloc_node(sz, GFP_KERNEL, numa_node); in iommu_table_init() 112 if (!iommu->tbl.map) in iommu_table_init() 115 iommu_tbl_pool_init(&iommu->tbl, num_tsb_entries, IO_PAGE_SHIFT, in iommu_table_init() 150 kfree(iommu->tbl.map); in iommu_table_init() 151 iommu->tbl.map = NULL; in iommu_table_init() 162 entry = iommu_tbl_range_alloc(dev, &iommu->tbl, npages, NULL, in alloc_npages() 230 *dma_addrp = (iommu->tbl.table_map_base + in dma_4u_alloc_coherent() 256 iommu_tbl_range_free(&iommu->tbl, dvma, npages, IOMMU_ERROR_CODE); in dma_4u_free_coherent() [all …]
|
D | iommu-common.c | 223 static struct iommu_pool *get_pool(struct iommu_map_table *tbl, in get_pool() argument 227 unsigned long largepool_start = tbl->large_pool.start; in get_pool() 228 bool large_pool = ((tbl->flags & IOMMU_HAS_LARGE_POOL) != 0); in get_pool() 232 p = &tbl->large_pool; in get_pool() 234 unsigned int pool_nr = entry / tbl->poolsize; in get_pool() 236 BUG_ON(pool_nr >= tbl->nr_pools); in get_pool() 237 p = &tbl->pools[pool_nr]; in get_pool()
|
/arch/powerpc/platforms/pseries/ |
D | iommu.c | 59 struct iommu_table *tbl; in iommu_pseries_alloc_table() local 61 tbl = kzalloc_node(sizeof(struct iommu_table), GFP_KERNEL, node); in iommu_pseries_alloc_table() 62 if (!tbl) in iommu_pseries_alloc_table() 65 INIT_LIST_HEAD_RCU(&tbl->it_group_list); in iommu_pseries_alloc_table() 66 kref_init(&tbl->it_kref); in iommu_pseries_alloc_table() 67 return tbl; in iommu_pseries_alloc_table() 116 static int tce_build_pSeries(struct iommu_table *tbl, long index, in tce_build_pSeries() argument 124 const unsigned long tceshift = tbl->it_page_shift; in tce_build_pSeries() 125 const unsigned long pagesize = IOMMU_PAGE_SIZE(tbl); in tce_build_pSeries() 132 tcep = ((__be64 *)tbl->it_base) + index; in tce_build_pSeries() [all …]
|
D | vio.c | 521 struct iommu_table *tbl = get_iommu_table_base(dev); in vio_dma_iommu_map_page() local 524 if (vio_cmo_alloc(viodev, roundup(size, IOMMU_PAGE_SIZE(tbl)))) in vio_dma_iommu_map_page() 526 ret = iommu_map_page(dev, tbl, page, offset, size, dma_get_mask(dev), in vio_dma_iommu_map_page() 533 vio_cmo_dealloc(viodev, roundup(size, IOMMU_PAGE_SIZE(tbl))); in vio_dma_iommu_map_page() 545 struct iommu_table *tbl = get_iommu_table_base(dev); in vio_dma_iommu_unmap_page() local 547 iommu_unmap_page(tbl, dma_handle, size, direction, attrs); in vio_dma_iommu_unmap_page() 548 vio_cmo_dealloc(viodev, roundup(size, IOMMU_PAGE_SIZE(tbl))); in vio_dma_iommu_unmap_page() 556 struct iommu_table *tbl = get_iommu_table_base(dev); in vio_dma_iommu_map_sg() local 562 alloc_size += roundup(sgl->length, IOMMU_PAGE_SIZE(tbl)); in vio_dma_iommu_map_sg() 567 ret = ppc_iommu_map_sg(dev, tbl, sglist, nelems, dma_get_mask(dev), in vio_dma_iommu_map_sg() [all …]
|
/arch/powerpc/platforms/pasemi/ |
D | iommu.c | 77 static int iobmap_build(struct iommu_table *tbl, long index, in iobmap_build() argument 88 bus_addr = (tbl->it_offset + index) << IOBMAP_PAGE_SHIFT; in iobmap_build() 90 ip = ((u32 *)tbl->it_base) + index; in iobmap_build() 106 static void iobmap_free(struct iommu_table *tbl, long index, in iobmap_free() argument 114 bus_addr = (tbl->it_offset + index) << IOBMAP_PAGE_SHIFT; in iobmap_free() 116 ip = ((u32 *)tbl->it_base) + index; in iobmap_free()
|
/arch/mips/kernel/syscalls/ |
D | Makefile | 22 $(uapi)/unistd_%.h: $(src)/syscall_%.tbl $(syshdr) FORCE 29 $(kapi)/unistd_nr_%.h: $(src)/syscall_%.tbl $(sysnr) FORCE 32 $(kapi)/syscall_table_%.h: $(src)/syscall_%.tbl $(systbl) FORCE
|
/arch/arm64/crypto/ |
D | aes-neon.S | 72 tbl \in\().16b, {v16.16b-v19.16b}, \in\().16b 94 tbl \in\().16b, {\in\().16b}, v14.16b 104 tbl \in\().16b, {\in\().16b}, v13.16b /* ShiftRows */ 129 tbl \in0\().16b, {v16.16b-v19.16b}, \in0\().16b 131 tbl \in1\().16b, {v16.16b-v19.16b}, \in1\().16b 133 tbl \in2\().16b, {v16.16b-v19.16b}, \in2\().16b 135 tbl \in3\().16b, {v16.16b-v19.16b}, \in3\().16b 199 tbl \in0\().16b, {\in0\().16b}, v14.16b 200 tbl \in1\().16b, {\in1\().16b}, v14.16b 214 tbl \in0\().16b, {\in0\().16b}, v13.16b /* ShiftRows */ [all …]
|
D | chacha-neon-core.S | 59 tbl v3.16b, {v3.16b}, v12.16b 88 tbl v3.16b, {v3.16b}, v12.16b 330 tbl v12.16b, {v12.16b}, v31.16b 332 tbl v13.16b, {v13.16b}, v31.16b 334 tbl v14.16b, {v14.16b}, v31.16b 336 tbl v15.16b, {v15.16b}, v31.16b 464 tbl v15.16b, {v15.16b}, v31.16b 466 tbl v12.16b, {v12.16b}, v31.16b 468 tbl v13.16b, {v13.16b}, v31.16b 470 tbl v14.16b, {v14.16b}, v31.16b [all …]
|
D | aes-neonbs-core.S | 240 tbl \x0\().16b, {\x0\().16b}, \mask\().16b 241 tbl \x1\().16b, {\x1\().16b}, \mask\().16b 242 tbl \x2\().16b, {\x2\().16b}, \mask\().16b 243 tbl \x3\().16b, {\x3\().16b}, \mask\().16b 244 tbl \x4\().16b, {\x4\().16b}, \mask\().16b 245 tbl \x5\().16b, {\x5\().16b}, \mask\().16b 246 tbl \x6\().16b, {\x6\().16b}, \mask\().16b 247 tbl \x7\().16b, {\x7\().16b}, \mask\().16b 402 tbl v7.16b ,{v17.16b}, v16.16b 439 tbl v0.16b, {v10.16b}, v8.16b [all …]
|
D | crct10dif-ce-core.S | 128 tbl bd1.16b, {\bd\().16b}, perm1.16b 129 tbl bd2.16b, {\bd\().16b}, perm2.16b 130 tbl bd3.16b, {\bd\().16b}, perm3.16b 131 tbl bd4.16b, {\bd\().16b}, perm4.16b 150 tbl t4.16b, {ad.16b}, perm1.16b // A1 151 tbl t5.16b, {ad.16b}, perm2.16b // A2 152 tbl t6.16b, {ad.16b}, perm3.16b // A3 375 tbl v1.16b, {v7.16b}, v2.16b 380 tbl v3.16b, {v7.16b}, v2.16b
|
/arch/powerpc/sysdev/ |
D | dart_iommu.c | 163 static void dart_flush(struct iommu_table *tbl) in dart_flush() argument 172 static int dart_build(struct iommu_table *tbl, long index, in dart_build() argument 183 orig_dp = dp = ((unsigned int*)tbl->it_base) + index; in dart_build() 209 static void dart_free(struct iommu_table *tbl, long index, long npages) in dart_free() argument 221 orig_dp = dp = ((unsigned int *)tbl->it_base) + index; in dart_free()
|
/arch/arm64/kernel/ |
D | head.S | 207 .macro populate_entries, tbl, rtbl, index, eindex, flags, inc, tmp1 210 str \tmp1, [\tbl, \index, lsl #3] 262 ….macro map_memory, tbl, rtbl, vstart, vend, flags, phys, order, istart, iend, tmp, count, sv, extr… 264 add \rtbl, \tbl, #PAGE_SIZE 272 populate_entries \tbl, \rtbl, \istart, \iend, #PMD_TYPE_TABLE, #PAGE_SIZE, \tmp 273 mov \tbl, \sv 278 populate_entries \tbl, \rtbl, \istart, \iend, #PMD_TYPE_TABLE, #PAGE_SIZE, \tmp 279 mov \tbl, \sv 284 populate_entries \tbl, \rtbl, \istart, \iend, #PMD_TYPE_TABLE, #PAGE_SIZE, \tmp 285 mov \tbl, \sv [all …]
|
/arch/sparc/include/asm/ |
D | iommu_64.h | 49 struct iommu_map_table tbl; member 56 struct iommu_map_table tbl; member
|
/arch/parisc/include/asm/ |
D | pdc.h | 63 int pdc_pci_irt(unsigned long num_entries, unsigned long hpa, void *tbl); 75 struct pdc_memory_table *tbl, unsigned long entries);
|
/arch/arm/kernel/ |
D | entry-common.S | 229 uaccess_disable tbl 232 adr tbl, sys_call_table @ load syscall table pointer 245 ldrne tbl, =sys_oabi_call_table 266 invoke_syscall tbl, scno, r10, __ret_fast_syscall 301 invoke_syscall tbl, scno, r10, __sys_trace_return, reload=1 378 ldrlo pc, [tbl, scno, lsl #2]
|
/arch/x86/platform/efi/ |
D | efi.c | 509 efi_properties_table_t *tbl; in efi_init() local 511 tbl = early_memremap_ro(prop_phys, sizeof(*tbl)); in efi_init() 512 if (tbl == NULL) { in efi_init() 515 if (tbl->memory_protection_attribute & in efi_init() 519 early_memunmap(tbl, sizeof(*tbl)); in efi_init()
|