/linux-master/arch/powerpc/mm/book3s64/ |
H A D | hash_native.c | 69 static inline unsigned long ___tlbie(unsigned long vpn, int psize, argument 78 * With vpn we ignore the lower VPN_SHIFT bits already. 80 * only accomodate 76 bits in a 64 bit vpn with a VPN_SHIFT 83 va = vpn << VPN_SHIFT; 113 * vpn cover upto 65 bits of va. (0...65) and we need 116 va |= (vpn & 0xfe); /* AVAL */ 126 static inline void fixup_tlbie_vpn(unsigned long vpn, int psize, argument 154 ___tlbie(vpn, psize, apsize, ssize); 158 static inline void __tlbie(unsigned long vpn, int psize, int apsize, int ssize) argument 162 rb = ___tlbie(vpn, psiz 166 __tlbiel(unsigned long vpn, int psize, int apsize, int ssize) argument 217 tlbie(unsigned long vpn, int psize, int apsize, int ssize, int local) argument 265 native_hpte_insert(unsigned long hpte_group, unsigned long vpn, unsigned long pa, unsigned long rflags, unsigned long vflags, int psize, int apsize, int ssize) argument 374 native_hpte_updatepp(unsigned long slot, unsigned long newpp, unsigned long vpn, int bpsize, int apsize, int ssize, unsigned long flags) argument 451 native_hpte_find(unsigned long vpn, int psize, int ssize) argument 488 unsigned long vpn; local 524 unsigned long vpn; local 555 native_hpte_invalidate(unsigned long slot, unsigned long vpn, int bpsize, int apsize, int ssize, int local) argument 606 unsigned long hidx, vpn = 0, hash, slot; local 664 hpte_decode(struct hash_pte *hpte, unsigned long slot, int *psize, int *apsize, int *ssize, unsigned long *vpn) argument 742 unsigned long vpn = 0; local 781 unsigned long vpn = 0; local [all...] |
H A D | hash_64k.c | 47 unsigned long vpn, hash, slot, gslot; local 90 vpn = hpt_vpn(ea, vsid, ssize); 102 flush_hash_page(vpn, rpte, MMU_PAGE_64K, ssize, flags); 118 gslot = pte_get_hash_gslot(vpn, shift, ssize, rpte, 120 ret = mmu_hash_ops.hpte_updatepp(gslot, rflags, vpn, 157 hash = hpt_hash(vpn, shift, ssize); 162 slot = mmu_hash_ops.hpte_insert(hpte_group, vpn, pa, rflags, 0, 171 slot = mmu_hash_ops.hpte_insert(hpte_group, vpn, pa, 185 mmu_hash_ops.hpte_invalidate(hpte_group + gslot, vpn, 236 unsigned long vpn, has local [all...] |
H A D | hash_4k.c | 29 unsigned long vpn, hash, slot; local 66 vpn = hpt_vpn(ea, vsid, ssize); 71 unsigned long gslot = pte_get_hash_gslot(vpn, shift, ssize, 74 if (mmu_hash_ops.hpte_updatepp(gslot, rflags, vpn, MMU_PAGE_4K, 82 hash = hpt_hash(vpn, shift, ssize); 88 slot = mmu_hash_ops.hpte_insert(hpte_group, vpn, pa, rflags, 0, 95 slot = mmu_hash_ops.hpte_insert(hpte_group, vpn, pa,
|
H A D | hash_hugepage.c | 30 unsigned long vpn, hash, shift, slot; local 76 vpn = hpt_vpn(ea, vsid, ssize); 102 hash = hpt_hash(vpn, shift, ssize); 109 ret = mmu_hash_ops.hpte_updatepp(slot, rflags, vpn, 128 hash = hpt_hash(vpn, shift, ssize); 137 slot = mmu_hash_ops.hpte_insert(hpte_group, vpn, pa, rflags, 0, 144 slot = mmu_hash_ops.hpte_insert(hpte_group, vpn, pa,
|
H A D | hash_tlb.c | 43 unsigned long vpn; local 96 vpn = hpt_vpn(addr, vsid, ssize); 104 flush_hash_page(vpn, rpte, psize, ssize, mm_is_thread_local(mm)); 130 batch->vpn[i] = vpn; 151 flush_hash_page(batch->vpn[0], batch->pte[0],
|
H A D | hugetlbpage.c | 25 unsigned long vpn; local 33 vpn = hpt_vpn(ea, vsid, ssize); 89 gslot = pte_get_hash_gslot(vpn, shift, ssize, rpte, 0); 90 if (mmu_hash_ops.hpte_updatepp(gslot, rflags, vpn, mmu_psize, 96 unsigned long hash = hpt_hash(vpn, shift, ssize); 103 slot = hpte_insert_repeating(hash, vpn, pa, rflags, 0,
|
H A D | hash_utils.c | 378 unsigned long vpn = hpt_vpn(vaddr, vsid, ssize); local 405 hash = hpt_hash(vpn, shift, ssize); 410 ret = mmu_hash_ops.hpte_insert(hpteg, vpn, paddr, tprot, 420 ret = mmu_hash_ops.hpte_insert(hpteg, vpn, paddr, tprot, 1916 unsigned long pte_get_hash_gslot(unsigned long vpn, unsigned long shift, argument 1921 hash = hpt_hash(vpn, shift, ssize); 1930 void flush_hash_page(unsigned long vpn, real_pte_t pte, int psize, int ssize, argument 1936 DBG_LOW("flush_hash_page(vpn=%016lx)\n", vpn); 1937 pte_iterate_hashed_subpages(pte, psize, vpn, inde 1959 unsigned long hidx, shift, vpn, hash, slot; local 2024 hpte_insert_repeating(unsigned long hash, unsigned long vpn, unsigned long pa, unsigned long rflags, unsigned long vflags, int psize, int ssize) argument 2127 unsigned long vpn = hpt_vpn(vaddr, vsid, mmu_kernel_ssize); local 2155 unsigned long vpn = hpt_vpn(vaddr, vsid, mmu_kernel_ssize); local [all...] |
/linux-master/arch/powerpc/platforms/ps3/ |
H A D | htab.c | 34 static long ps3_hpte_insert(unsigned long hpte_group, unsigned long vpn, argument 52 hpte_v = hpte_encode_v(vpn, psize, apsize, ssize) | vflags | HPTE_V_VALID; 66 pr_info("%s:result=%s vpn=%lx pa=%lx ix=%lx v=%llx r=%llx\n", 67 __func__, ps3_result(result), vpn, pa, hpte_group, 99 unsigned long vpn, int psize, int apsize, 108 want_v = hpte_encode_avpn(vpn, psize, ssize); 118 pr_info("%s: result=%s read vpn=%lx slot=%lx psize=%d\n", 119 __func__, ps3_result(result), vpn, slot, psize); 152 static void ps3_hpte_invalidate(unsigned long slot, unsigned long vpn, argument 163 pr_info("%s: result=%s vpn 98 ps3_hpte_updatepp(unsigned long slot, unsigned long newpp, unsigned long vpn, int psize, int apsize, int ssize, unsigned long inv_flags) argument [all...] |
/linux-master/arch/sh/mm/ |
H A D | tlb-pteaex.c | 20 unsigned long flags, pteval, vpn; local 31 vpn = address & MMU_VPN_MASK; 32 __raw_writel(vpn, MMU_PTEH);
|
H A D | tlb-sh4.c | 18 unsigned long flags, pteval, vpn; local 29 vpn = (address & MMU_VPN_MASK) | get_asid(); 30 __raw_writel(vpn, MMU_PTEH);
|
H A D | tlb-sh3.c | 29 unsigned long flags, pteval, vpn; local 40 vpn = (address & MMU_VPN_MASK) | get_asid(); 41 __raw_writel(vpn, MMU_PTEH);
|
H A D | tlb-debugfs.c | 91 seq_printf(file, "entry: vpn ppn asid size valid wired\n"); 94 unsigned long vpn, ppn, asid, size; local 102 vpn = val & 0xfffffc00; 126 entry, vpn, ppn, asid,
|
H A D | pmb.c | 37 unsigned long vpn; member in struct:pmb_entry 132 return (b->vpn == (a->vpn + a->size)) && 156 if ((vaddr < pmbe->vpn) || (vaddr >= (pmbe->vpn + pmbe->size))) 236 static struct pmb_entry *pmb_alloc(unsigned long vpn, unsigned long ppn, argument 269 pmbe->vpn = vpn; 302 __raw_writel(pmbe->vpn | PMB_V, addr); 472 if (pmbe->vpn 579 unsigned long ppn, vpn, flags; local [all...] |
/linux-master/arch/powerpc/platforms/pseries/ |
H A D | lpar.c | 757 unsigned long vpn, unsigned long pa, 767 pr_devel("hpte_insert(group=%lx, vpn=%016lx, " 769 hpte_group, vpn, pa, rflags, vflags, psize); 771 hpte_v = hpte_encode_v(vpn, psize, apsize, ssize) | vflags | HPTE_V_VALID; 925 unsigned long vpn, 933 want_v = hpte_encode_avpn(vpn, psize, ssize); 986 static long pSeries_lpar_hpte_find(unsigned long vpn, int psize, int ssize) argument 993 hash = hpt_hash(vpn, mmu_psize_defs[psize].shift, ssize); 994 want_v = hpte_encode_avpn(vpn, psize, ssize); 1016 unsigned long vpn; local 756 pSeries_lpar_hpte_insert(unsigned long hpte_group, unsigned long vpn, unsigned long pa, unsigned long rflags, unsigned long vflags, int psize, int apsize, int ssize) argument 923 pSeries_lpar_hpte_updatepp(unsigned long slot, unsigned long newpp, unsigned long vpn, int psize, int apsize, int ssize, unsigned long inv_flags) argument 1037 pSeries_lpar_hpte_invalidate(unsigned long slot, unsigned long vpn, int psize, int apsize, int ssize, int local) argument 1147 hugepage_block_invalidate(unsigned long *slot, unsigned long *vpn, int count, int psize, int ssize) argument 1193 hugepage_bulk_invalidate(unsigned long *slot, unsigned long *vpn, int count, int psize, int ssize) argument 1227 __pSeries_lpar_hugepage_invalidate(unsigned long *slot, unsigned long *vpn, int count, int psize, int ssize) argument 1258 unsigned long shift, hidx, vpn = 0, hash, slot; local 1310 unsigned long vpn; local 1328 compute_slot(real_pte_t pte, unsigned long vpn, unsigned long index, unsigned long shift, int ssize) argument 1352 unsigned long vpn; local 1527 unsigned long vpn; local [all...] |
/linux-master/arch/powerpc/include/asm/book3s/64/ |
H A D | tlbflush-hash.h | 19 unsigned long vpn[PPC64_TLB_BATCH_NR]; member in struct:ppc64_tlb_batch 62 extern void flush_hash_page(unsigned long vpn, real_pte_t pte, int psize,
|
H A D | mmu-hash.h | 137 unsigned long vpn, 142 unsigned long vpn, 149 unsigned long vpn, 325 static inline unsigned long hpte_encode_avpn(unsigned long vpn, int psize, argument 337 v = (vpn >> (23 - VPN_SHIFT)) & ~(mmu_psize_defs[psize].avpnm); 389 static inline unsigned long hpte_encode_v(unsigned long vpn, int base_psize, argument 393 v = hpte_encode_avpn(vpn, base_psize, ssize); 433 static inline unsigned long hpt_hash(unsigned long vpn, argument 442 hash = (vpn >> (SID_SHIFT - VPN_SHIFT)) ^ 443 ((vpn [all...] |
H A D | hash-64k.h | 158 #define pte_iterate_hashed_subpages(rpte, psize, vpn, index, shift) \ 160 unsigned long __end = vpn + (1UL << (PAGE_SHIFT - VPN_SHIFT)); \ 164 for (index = 0; vpn < __end; index++, \ 165 vpn += (1L << (shift - VPN_SHIFT))) { \
|
H A D | hash.h | 230 unsigned long pte_get_hash_gslot(unsigned long vpn, unsigned long shift,
|
/linux-master/arch/powerpc/mm/ptdump/ |
H A D | hashpagetable.c | 210 unsigned long hash, vsid, vpn, hpte_group, want_v, hpte_v; local 216 vpn = hpt_vpn(ea, vsid, ssize); 217 hash = hpt_hash(vpn, shift, ssize); 218 want_v = hpte_encode_avpn(vpn, psize, ssize); 245 unsigned long vsid, vpn, hash, hpte_group, want_v; local 252 vpn = hpt_vpn(ea, vsid, ssize); 253 hash = hpt_hash(vpn, shift, ssize); 254 want_v = hpte_encode_avpn(vpn, psize, ssize);
|
/linux-master/arch/xtensa/mm/ |
H A D | tlb.c | 239 unsigned vpn = (r0 & PAGE_MASK) | (e << PAGE_SHIFT); local 240 unsigned pte = get_pte_for_vaddr(vpn); 246 if (tlb_asid > 0 && ((vpn < TASK_SIZE) == kernel)) { 248 dtlb ? 'D' : 'I', w, e, vpn,
|
/linux-master/arch/powerpc/kvm/ |
H A D | book3s_64_mmu_host.c | 74 unsigned long vpn; local 122 vpn = hpt_vpn(orig_pte->eaddr, map->host_vsid, MMU_SEGSIZE_256M); 149 hash = hpt_hash(vpn, mmu_psize_defs[hpsize].shift, MMU_SEGSIZE_256M); 169 ret = mmu_hash_ops.hpte_insert(hpteg, vpn, hpaddr, rflags, vflags, 183 vpn, hpaddr, orig_pte); 195 cpte->host_vpn = vpn;
|
H A D | book3s_32_mmu_host.c | 134 u64 vpn; local 167 vpn = (vsid << (SID_SHIFT - VPN_SHIFT)) | 243 orig_pte->eaddr, (ulong)pteg, vpn, 247 pte->host_vpn = vpn;
|
H A D | book3s_64_mmu.c | 124 u64 vpn; local 128 vpn = kvmppc_slb_calc_vpn(slbe, eaddr); 130 hash = hpt_hash(vpn, kvmppc_mmu_book3s_64_get_pagesize(slbe), ssize);
|