Merge tag 'kvmarm-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm...
[linux-2.6-microblaze.git] / arch / arm64 / Kconfig
index 1273999..6d23283 100644 (file)
@@ -118,6 +118,7 @@ config ARM64
        select GENERIC_STRNLEN_USER
        select GENERIC_TIME_VSYSCALL
        select GENERIC_GETTIMEOFDAY
        select GENERIC_STRNLEN_USER
        select GENERIC_TIME_VSYSCALL
        select GENERIC_GETTIMEOFDAY
+       select GENERIC_VDSO_TIME_NS
        select HANDLE_DOMAIN_IRQ
        select HARDIRQS_SW_RESEND
        select HAVE_PCI
        select HANDLE_DOMAIN_IRQ
        select HARDIRQS_SW_RESEND
        select HAVE_PCI
@@ -148,7 +149,6 @@ config ARM64
        select HAVE_CMPXCHG_DOUBLE
        select HAVE_CMPXCHG_LOCAL
        select HAVE_CONTEXT_TRACKING
        select HAVE_CMPXCHG_DOUBLE
        select HAVE_CMPXCHG_LOCAL
        select HAVE_CONTEXT_TRACKING
-       select HAVE_COPY_THREAD_TLS
        select HAVE_DEBUG_BUGVERBOSE
        select HAVE_DEBUG_KMEMLEAK
        select HAVE_DMA_CONTIGUOUS
        select HAVE_DEBUG_BUGVERBOSE
        select HAVE_DEBUG_KMEMLEAK
        select HAVE_DMA_CONTIGUOUS
@@ -1311,6 +1311,8 @@ config SWP_EMULATION
          ARMv8 obsoletes the use of A32 SWP/SWPB instructions such that
          they are always undefined. Say Y here to enable software
          emulation of these instructions for userspace using LDXR/STXR.
          ARMv8 obsoletes the use of A32 SWP/SWPB instructions such that
          they are always undefined. Say Y here to enable software
          emulation of these instructions for userspace using LDXR/STXR.
+         This feature can be controlled at runtime with the abi.swp
+         sysctl which is disabled by default.
 
          In some older versions of glibc [<=2.8] SWP is used during futex
          trylock() operations with the assumption that the code will not
 
          In some older versions of glibc [<=2.8] SWP is used during futex
          trylock() operations with the assumption that the code will not
@@ -1337,7 +1339,8 @@ config CP15_BARRIER_EMULATION
          Say Y here to enable software emulation of these
          instructions for AArch32 userspace code. When this option is
          enabled, CP15 barrier usage is traced which can help
          Say Y here to enable software emulation of these
          instructions for AArch32 userspace code. When this option is
          enabled, CP15 barrier usage is traced which can help
-         identify software that needs updating.
+         identify software that needs updating. This feature can be
+         controlled at runtime with the abi.cp15_barrier sysctl.
 
          If unsure, say Y
 
 
          If unsure, say Y
 
@@ -1348,7 +1351,8 @@ config SETEND_EMULATION
          AArch32 EL0, and is deprecated in ARMv8.
 
          Say Y here to enable software emulation of the instruction
          AArch32 EL0, and is deprecated in ARMv8.
 
          Say Y here to enable software emulation of the instruction
-         for AArch32 userspace code.
+         for AArch32 userspace code. This feature can be controlled
+         at runtime with the abi.setend sysctl.
 
          Note: All the cpus on the system must have mixed endian support at EL0
          for this feature to be enabled. If a new CPU - which doesn't support mixed
 
          Note: All the cpus on the system must have mixed endian support at EL0
          for this feature to be enabled. If a new CPU - which doesn't support mixed
@@ -1578,6 +1582,20 @@ config ARM64_AMU_EXTN
          correctly reflect reality. Most commonly, the value read will be 0,
          indicating that the counter is not enabled.
 
          correctly reflect reality. Most commonly, the value read will be 0,
          indicating that the counter is not enabled.
 
+config AS_HAS_ARMV8_4
+       def_bool $(cc-option,-Wa$(comma)-march=armv8.4-a)
+
+config ARM64_TLB_RANGE
+       bool "Enable support for tlbi range feature"
+       default y
+       depends on AS_HAS_ARMV8_4
+       help
+         ARMv8.4-TLBI provides TLBI invalidation instruction that apply to a
+         range of input addresses.
+
+         The feature introduces new assembly instructions, and they were
+         support when binutils >= 2.30.
+
 endmenu
 
 menu "ARMv8.5 architectural features"
 endmenu
 
 menu "ARMv8.5 architectural features"