blob: e45beadc29ee860066996c8989893c497acfb550 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#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
17extern void flush_tlb(void);
18extern void flush_tlb_all(void);
19extern void flush_tlb_mm(struct mm_struct *mm);
20extern void flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
21 unsigned long end);
22extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long page);
Adrian Bunkca5ed2f2006-01-09 20:54:47 -080023static inline void flush_tlb_pgtables(struct mm_struct *mm,
Linus Torvalds1da177e2005-04-16 15:20:36 -070024 unsigned long start, unsigned long end)
25{
26}
27
28extern void flush_tlb_kernel_range(unsigned long start, unsigned long end);
29
30#endif /* __ASM_SH64_TLBFLUSH_H */
31