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 #endif 10 unsigned int vmalloc_seq; 11 } mm_context_t; 12 13 #ifdef CONFIG_CPU_HAS_ASID 14 #define ASID_BITS 8 15 #define ASID_MASK ((~0ULL) << ASID_BITS) 16 #define ASID(mm) ((mm)->context.id.counter & ~ASID_MASK) 17 #else 18 #define ASID(mm) (0) 19 #endif 20 21 #else 22 23 /* 24 * From nommu.h: 25 * Copyright (C) 2002, David McCullough <davidm@snapgear.com> 26 * modified for 2.6 by Hyok S. Choi <hyok.choi@samsung.com> 27 */ 28 typedef struct { 29 unsigned long end_brk; 30 } mm_context_t; 31 32 #endif 33 34 #endif 35