aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/arm64/Kconfig
diff options
context:
space:
mode:
authorZhenyu Ye <yezhenyu2@huawei.com>2020-07-15 15:19:44 +0800
committerCatalin Marinas <catalin.marinas@arm.com>2020-07-15 16:01:01 +0100
commit7c78f67e9bd97478d56157c2ad53823668b5b822 (patch)
treee846da84e4dbda4de151f72a9a3fc1f6c3723259 /arch/arm64/Kconfig
parentarm64: tlb: Detect the ARMv8.4 TLBI RANGE feature (diff)
downloadwireguard-linux-7c78f67e9bd97478d56157c2ad53823668b5b822.tar.xz
wireguard-linux-7c78f67e9bd97478d56157c2ad53823668b5b822.zip
arm64: enable tlbi range instructions
TLBI RANGE feature instoduces new assembly instructions and only support by binutils >= 2.30. Add necessary Kconfig logic to allow this to be enabled and pass '-march=armv8.4-a' to KBUILD_CFLAGS. Signed-off-by: Zhenyu Ye <yezhenyu2@huawei.com> Link: https://lore.kernel.org/r/20200715071945.897-3-yezhenyu2@huawei.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/Kconfig')
-rw-r--r--arch/arm64/Kconfig14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 66dc41fd49f2..0f39468dbc60 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1596,6 +1596,20 @@ config ARM64_AMU_EXTN
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"