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>.

Signed-off-by: Tony Lindgren <(address hidden)>
Reviewed-by: Nicolas Pitre <(address hidden)>

Change-Id: Ida9e9db3a5502e21d704ecf1b7ee4e68934ec1bb
HACK stay compatible with the emulated TLS register HACK

psyke83: wrap hack into CONFIG_TLS_USERSPACE_EMUL option

Signed-off-by: Pankaj <pankaj.bharadiya@ti.com>

Change-Id: I24c45b5e0390fe2c56c2f810ca380b32a389a7d9
Update defconfigs for new TLS/recovery

Change-Id: Id47bf4a8c0fab3980e68c62943cf0b9f179bc4ab