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