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/* PAGE_SHIFT determines the page size */ 13#if defined(CONFIG_ARC_PAGE_SIZE_16K) 14#define PAGE_SHIFT 14 15#elif defined(CONFIG_ARC_PAGE_SIZE_4K) 16#define PAGE_SHIFT 12 17#else 18/* 19 * Default 8k 20 * done this way (instead of under CONFIG_ARC_PAGE_SIZE_8K) because adhoc 21 * user code (busybox appletlib.h) expects PAGE_SHIFT to be defined w/o 22 * using the correct uClibc header and in their build our autoconf.h is 23 * not available 24 */ 25#define PAGE_SHIFT 13 26#endif 27 28#ifdef __ASSEMBLY__ 29#define PAGE_SIZE (1 << PAGE_SHIFT) 30#define PAGE_OFFSET (0x80000000) 31#else 32#define PAGE_SIZE (1UL << PAGE_SHIFT) /* Default 8K */ 33#define PAGE_OFFSET (0x80000000UL) /* Kernel starts at 2G onwards */ 34#endif 35 36#define PAGE_MASK (~(PAGE_SIZE-1)) 37 38 39#endif /* _UAPI__ASM_ARC_PAGE_H */ 40