diff options
author | Catalin Marinas | 2017-12-22 18:40:58 +0100 |
---|---|---|
committer | Catalin Marinas | 2017-12-22 18:40:58 +0100 |
commit | 1f911c3a1140e1668e68791fb6dd07757e2f3956 (patch) | |
tree | 5ff4161bd109c2b54e538fae78877c7626e56af5 /arch/arm64/Kconfig | |
parent | Merge branch 'kpti' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux (diff) | |
parent | arm64: enable 52-bit physical address support (diff) | |
download | kernel-qcow2-linux-1f911c3a1140e1668e68791fb6dd07757e2f3956.tar.gz kernel-qcow2-linux-1f911c3a1140e1668e68791fb6dd07757e2f3956.tar.xz kernel-qcow2-linux-1f911c3a1140e1668e68791fb6dd07757e2f3956.zip |
Merge branch 'for-next/52-bit-pa' into for-next/core
* for-next/52-bit-pa:
arm64: enable 52-bit physical address support
arm64: allow ID map to be extended to 52 bits
arm64: handle 52-bit physical addresses in page table entries
arm64: don't open code page table entry creation
arm64: head.S: handle 52-bit PAs in PTEs in early page table setup
arm64: handle 52-bit addresses in TTBR
arm64: limit PA size to supported range
arm64: add kconfig symbol to configure physical address size
Diffstat (limited to 'arch/arm64/Kconfig')
-rw-r--r-- | arch/arm64/Kconfig | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 3af1657fcac3..9b1330806f39 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -639,6 +639,35 @@ config ARM64_VA_BITS default 47 if ARM64_VA_BITS_47 default 48 if ARM64_VA_BITS_48 +choice + prompt "Physical address space size" + default ARM64_PA_BITS_48 + help + Choose the maximum physical address range that the kernel will + support. + +config ARM64_PA_BITS_48 + bool "48-bit" + +config ARM64_PA_BITS_52 + bool "52-bit (ARMv8.2)" + depends on ARM64_64K_PAGES + depends on ARM64_PAN || !ARM64_SW_TTBR0_PAN + help + Enable support for a 52-bit physical address space, introduced as + part of the ARMv8.2-LPA extension. + + With this enabled, the kernel will also continue to work on CPUs that + do not support ARMv8.2-LPA, but with some added memory overhead (and + minor performance overhead). + +endchoice + +config ARM64_PA_BITS + int + default 48 if ARM64_PA_BITS_48 + default 52 if ARM64_PA_BITS_52 + config CPU_BIG_ENDIAN bool "Build big-endian kernel" help |