From: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
Date: Thu, 22 Nov 2018 10:26:14 +0000 (+0100)
Subject: riscv: add Kconfig entries for the C and A ISA extensions
X-Git-Tag: v2025.01-rc5-pxa1908~3269^2~27
X-Git-Url: http://git.dujemihanovic.xyz/img/static/git-logo.png?a=commitdiff_plain;h=d57ffa650f3d3c928d93706dfd282bb1fdecdd31;p=u-boot.git

riscv: add Kconfig entries for the C and A ISA extensions

Add Kconfig entries for the C (compressed instructions) and A (atomic
instructions) ISA extensions. Only the C ISA extension is selectable.
This matches the configuration in Linux.

The Kconfig entries are not used yet. A follow-up patch will select the
appropriate compiler flags based on the Kconfig configuration.

Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
---

diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index b81e0d990a..0de77a75d7 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -38,6 +38,17 @@ config ARCH_RV64I
 
 endchoice
 
+config RISCV_ISA_C
+	bool "Emit compressed instructions"
+	default y
+	help
+	  Adds "C" to the ISA subsets that the toolchain is allowed to emit
+	  when building U-Boot, which results in compressed instructions in the
+	  U-Boot binary.
+
+config RISCV_ISA_A
+	def_bool y
+
 config 32BIT
 	bool