Merge remote-tracking branches 'asoc/fix/rt5677', 'asoc/fix/samsung' and 'asoc/fix...
[firefly-linux-kernel-4.4.55.git] / arch / arm / include / asm / mmu.h
1 #ifndef __ARM_MMU_H
2 #define __ARM_MMU_H
3
4 #ifdef CONFIG_MMU
5
6 typedef struct {
7 #ifdef CONFIG_CPU_HAS_ASID
8         atomic64_t      id;
9 #else
10         int             switch_pending;
11 #endif
12         unsigned int    vmalloc_seq;
13         unsigned long   sigpage;
14 #ifdef CONFIG_VDSO
15         unsigned long   vdso;
16 #endif
17 } mm_context_t;
18
19 #ifdef CONFIG_CPU_HAS_ASID
20 #define ASID_BITS       8
21 #define ASID_MASK       ((~0ULL) << ASID_BITS)
22 #define ASID(mm)        ((unsigned int)((mm)->context.id.counter & ~ASID_MASK))
23 #else
24 #define ASID(mm)        (0)
25 #endif
26
27 #else
28
29 /*
30  * From nommu.h:
31  *  Copyright (C) 2002, David McCullough <davidm@snapgear.com>
32  *  modified for 2.6 by Hyok S. Choi <hyok.choi@samsung.com>
33  */
34 typedef struct {
35         unsigned long   end_brk;
36 } mm_context_t;
37
38 #endif
39
40 #endif