Re: [PATCH v2] arm64: Kconfig: add a choice for endianness

From: Will Deacon
Date: Wed Nov 13 2019 - 05:33:42 EST


On Wed, Nov 13, 2019 at 10:26:52AM +0100, Anders Roxell wrote:
> When building allmodconfig KCONFIG_ALLCONFIG=$(pwd)/arch/arm64/configs/defconfig
> CONFIG_CPU_BIG_ENDIAN gets enabled. Which tends not to be what most
> people want. Another concern that has come up is that ACPI isn't built
> for an allmodconfig kernel today since that also depends on !CPU_BIG_ENDIAN.
>
> Rework so that we introduce a 'choice' and default the choice to
> CPU_LITTLE_ENDIAN. That means that when we build an allmodconfig kernel
> it will default to CPU_LITTLE_ENDIAN that most people tends to want.
>
> Reviewed-by: John Garry <john.garry@xxxxxxxxxx>
> Signed-off-by: Anders Roxell <anders.roxell@xxxxxxxxxx>
> ---
> arch/arm64/Kconfig | 18 +++++++++++++++++-
> 1 file changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 64764ca92fca..c599b6b288be 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -877,10 +877,26 @@ config ARM64_PA_BITS
> default 48 if ARM64_PA_BITS_48
> default 52 if ARM64_PA_BITS_52
>
> +choice
> + prompt "Endianness"
> + default CPU_LITTLE_ENDIAN
> + help
> + Select the endianness of data accesses performed by the CPU. Userspace
> + applications will need to be compiled and linked for the endianness
> + that is selected here.
> +
> config CPU_BIG_ENDIAN
> bool "Build big-endian kernel"
> help
> - Say Y if you plan on running a kernel in big-endian mode.
> + Say Y if you plan on running a kernel with a big-endian userspace.
> +
> +config CPU_LITTLE_ENDIAN
> + bool "Build little-endian kernel"
> + help
> + Say Y if you plan on running a kernel with a little-endian userspace.
> + This is usually the case for distributions targetting arm64.

Bah, my typo here: targetting -> targeting

Catalin, could you take this with the above fixed, please?

Acked-by: Will Deacon <will@xxxxxxxxxx>

Will