arm64: add kconfig symbol to configure physical address size
ARMv8.2 introduces support for 52-bit physical addresses. To prepare for supporting this, add a new kconfig symbol to configure the physical address space size. The symbols will be used in subsequent patches. Currently the only choice is 48, a later patch will add the option of 52 once the required code is in place. Tested-by: Suzuki K Poulose <suzuki.poulose@arm.com> Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com> Tested-by: Bob Picco <bob.picco@oracle.com> Reviewed-by: Bob Picco <bob.picco@oracle.com> Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Kristina Martsenko <kristina.martsenko@arm.com> [catalin.marinas@arm.com: folded minor patches into this one] Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
50c4c4e268
commit
982aa7c5f0
@ -646,6 +646,22 @@ config ARM64_VA_BITS
|
|||||||
default 47 if ARM64_VA_BITS_47
|
default 47 if ARM64_VA_BITS_47
|
||||||
default 48 if ARM64_VA_BITS_48
|
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"
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
|
config ARM64_PA_BITS
|
||||||
|
int
|
||||||
|
default 48 if ARM64_PA_BITS_48
|
||||||
|
|
||||||
config CPU_BIG_ENDIAN
|
config CPU_BIG_ENDIAN
|
||||||
bool "Build big-endian kernel"
|
bool "Build big-endian kernel"
|
||||||
help
|
help
|
||||||
|
@ -196,7 +196,7 @@
|
|||||||
/*
|
/*
|
||||||
* Highest possible physical address supported.
|
* Highest possible physical address supported.
|
||||||
*/
|
*/
|
||||||
#define PHYS_MASK_SHIFT (48)
|
#define PHYS_MASK_SHIFT (CONFIG_ARM64_PA_BITS)
|
||||||
#define PHYS_MASK ((UL(1) << PHYS_MASK_SHIFT) - 1)
|
#define PHYS_MASK ((UL(1) << PHYS_MASK_SHIFT) - 1)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
#define __ASM_SPARSEMEM_H
|
#define __ASM_SPARSEMEM_H
|
||||||
|
|
||||||
#ifdef CONFIG_SPARSEMEM
|
#ifdef CONFIG_SPARSEMEM
|
||||||
#define MAX_PHYSMEM_BITS 48
|
#define MAX_PHYSMEM_BITS CONFIG_ARM64_PA_BITS
|
||||||
#define SECTION_SIZE_BITS 30
|
#define SECTION_SIZE_BITS 30
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user