xref: /openbmc/linux/arch/arc/include/asm/pgtable.h (revision 762f99f4f3cb41a775b5157dd761217beba65873)
1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
25dda4dc5SVineet Gupta /*
35dda4dc5SVineet Gupta  * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
45dda4dc5SVineet Gupta  */
55dda4dc5SVineet Gupta 
65dda4dc5SVineet Gupta #ifndef _ASM_ARC_PGTABLE_H
75dda4dc5SVineet Gupta #define _ASM_ARC_PGTABLE_H
85dda4dc5SVineet Gupta 
9fe6ba88bSMasahiro Yamada #include <linux/bits.h>
10*fe6cb7b0SVineet Gupta 
11*fe6cb7b0SVineet Gupta #include <asm/pgtable-levels.h>
12*fe6cb7b0SVineet Gupta #include <asm/pgtable-bits-arcv2.h>
13868a6530SVineet Gupta #include <asm/page.h>
14288ff7deSVineet Gupta #include <asm/mmu.h>
155dda4dc5SVineet Gupta 
165dda4dc5SVineet Gupta /*
175dda4dc5SVineet Gupta  * Number of entries a user land program use.
185dda4dc5SVineet Gupta  * TASK_SIZE is the maximum vaddr that can be used by a userland program.
195dda4dc5SVineet Gupta  */
205dda4dc5SVineet Gupta #define	USER_PTRS_PER_PGD	(TASK_SIZE / PGDIR_SIZE)
215dda4dc5SVineet Gupta 
225dda4dc5SVineet Gupta #ifndef __ASSEMBLY__
235dda4dc5SVineet Gupta 
245dda4dc5SVineet Gupta extern char empty_zero_page[PAGE_SIZE];
255dda4dc5SVineet Gupta #define ZERO_PAGE(vaddr)	(virt_to_page(empty_zero_page))
265dda4dc5SVineet Gupta 
27*fe6cb7b0SVineet Gupta extern pgd_t swapper_pg_dir[] __aligned(PAGE_SIZE);
285dda4dc5SVineet Gupta 
295bba49f5SVineet Gupta /* to cope with aliasing VIPT cache */
305bba49f5SVineet Gupta #define HAVE_ARCH_UNMAPPED_AREA
315bba49f5SVineet Gupta 
325dda4dc5SVineet Gupta #endif /* __ASSEMBLY__ */
335dda4dc5SVineet Gupta 
345dda4dc5SVineet Gupta #endif
35