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