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