blob: 6845b06677035dab74c1c87ef0c73fe474705bfe [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001/* SPDX-License-Identifier: GPL-2.0 */
2// Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
3
4#ifndef __ASM_TLBFLUSH_H
5#define __ASM_TLBFLUSH_H
6
7/*
8 * TLB flushing:
9 *
10 * - flush_tlb_all() flushes all processes TLB entries
11 * - flush_tlb_mm(mm) flushes the specified mm context TLB entries
12 * - flush_tlb_page(vma, vmaddr) flushes one page
13 * - flush_tlb_range(vma, start, end) flushes a range of pages
14 * - flush_tlb_kernel_range(start, end) flushes a range of kernel pages
15 */
16extern void flush_tlb_all(void);
17extern void flush_tlb_mm(struct mm_struct *mm);
18extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long page);
19extern void flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
20 unsigned long end);
21extern void flush_tlb_kernel_range(unsigned long start, unsigned long end);
22
23extern void flush_tlb_one(unsigned long vaddr);
24
25#endif