1 #ifndef _ASM_POWERPC_TLBFLUSH_H
2 #define _ASM_POWERPC_TLBFLUSH_H
23 #ifdef CONFIG_PPC_MMU_NOHASH
35 #define MMU_NO_CONTEXT ((unsigned int)-1)
53 #define flush_tlb_mm(mm) local_flush_tlb_mm(mm)
54 #define flush_tlb_page(vma,addr) local_flush_tlb_page(vma,addr)
55 #define __flush_tlb_page(mm,addr,p,i) __local_flush_tlb_page(mm,addr,p,i)
57 #define flush_tlb_page_nohash(vma,addr) flush_tlb_page(vma,addr)
59 #elif defined(CONFIG_PPC_STD_MMU_32)
80 #elif defined(CONFIG_PPC_STD_MMU_64)
82 #define MMU_NO_CONTEXT 0
91 #define PPC64_TLB_BATCH_NR 192
93 struct ppc64_tlb_batch {
98 unsigned long vpn[PPC64_TLB_BATCH_NR];
106 #define __HAVE_ARCH_ENTER_LAZY_MMU_MODE
110 struct ppc64_tlb_batch *batch = &
__get_cpu_var(ppc64_tlb_batch);
117 struct ppc64_tlb_batch *batch = &
__get_cpu_var(ppc64_tlb_batch);
124 #define arch_flush_lazy_mmu_mode() do {} while (0)
128 int ssize,
int local);
141 unsigned long vmaddr)
146 unsigned long vmaddr)
151 unsigned long vmaddr)
156 unsigned long start,
unsigned long end)
166 extern void __flush_hash_table_range(
struct mm_struct *mm,
unsigned long start,
170 #error Unsupported MMU type