[PATCH v2 06/19] ARM: mark CPU_ENDIAN_BE8 as deprecated
Arnd Bergmann
arnd at arndb.de
Sat Jul 4 03:33:11 PDT 2026
On Fri, Jul 3, 2026, at 22:29, Linus Walleij wrote:
> Hi Arnd,
>
> thanks for your patch!
>
> On Wed, Jul 1, 2026 at 11:25 PM Arnd Bergmann <arnd at kernel.org> wrote:
>
>> config CPU_BIG_ENDIAN
>> - bool "Build big-endian kernel"
>> + bool "Build big-endian kernel (DEPRECATED)"
>
> I'm not so sure about this patch because it will look like IXP4XX is
> using a deprecated feature. The IXP4xx actually has many OpenWrt
> users.
How about the version below? If you like that better, I'll give
it a thorough build test and use that for v3.
Arnd
diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
index cb46802f5ce5..cdcb42517eff 100644
--- a/arch/arm/mach-ixp4xx/Kconfig
+++ b/arch/arm/mach-ixp4xx/Kconfig
@@ -2,7 +2,6 @@
menuconfig ARCH_IXP4XX
bool "IXP4xx-based platforms"
depends on ARCH_MULTI_V5
- depends on CPU_BIG_ENDIAN
select ARM_APPENDED_DTB # Old Redboot bootloaders deployed
select CPU_XSCALE
select GPIO_IXP4XX
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index ac09b546b14e..a1716db26623 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -796,38 +796,32 @@ choice
config CPU_LITTLE_ENDIAN
bool "Built little-endian kernel"
+ depends on !ARCH_IXP4XX
help
Say Y if you plan on running a kernel in little-endian mode.
This is the default and is used in practically all modern user
space builds.
-config CPU_BIG_ENDIAN
- bool "Build big-endian kernel (DEPRECATED)"
- depends on ARCH_MULTI_V5 || BROKEN
- depends on !LD_IS_LLD
- help
- Say Y if you plan on running a kernel in big-endian mode.
- This works on many machines using ARMv6 or newer processors
- but requires big-endian user space.
-
- The only ARMv5 platform with big-endian support is
- Intel IXP4xx.
-
-endchoice
-
config CPU_ENDIAN_BE8
- bool
- depends on CPU_BIG_ENDIAN
- default CPU_V6 || CPU_V6K || CPU_V7 || CPU_V7M
+ bool "Build big-endian kernel (DEPRECATED)"
+ depends on BROKEN
+ depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
+ select CPU_BIG_ENDIAN
help
Support for the BE-8 (big-endian) mode on ARMv6 and ARMv7 processors.
+ This is deprecated and will likely be removed in the future.
+
config CPU_ENDIAN_BE32
- bool
- depends on CPU_BIG_ENDIAN
- default !CPU_ENDIAN_BE8
+ bool "Build big-endian kernel"
+ depends on ARCH_IXP4XX
+ select CPU_BIG_ENDIAN
help
Support for the BE-32 (big-endian) mode on pre-ARMv6 processors.
+endchoice
+
+config CPU_BIG_ENDIAN
+ bool
config CPU_HIGH_VECTOR
depends on !MMU && CPU_CP15 && !CPU_ARM740T
More information about the linux-arm-kernel
mailing list