[RFC V2 05/10] arm64/mm: Add CONFIG_ARM64_PA_BITS_52_[LPA|LPA2]

Catalin Marinas catalin.marinas at arm.com
Thu Aug 5 10:25:50 PDT 2021


On Mon, Jul 26, 2021 at 12:07:20PM +0530, Anshuman Khandual wrote:
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b5b13a9..1999ac6 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -934,6 +934,12 @@ config ARM64_VA_BITS
>  	default 48 if ARM64_VA_BITS_48
>  	default 52 if ARM64_VA_BITS_52
>  
> +config ARM64_PA_BITS_52_LPA
> +	bool
> +
> +config ARM64_PA_BITS_52_LPA2
> +	bool
> +
>  choice
>  	prompt "Physical address space size"
>  	default ARM64_PA_BITS_48
> @@ -948,6 +954,7 @@ config ARM64_PA_BITS_52
>  	bool "52-bit (ARMv8.2)"
>  	depends on ARM64_64K_PAGES
>  	depends on ARM64_PAN || !ARM64_SW_TTBR0_PAN
> +	select ARM64_PA_BITS_52_LPA if ARM64_64K_PAGES
>  	help
>  	  Enable support for a 52-bit physical address space, introduced as
>  	  part of the ARMv8.2-LPA extension.

Do we actually need to bother with LPA, LPA2 options? We could just add
an extra defined(ARM64_64K_PAGES) in places, it may be easier to follow
in a few years time when we won't remember what LPA or LPA2 was. I
haven't got to the rest of the patches but it may just be simpler to
define the shifts separately for 52-bit based on 4K/16K/64K and ignore
the LPA/LPA2 distinction altogether (we'll still keep it for CPUID
checking though).

-- 
Catalin



More information about the linux-arm-kernel mailing list