Linux-2.6.12-rc2
[linux-flexiantxendom0-natty.git] / include / asm-sh64 / tlbflush.h
1 #ifndef __ASM_SH64_TLBFLUSH_H
2 #define __ASM_SH64_TLBFLUSH_H
3
4 #include <asm/pgalloc.h>
5
6 /*
7  * TLB flushing:
8  *
9  *  - flush_tlb() flushes the current mm struct TLBs
10  *  - flush_tlb_all() flushes all processes TLBs
11  *  - flush_tlb_mm(mm) flushes the specified mm context TLB's
12  *  - flush_tlb_page(vma, vmaddr) flushes one page
13  *  - flush_tlb_range(mm, start, end) flushes a range of pages
14  *
15  */
16
17 extern void flush_tlb(void);
18 extern void flush_tlb_all(void);
19 extern void flush_tlb_mm(struct mm_struct *mm);
20 extern void flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
21                             unsigned long end);
22 extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long page);
23 extern inline void flush_tlb_pgtables(struct mm_struct *mm,
24                                       unsigned long start, unsigned long end)
25 {
26 }
27
28 extern void flush_tlb_kernel_range(unsigned long start, unsigned long end);
29
30 #endif /* __ASM_SH64_TLBFLUSH_H */
31