[v4,08/28] arm64/sve: Kconfig update and conditional compilation support

Message ID 1509101470-7881-9-git-send-email-Dave.Martin@arm.com
State New
Headers show
  • ARM Scalable Vector Extension (SVE)
Related show

Commit Message

Dave P Martin Oct. 27, 2017, 10:50 a.m.
This patch adds CONFIG_ARM64_SVE to control building of SVE support
into the kernel, and adds a stub predicate system_supports_sve() to
control conditional compilation and runtime SVE support.

system_supports_sve() just returns false for now: it will be
replaced with a non-trivial implementation in a later patch, once
SVE support is complete enough to be enabled safely.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
 arch/arm64/Kconfig                  | 11 +++++++++++
 arch/arm64/include/asm/cpufeature.h |  5 +++++
 2 files changed, 16 insertions(+)


diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 5cfb79d..1046074 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -976,6 +976,17 @@  config ARM64_PMEM
+config ARM64_SVE
+	bool "ARM Scalable Vector Extension support"
+	default y
+	help
+	  The Scalable Vector Extension (SVE) is an extension to the AArch64
+	  execution state which complements and extends the SIMD functionality
+	  of the base architecture to support much larger vectors and to enable
+	  additional vectorisation opportunities.
+	  To enable use of this extension on CPUs that implement it, say Y.
diff --git a/arch/arm64/include/asm/cpufeature.h b/arch/arm64/include/asm/cpufeature.h
index 428ee1f..4ea3441 100644
--- a/arch/arm64/include/asm/cpufeature.h
+++ b/arch/arm64/include/asm/cpufeature.h
@@ -262,6 +262,11 @@  static inline bool system_uses_ttbr0_pan(void)
+static inline bool system_supports_sve(void)
+	return false;
 #endif /* __ASSEMBLY__ */