summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/pgtable.h
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2011-11-22 18:30:29 +0100
committerCatalin Marinas <catalin.marinas@arm.com>2011-12-08 11:30:39 +0100
commitdcfdae04bd92e8a2ea155db0e21e3bddc09e0a89 (patch)
tree815a5d36f6d80465ab33686a03af7be9485bfad1 /arch/arm/include/asm/pgtable.h
parentARM: LPAE: add ISBs around MMU enabling code (diff)
downloadlinux-dcfdae04bd92e8a2ea155db0e21e3bddc09e0a89.tar.xz
linux-dcfdae04bd92e8a2ea155db0e21e3bddc09e0a89.zip
ARM: LPAE: Introduce the 3-level page table format definitions
This patch introduces the pgtable-3level*.h files with definitions specific to the LPAE page table format (3 levels of page tables). Each table is 4KB and has 512 64-bit entries. An entry can point to a 40-bit physical address. The young, write and exec software bits share the corresponding hardware bits (negated). Other software bits use spare bits in the PTE. The patch also changes some variable types from unsigned long or int to pteval_t or pgprot_t. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm/include/asm/pgtable.h')
-rw-r--r--arch/arm/include/asm/pgtable.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/include/asm/pgtable.h b/arch/arm/include/asm/pgtable.h
index 977245b0875f..3ddcf66f5e04 100644
--- a/arch/arm/include/asm/pgtable.h
+++ b/arch/arm/include/asm/pgtable.h
@@ -25,7 +25,11 @@
#include <mach/vmalloc.h>
#include <asm/pgtable-hwdef.h>
+#ifdef CONFIG_ARM_LPAE
+#include <asm/pgtable-3level.h>
+#else
#include <asm/pgtable-2level.h>
+#endif
/*
* Just any arbitrary offset to the start of the vmalloc VM area: the