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