[PATCH] ARM: 2680/1: refine TLS reg availability some more again

Patch from Nicolas Pitre

Not all ARMv6 processors implement the TLS register.

Signed-off-by: Nicolas Pitre
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

authored by

Nicolas Pitre and committed by
Russell King
70489c88 d7def6c2

+10 -11
+10 -11
arch/arm/mm/Kconfig
··· 412 413 config TLS_REG_EMUL 414 bool 415 - default y if (SMP || CPU_32v6) && (CPU_32v5 || CPU_32v4 || CPU_32v3) 416 help 417 - We might be running on an ARMv6+ processor which should have the TLS 418 - register but for some reason we can't use it, or maybe an SMP system 419 - using a pre-ARMv6 processor (there are apparently a few prototypes 420 - like that in existence) and therefore access to that register must 421 - be emulated. 422 423 config HAS_TLS_REG 424 bool 425 - depends on CPU_32v6 426 - default y if !TLS_REG_EMUL 427 help 428 This selects support for the CP15 thread register. 429 - It is defined to be available on ARMv6 or later. If a particular 430 - ARMv6 or later CPU doesn't support it then it must include "select 431 - TLS_REG_EMUL" along with its other characteristics. 432
··· 412 413 config TLS_REG_EMUL 414 bool 415 + default y if SMP && (CPU_32v5 || CPU_32v4 || CPU_32v3) 416 help 417 + An SMP system using a pre-ARMv6 processor (there are apparently 418 + a few prototypes like that in existence) and therefore access to 419 + that required register must be emulated. 420 421 config HAS_TLS_REG 422 bool 423 + depends on !TLS_REG_EMUL 424 + default y if SMP || CPU_32v7 425 help 426 This selects support for the CP15 thread register. 427 + It is defined to be available on some ARMv6 processors (including 428 + all SMP capable ARMv6's) or later processors. User space may 429 + assume directly accessing that register and always obtain the 430 + expected value only on ARMv7 and above. 431