Linux 4.16-rc2
[linux-2.6-block.git] / arch / metag / include / asm / tlb.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
99ef7c2a
JH
2#ifndef __ASM_METAG_TLB_H
3#define __ASM_METAG_TLB_H
4
5#include <asm/cacheflush.h>
6#include <asm/page.h>
7
8/* Note, read http://lkml.org/lkml/2004/1/15/6 */
9
10#ifdef CONFIG_METAG_META12
11
12#define tlb_start_vma(tlb, vma) \
13 do { \
14 if (!tlb->fullmm) \
15 flush_cache_range(vma, vma->vm_start, vma->vm_end); \
16 } while (0)
17
18#define tlb_end_vma(tlb, vma) \
19 do { \
20 if (!tlb->fullmm) \
21 flush_tlb_range(vma, vma->vm_start, vma->vm_end); \
22 } while (0)
23
24
25#else
26
27#define tlb_start_vma(tlb, vma) do { } while (0)
28#define tlb_end_vma(tlb, vma) do { } while (0)
29
30#endif
31
32#define __tlb_remove_tlb_entry(tlb, pte, addr) do { } while (0)
33#define tlb_flush(tlb) flush_tlb_mm((tlb)->mm)
34
35#include <asm-generic/tlb.h>
36
37#endif