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
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);
23static inline void flush_tlb_pgtables(struct mm_struct *mm,
24				      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