Searched refs:iopte (Results 1 – 7 of 7) sorted by relevance
/Linux-v4.19/drivers/iommu/ |
D | omap-iommu.c | 485 static void iopte_free(struct omap_iommu *obj, u32 *iopte, bool dma_valid) in iopte_free() argument 490 if (iopte) { in iopte_free() 492 pt_dma = virt_to_phys(iopte); in iopte_free() 497 kmem_cache_free(iopte_cachep, iopte); in iopte_free() 504 u32 *iopte; in iopte_alloc() local 515 iopte = kmem_cache_zalloc(iopte_cachep, GFP_KERNEL); in iopte_alloc() 519 if (!iopte) in iopte_alloc() 522 *pt_dma = dma_map_single(obj->dev, iopte, IOPTE_TABLE_SIZE, in iopte_alloc() 526 iopte_free(obj, iopte, false); in iopte_alloc() 534 if (WARN_ON(*pt_dma != virt_to_phys(iopte))) { in iopte_alloc() [all …]
|
D | omap-iommu-debug.c | 184 u32 *iopgd, *iopte; in dump_ioptable() local 200 iopte = iopte_offset(iopgd, 0); in dump_ioptable() 201 for (j = 0; j < PTRS_PER_IOPTE; j++, iopte++) { in dump_ioptable() 202 if (!*iopte) in dump_ioptable() 206 seq_printf(s, "2: 0x%08x 0x%08x\n", da, *iopte); in dump_ioptable()
|
/Linux-v4.19/arch/sparc/mm/ |
D | iommu.c | 152 static void iommu_flush_iotlb(iopte_t *iopte, unsigned int niopte) in iommu_flush_iotlb() argument 157 start = (unsigned long)iopte; in iommu_flush_iotlb() 182 iopte_t *iopte, *iopte0; in iommu_get_one() local 194 iopte = iopte0; in iommu_get_one() 196 iopte_val(*iopte) = MKIOPTE(page_to_pfn(page), IOPERM); in iommu_get_one() 199 iopte++; in iommu_get_one() 330 iopte_t *iopte = iommu->page_table; in iommu_map_dma_area() local 344 iopte += ioptex; in iommu_map_dma_area() 345 first = iopte; in iommu_map_dma_area() 367 iopte_val(*iopte++) = in iommu_map_dma_area() [all …]
|
D | io-unit.c | 99 iopte_t iopte; in iounit_get_area() local 133 iopte = MKIOPTE(__pa(vaddr & PAGE_MASK)); in iounit_get_area() 135 for (k = 0; k < npages; k++, iopte = __iopte(iopte_val(iopte) + 0x100), scan++) { in iounit_get_area() 137 sbus_writel(iopte_val(iopte), &iounit->page_table[scan]); in iounit_get_area() 209 iopte_t __iomem *iopte; in iounit_map_dma_area() local 231 iopte = iounit->page_table + i; in iounit_map_dma_area() 232 sbus_writel(iopte_val(MKIOPTE(__pa(page))), iopte); in iounit_map_dma_area()
|
/Linux-v4.19/arch/sparc/kernel/ |
D | iommu.c | 80 #define IOPTE_IS_DUMMY(iommu, iopte) \ argument 81 ((iopte_val(*iopte) & IOPTE_PAGE) == (iommu)->dummy_page_pa) 83 static inline void iopte_make_dummy(struct iommu *iommu, iopte_t *iopte) in iopte_make_dummy() argument 85 unsigned long val = iopte_val(*iopte); in iopte_make_dummy() 90 iopte_val(*iopte) = val; in iopte_make_dummy() 206 iopte_t *iopte; in dma_4u_alloc_coherent() local 224 iopte = alloc_npages(dev, iommu, size >> IO_PAGE_SHIFT); in dma_4u_alloc_coherent() 226 if (unlikely(iopte == NULL)) { in dma_4u_alloc_coherent() 232 ((iopte - iommu->page_table) << IO_PAGE_SHIFT)); in dma_4u_alloc_coherent() 237 iopte_val(*iopte) = (IOPTE_CONSISTENT(0UL) | in dma_4u_alloc_coherent() [all …]
|
/Linux-v4.19/arch/sparc/include/asm/ |
D | page_32.h | 56 typedef struct { unsigned long iopte; } iopte_t; member 64 #define iopte_val(x) ((x).iopte)
|
D | page_64.h | 70 typedef struct { unsigned long iopte; } iopte_t; member 77 #define iopte_val(x) ((x).iopte)
|