Lines Matching refs:vaddr
28 void or1k_invalidate_tlb(vaddr_t vaddr, uint count) { in or1k_invalidate_tlb() argument
38 offs = (vaddr >> PAGE_SIZE_SHIFT) & (num_dtlb_sets-1); in or1k_invalidate_tlb()
53 offs = (vaddr >> PAGE_SIZE_SHIFT) & (num_itlb_sets-1); in or1k_invalidate_tlb()
67 vaddr += PAGE_SIZE; in or1k_invalidate_tlb()
71 status_t arch_mmu_query(arch_aspace_t *aspace, vaddr_t vaddr, paddr_t *paddr, uint *flags) { in arch_mmu_query() argument
72 uint index = vaddr / SECTION_SIZE; in arch_mmu_query()
82 index = (vaddr % SECTION_SIZE) / PAGE_SIZE; in arch_mmu_query()
88 *paddr = (pte & ~OR1K_MMU_PG_FLAGS_MASK) | (vaddr & vmask); in arch_mmu_query()
105 int arch_mmu_unmap(arch_aspace_t *aspace, vaddr_t vaddr, uint count) { in arch_mmu_unmap() argument
106 LTRACEF("vaddr = 0x%lx, count = %d\n", vaddr, count); in arch_mmu_unmap()
108 if (!IS_PAGE_ALIGNED(vaddr)) in arch_mmu_unmap()
113 uint index = vaddr / SECTION_SIZE; in arch_mmu_unmap()
116 vaddr += PAGE_SIZE; in arch_mmu_unmap()
121 …if (!(pte & OR1K_MMU_PG_L) || !IS_ALIGNED(vaddr, SECTION_SIZE) || count < SECTION_SIZE / PAGE_SIZE) in arch_mmu_unmap()
125 or1k_invalidate_tlb(vaddr, SECTION_SIZE / PAGE_SIZE); in arch_mmu_unmap()
126 vaddr += SECTION_SIZE; in arch_mmu_unmap()
134 int arch_mmu_map(arch_aspace_t *aspace, vaddr_t vaddr, paddr_t paddr, uint count, uint flags) { in arch_mmu_map() argument
139 LTRACEF("vaddr = 0x%lx, paddr = 0x%lx, count = %d, flags = 0x%x\n", vaddr, paddr, count, flags); in arch_mmu_map()
141 if (!IS_PAGE_ALIGNED(vaddr) || !IS_PAGE_ALIGNED(paddr)) in arch_mmu_map()
155 l1_index = vaddr / SECTION_SIZE; in arch_mmu_map()
156 …if (IS_ALIGNED(vaddr, SECTION_SIZE) && IS_ALIGNED(paddr, SECTION_SIZE) && count >= SECTION_SIZE / … in arch_mmu_map()
160 vaddr += SECTION_SIZE; in arch_mmu_map()
189 uint l2_index = (vaddr % SECTION_SIZE) / PAGE_SIZE; in arch_mmu_map()
191 LTRACEF("l2_index = 0x%x, vaddr = 0x%lx, paddr = 0x%lx\n", l2_index, vaddr, paddr); in arch_mmu_map()
196 vaddr += PAGE_SIZE; in arch_mmu_map()