Lines Matching refs:vaddr
83 unsigned long vaddr, in map_pte_uncached() argument
87 unsigned long orig_vaddr = vaddr; in map_pte_uncached()
89 vaddr &= ~PMD_MASK; in map_pte_uncached()
90 end = vaddr + size; in map_pte_uncached()
102 vaddr += PAGE_SIZE; in map_pte_uncached()
106 } while (vaddr < end); in map_pte_uncached()
110 static inline int map_pmd_uncached(pmd_t * pmd, unsigned long vaddr, in map_pmd_uncached() argument
114 unsigned long orig_vaddr = vaddr; in map_pmd_uncached()
116 vaddr &= ~PGDIR_MASK; in map_pmd_uncached()
117 end = vaddr + size; in map_pmd_uncached()
121 pte_t * pte = pte_alloc_kernel(pmd, vaddr); in map_pmd_uncached()
124 if (map_pte_uncached(pte, orig_vaddr, end - vaddr, paddr_ptr)) in map_pmd_uncached()
126 vaddr = (vaddr + PMD_SIZE) & PMD_MASK; in map_pmd_uncached()
129 } while (vaddr < end); in map_pmd_uncached()
133 static inline int map_uncached_pages(unsigned long vaddr, unsigned long size, in map_uncached_pages() argument
137 unsigned long end = vaddr + size; in map_uncached_pages()
139 dir = pgd_offset_k(vaddr); in map_uncached_pages()
143 pmd = pmd_alloc(NULL, dir, vaddr); in map_uncached_pages()
146 if (map_pmd_uncached(pmd, vaddr, end - vaddr, &paddr)) in map_uncached_pages()
148 vaddr = vaddr + PGDIR_SIZE; in map_uncached_pages()
150 } while (vaddr && (vaddr < end)); in map_uncached_pages()
154 static inline void unmap_uncached_pte(pmd_t * pmd, unsigned long vaddr, in unmap_uncached_pte() argument
159 unsigned long orig_vaddr = vaddr; in unmap_uncached_pte()
168 pte = pte_offset_map(pmd, vaddr); in unmap_uncached_pte()
169 vaddr &= ~PMD_MASK; in unmap_uncached_pte()
170 end = vaddr + size; in unmap_uncached_pte()
177 pte_clear(&init_mm, vaddr, pte); in unmap_uncached_pte()
181 vaddr += PAGE_SIZE; in unmap_uncached_pte()
187 } while (vaddr < end); in unmap_uncached_pte()
190 static inline void unmap_uncached_pmd(pgd_t * dir, unsigned long vaddr, in unmap_uncached_pmd() argument
195 unsigned long orig_vaddr = vaddr; in unmap_uncached_pmd()
204 pmd = pmd_offset(dir, vaddr); in unmap_uncached_pmd()
205 vaddr &= ~PGDIR_MASK; in unmap_uncached_pmd()
206 end = vaddr + size; in unmap_uncached_pmd()
210 unmap_uncached_pte(pmd, orig_vaddr, end - vaddr); in unmap_uncached_pmd()
211 vaddr = (vaddr + PMD_SIZE) & PMD_MASK; in unmap_uncached_pmd()
214 } while (vaddr < end); in unmap_uncached_pmd()
217 static void unmap_uncached_pages(unsigned long vaddr, unsigned long size) in unmap_uncached_pages() argument
220 unsigned long end = vaddr + size; in unmap_uncached_pages()
222 dir = pgd_offset_k(vaddr); in unmap_uncached_pages()
224 unmap_uncached_pmd(dir, vaddr, end - vaddr); in unmap_uncached_pages()
225 vaddr = vaddr + PGDIR_SIZE; in unmap_uncached_pages()
227 } while (vaddr && (vaddr < end)); in unmap_uncached_pages()
306 pcxl_free_range(unsigned long vaddr, size_t size) in pcxl_free_range() argument
309 unsigned int res_idx = (vaddr - pcxl_dma_start) >> (PAGE_SHIFT + 3); in pcxl_free_range()
418 unsigned long vaddr; in pa11_dma_alloc_consistent() local
424 vaddr = pcxl_alloc_range(size); in pa11_dma_alloc_consistent()
428 map_uncached_pages(vaddr, size, paddr); in pa11_dma_alloc_consistent()
439 return (void *)vaddr; in pa11_dma_alloc_consistent()
442 static void pa11_dma_free_consistent (struct device *dev, size_t size, void *vaddr, dma_addr_t dma_… in pa11_dma_free_consistent() argument
448 unmap_uncached_pages((unsigned long)vaddr, size); in pa11_dma_free_consistent()
449 pcxl_free_range((unsigned long)vaddr, size); in pa11_dma_free_consistent()
485 unsigned long vaddr = (unsigned long)sg_virt(sglist); in pa11_dma_map_sg() local
486 sg_dma_address(sglist) = (dma_addr_t) virt_to_phys(vaddr); in pa11_dma_map_sg()
488 flush_kernel_dcache_range(vaddr, sglist->length); in pa11_dma_map_sg()
577 void *vaddr, dma_addr_t iova) in pa11_dma_free_noncoherent() argument
579 free_pages((unsigned long)vaddr, get_order(size)); in pa11_dma_free_noncoherent()