ARMv3 support was removed in 357c9c1f07 "ARM: Remove support for ARMv3 ARM610 and ARM710 CPUs", which explicitly left parts of the CPU32v3 support in place for building RiscPC. However, this does not actually build in my test setup.
This is probably not the right solution, but maybe someone has a better idea for how to deal with this. Without this patch, building rpc_defconfig results in: arch/arm/lib/io-readsw-armv4.S: Assembler messages: arch/arm/lib/io-readsw-armv4.S:23: Error: selected processor does not support ARM mode `ldrh ip,[r0]' arch/arm/lib/io-readsw-armv4.S:25: Error: selected processor does not support ARM mode `strh ip,[r1],#2' arch/arm/lib/io-readsw-armv4.S:38: Error: selected processor does not support ARM mode `ldrh r3,[r0]' make[2]: *** [arch/arm/lib/io-readsw-armv4.o] Error 1 make[1]: *** [arch/arm/lib] Error 2 Signed-off-by: Arnd Bergmann <a...@arndb.de> Cc: Russell King <rmk+ker...@arm.linux.org.uk> --- arch/arm/Kconfig | 2 +- arch/arm/Makefile | 1 - arch/arm/mm/Kconfig | 12 ++---------- 3 files changed, 3 insertions(+), 12 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index e91c7cd..1e435185 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -2259,7 +2259,7 @@ config FPE_NWFPE_XP config FPE_FASTFPE bool "FastFPE math emulation (EXPERIMENTAL)" - depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL + depends on (!AEABI || OABI_COMPAT) && EXPERIMENTAL ---help--- Say Y here to include the FAST floating point emulator in the kernel. This is an experimental much faster emulator which now also has full diff --git a/arch/arm/Makefile b/arch/arm/Makefile index b4c2296..2c53344 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -70,7 +70,6 @@ endif arch-$(CONFIG_CPU_32v5) :=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4t) arch-$(CONFIG_CPU_32v4T) :=-D__LINUX_ARM_ARCH__=4 -march=armv4t arch-$(CONFIG_CPU_32v4) :=-D__LINUX_ARM_ARCH__=4 -march=armv4 -arch-$(CONFIG_CPU_32v3) :=-D__LINUX_ARM_ARCH__=3 -march=armv3 # This selects how we optimise for the processor. tune-$(CONFIG_CPU_ARM7TDMI) :=-mtune=arm7tdmi diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig index 101b968..28773e6 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig @@ -265,8 +265,7 @@ config CPU_ARM1026 # SA110 config CPU_SA110 bool "Support StrongARM(R) SA-110 processor" if ARCH_RPC - select CPU_32v3 if ARCH_RPC - select CPU_32v4 if !ARCH_RPC + select CPU_32v4 select CPU_ABRT_EV4 select CPU_PABRT_LEGACY select CPU_CACHE_V4WB @@ -395,12 +394,6 @@ config CPU_V7 # Figure out what processor architecture version we should be using. # This defines the compiler instruction set which depends on the machine type. -config CPU_32v3 - bool - select TLS_REG_EMUL if SMP || !MMU - select NEEDS_SYSCALL_FOR_CMPXCHG if SMP - select CPU_USE_DOMAINS if MMU - config CPU_32v4 bool select TLS_REG_EMUL if SMP || !MMU @@ -587,8 +580,7 @@ comment "Processor Features" config ARM_LPAE bool "Support for the Large Physical Address Extension" - depends on MMU && CPU_32v7 && !CPU_32v6 && !CPU_32v5 && \ - !CPU_32v4 && !CPU_32v3 + depends on MMU && CPU_32v7 && !CPU_32v6 && !CPU_32v5 && !CPU_32v4 help Say Y if you have an ARMv7 processor supporting the LPAE page table format and you would like to access memory beyond the -- 1.7.10 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/