[ARM] 3761/1: fix armv4t breakage after adding thumb interworking to userspace helpers

Patch from Lennert Buytenhek

On armv4t systems, we have always compiled the kernel with -march=armv4
instead of -march=armv4t, which means that any use of bx will bomb out.

Commit ba9b5d76372dc290b6ca04dad93927a22c2ac49a introduced the use of
bx in the kernel, which means we need to compile with -march=armv4t on
armv4t systems now.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

authored by Lennert Buytenhek and committed by Russell King 260e98ed 863dab45

+11 -5
+2 -1
arch/arm/Makefile
··· 47 47 # testing for a specific architecture or later rather impossible. 48 48 arch-$(CONFIG_CPU_32v6) :=-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6,-march=armv5t -Wa$(comma)-march=armv6) 49 49 arch-$(CONFIG_CPU_32v6K) :=-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6k,-march=armv5t -Wa$(comma)-march=armv6k) 50 - arch-$(CONFIG_CPU_32v5) :=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4) 50 + arch-$(CONFIG_CPU_32v5) :=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4t) 51 + arch-$(CONFIG_CPU_32v4T) :=-D__LINUX_ARM_ARCH__=4 -march=armv4t 51 52 arch-$(CONFIG_CPU_32v4) :=-D__LINUX_ARM_ARCH__=4 -march=armv4 52 53 arch-$(CONFIG_CPU_32v3) :=-D__LINUX_ARM_ARCH__=3 -march=armv3 53 54
+9 -4
arch/arm/mm/Kconfig
··· 46 46 config CPU_ARM720T 47 47 bool "Support ARM720T processor" if !ARCH_CLPS711X && !ARCH_L7200 && !ARCH_CDB89712 && ARCH_INTEGRATOR 48 48 default y if ARCH_CLPS711X || ARCH_L7200 || ARCH_CDB89712 || ARCH_H720X 49 - select CPU_32v4 49 + select CPU_32v4T 50 50 select CPU_ABRT_LV4T 51 51 select CPU_CACHE_V4 52 52 select CPU_CACHE_VIVT ··· 64 64 bool "Support ARM920T processor" 65 65 depends on ARCH_EP93XX || ARCH_INTEGRATOR || CPU_S3C2410 || CPU_S3C2440 || CPU_S3C2442 || ARCH_IMX || ARCH_AAEC2000 || ARCH_AT91RM9200 66 66 default y if CPU_S3C2410 || CPU_S3C2440 || CPU_S3C2442 || ARCH_AT91RM9200 67 - select CPU_32v4 67 + select CPU_32v4T 68 68 select CPU_ABRT_EV4T 69 69 select CPU_CACHE_V4WT 70 70 select CPU_CACHE_VIVT ··· 85 85 bool "Support ARM922T processor" if ARCH_INTEGRATOR 86 86 depends on ARCH_LH7A40X || ARCH_INTEGRATOR 87 87 default y if ARCH_LH7A40X 88 - select CPU_32v4 88 + select CPU_32v4T 89 89 select CPU_ABRT_EV4T 90 90 select CPU_CACHE_V4WT 91 91 select CPU_CACHE_VIVT ··· 104 104 bool "Support ARM925T processor" if ARCH_OMAP1 105 105 depends on ARCH_OMAP15XX 106 106 default y if ARCH_OMAP15XX 107 - select CPU_32v4 107 + select CPU_32v4T 108 108 select CPU_ABRT_EV4T 109 109 select CPU_CACHE_V4WT 110 110 select CPU_CACHE_VIVT ··· 281 281 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP 282 282 283 283 config CPU_32v4 284 + bool 285 + select TLS_REG_EMUL if SMP || !MMU 286 + select NEEDS_SYSCALL_FOR_CMPXCHG if SMP 287 + 288 + config CPU_32v4T 284 289 bool 285 290 select TLS_REG_EMUL if SMP || !MMU 286 291 select NEEDS_SYSCALL_FOR_CMPXCHG if SMP