ARM: 6207/1: Replace CONFIG_HAS_TLS_REG with HWCAP_TLS and check for it on V6
authorTony Lindgren <tony@atomide.com>
Mon, 5 Jul 2010 13:53:10 +0000 (14:53 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 9 Jul 2010 13:41:35 +0000 (14:41 +0100)
commitf159f4ed55bb0fa5470800641e03a13a7e0eae6e
treec2ed54b103c2a1c58fa4b50740fec462ccfeec74
parentc1b2d9704c77ddaec46d5d681e1360ac40268743
ARM: 6207/1: Replace CONFIG_HAS_TLS_REG with HWCAP_TLS and check for it on V6

The TLS register is only available on ARM1136 r1p0 and later.
Set HWCAP_TLS flags if hardware TLS is available and test for
it if CONFIG_CPU_32v6K is not set for V6.

Note that we set the TLS instruction in __kuser_get_tls
dynamically as suggested by Jamie Lokier <jamie@shareable.org>.

Also the __switch_to code is optimized out in most cases as
suggested by Nicolas Pitre <nico@fluxnic.net>.

Reviewed-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/hwcap.h
arch/arm/include/asm/tls.h [new file with mode: 0644]
arch/arm/kernel/entry-armv.S
arch/arm/kernel/setup.c
arch/arm/kernel/traps.c
arch/arm/mm/Kconfig
arch/arm/mm/proc-v6.S
arch/arm/mm/proc-v7.S