Commit 70489c88 authored by Nicolas Pitre's avatar Nicolas Pitre Committed by Russell King

[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: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent d7def6c2
...@@ -412,21 +412,20 @@ config CPU_BPREDICT_DISABLE ...@@ -412,21 +412,20 @@ config CPU_BPREDICT_DISABLE
config TLS_REG_EMUL config TLS_REG_EMUL
bool bool
default y if (SMP || CPU_32v6) && (CPU_32v5 || CPU_32v4 || CPU_32v3) default y if SMP && (CPU_32v5 || CPU_32v4 || CPU_32v3)
help help
We might be running on an ARMv6+ processor which should have the TLS An SMP system using a pre-ARMv6 processor (there are apparently
register but for some reason we can't use it, or maybe an SMP system a few prototypes like that in existence) and therefore access to
using a pre-ARMv6 processor (there are apparently a few prototypes that required register must be emulated.
like that in existence) and therefore access to that register must
be emulated.
config HAS_TLS_REG config HAS_TLS_REG
bool bool
depends on CPU_32v6 depends on !TLS_REG_EMUL
default y if !TLS_REG_EMUL default y if SMP || CPU_32v7
help help
This selects support for the CP15 thread register. This selects support for the CP15 thread register.
It is defined to be available on ARMv6 or later. If a particular It is defined to be available on some ARMv6 processors (including
ARMv6 or later CPU doesn't support it then it must include "select all SMP capable ARMv6's) or later processors. User space may
TLS_REG_EMUL" along with its other characteristics. assume directly accessing that register and always obtain the
expected value only on ARMv7 and above.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment