GNU Linux-libre 4.9.282-gnu1
[releases.git] / arch / arc / include / uapi / asm / page.h
1 /*
2  * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  */
8
9 #ifndef _UAPI__ASM_ARC_PAGE_H
10 #define _UAPI__ASM_ARC_PAGE_H
11
12 #include <linux/const.h>
13
14 /* PAGE_SHIFT determines the page size */
15 #if defined(CONFIG_ARC_PAGE_SIZE_16K)
16 #define PAGE_SHIFT 14
17 #elif defined(CONFIG_ARC_PAGE_SIZE_4K)
18 #define PAGE_SHIFT 12
19 #else
20 /*
21  * Default 8k
22  * done this way (instead of under CONFIG_ARC_PAGE_SIZE_8K) because adhoc
23  * user code (busybox appletlib.h) expects PAGE_SHIFT to be defined w/o
24  * using the correct uClibc header and in their build our autoconf.h is
25  * not available
26  */
27 #define PAGE_SHIFT 13
28 #endif
29
30 #define PAGE_SIZE       _BITUL(PAGE_SHIFT)      /* Default 8K */
31 #define PAGE_OFFSET     _AC(0x80000000, UL)     /* Kernel starts at 2G onwrds */
32
33 #define PAGE_MASK       (~(PAGE_SIZE-1))
34
35
36 #endif /* _UAPI__ASM_ARC_PAGE_H */