Home
last modified time | relevance | path

Searched refs:iopte (Results 1 – 7 of 7) sorted by relevance

/linux-4.1.27/drivers/iommu/
Domap-iommu.c617 static void iopte_free(u32 *iopte) in iopte_free() argument
620 if (iopte) in iopte_free()
621 kmem_cache_free(iopte_cachep, iopte); in iopte_free()
626 u32 *iopte; in iopte_alloc() local
636 iopte = kmem_cache_zalloc(iopte_cachep, GFP_KERNEL); in iopte_alloc()
640 if (!iopte) in iopte_alloc()
643 *iopgd = virt_to_phys(iopte) | IOPGD_TABLE; in iopte_alloc()
646 dev_vdbg(obj->dev, "%s: a new pte:%p\n", __func__, iopte); in iopte_alloc()
649 iopte_free(iopte); in iopte_alloc()
653 iopte = iopte_offset(iopgd, da); in iopte_alloc()
[all …]
Domap-iommu-debug.c92 u32 *iopgd, *iopte; in dump_ioptable() local
108 iopte = iopte_offset(iopgd, 0); in dump_ioptable()
109 for (j = 0; j < PTRS_PER_IOPTE; j++, iopte++) { in dump_ioptable()
110 if (!*iopte) in dump_ioptable()
114 seq_printf(s, "2: 0x%08x 0x%08x\n", da, *iopte); in dump_ioptable()
/linux-4.1.27/arch/sparc/mm/
Diommu.c151 static void iommu_flush_iotlb(iopte_t *iopte, unsigned int niopte) in iommu_flush_iotlb() argument
156 start = (unsigned long)iopte; in iommu_flush_iotlb()
181 iopte_t *iopte, *iopte0; in iommu_get_one() local
193 iopte = iopte0; in iommu_get_one()
195 iopte_val(*iopte) = MKIOPTE(page_to_pfn(page), IOPERM); in iommu_get_one()
198 iopte++; in iommu_get_one()
329 iopte_t *iopte = iommu->page_table; in iommu_map_dma_area() local
343 iopte += ioptex; in iommu_map_dma_area()
344 first = iopte; in iommu_map_dma_area()
366 iopte_val(*iopte++) = in iommu_map_dma_area()
[all …]
Dio-unit.c98 iopte_t iopte; in iounit_get_area() local
132 iopte = MKIOPTE(__pa(vaddr & PAGE_MASK)); in iounit_get_area()
134 for (k = 0; k < npages; k++, iopte = __iopte(iopte_val(iopte) + 0x100), scan++) { in iounit_get_area()
136 sbus_writel(iopte, &iounit->page_table[scan]); in iounit_get_area()
208 iopte_t __iomem *iopte; in iounit_map_dma_area() local
230 iopte = iounit->page_table + i; in iounit_map_dma_area()
231 sbus_writel(MKIOPTE(__pa(page)), iopte); in iounit_map_dma_area()
/linux-4.1.27/arch/sparc/kernel/
Diommu.c79 #define IOPTE_IS_DUMMY(iommu, iopte) \ argument
80 ((iopte_val(*iopte) & IOPTE_PAGE) == (iommu)->dummy_page_pa)
82 static inline void iopte_make_dummy(struct iommu *iommu, iopte_t *iopte) in iopte_make_dummy() argument
84 unsigned long val = iopte_val(*iopte); in iopte_make_dummy()
89 iopte_val(*iopte) = val; in iopte_make_dummy()
205 iopte_t *iopte; in dma_4u_alloc_coherent() local
223 iopte = alloc_npages(dev, iommu, size >> IO_PAGE_SHIFT); in dma_4u_alloc_coherent()
225 if (unlikely(iopte == NULL)) { in dma_4u_alloc_coherent()
231 ((iopte - iommu->page_table) << IO_PAGE_SHIFT)); in dma_4u_alloc_coherent()
236 iopte_val(*iopte) = (IOPTE_CONSISTENT(0UL) | in dma_4u_alloc_coherent()
[all …]
/linux-4.1.27/arch/sparc/include/asm/
Dpage_32.h55 typedef struct { unsigned long iopte; } iopte_t; member
63 #define iopte_val(x) ((x).iopte)
Dpage_64.h58 typedef struct { unsigned long iopte; } iopte_t; member
65 #define iopte_val(x) ((x).iopte)