summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCyan Yang <cyan.yang@sifive.com>2025-04-18 13:32:37 +0800
committerPalmer Dabbelt <palmer@rivosinc.com>2025-05-08 11:01:44 -0700
commit34e9b16b4b888988730ffab9a9039cfcf305942e (patch)
treefb7d88b88125c18adc81a0c217c41d6e12107965
parentd5ca02b25f5dbe44a25afe35cd75d49f1f0b9763 (diff)
riscv: Add SiFive xsfvfwmaccqqq vendor extension
Add SiFive vendor extension "xsfvfwmaccqqq" support to the kernel. Signed-off-by: Cyan Yang <cyan.yang@sifive.com> Link: https://lore.kernel.org/r/20250418053239.4351-11-cyan.yang@sifive.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
-rw-r--r--arch/riscv/include/asm/vendor_extensions/sifive.h1
-rw-r--r--arch/riscv/kernel/vendor_extensions/sifive.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/arch/riscv/include/asm/vendor_extensions/sifive.h b/arch/riscv/include/asm/vendor_extensions/sifive.h
index 2d05e3e73170..ac00e500361c 100644
--- a/arch/riscv/include/asm/vendor_extensions/sifive.h
+++ b/arch/riscv/include/asm/vendor_extensions/sifive.h
@@ -9,6 +9,7 @@
#define RISCV_ISA_VENDOR_EXT_XSFVQMACCDOD 0
#define RISCV_ISA_VENDOR_EXT_XSFVQMACCQOQ 1
#define RISCV_ISA_VENDOR_EXT_XSFVFNRCLIPXFQF 2
+#define RISCV_ISA_VENDOR_EXT_XSFVFWMACCQQQ 3
extern struct riscv_isa_vendor_ext_data_list riscv_isa_vendor_ext_list_sifive;
diff --git a/arch/riscv/kernel/vendor_extensions/sifive.c b/arch/riscv/kernel/vendor_extensions/sifive.c
index 077315e5b2d7..1411337dc1e6 100644
--- a/arch/riscv/kernel/vendor_extensions/sifive.c
+++ b/arch/riscv/kernel/vendor_extensions/sifive.c
@@ -10,6 +10,7 @@
/* All SiFive vendor extensions supported in Linux */
const struct riscv_isa_ext_data riscv_isa_vendor_ext_sifive[] = {
__RISCV_ISA_EXT_DATA(xsfvfnrclipxfqf, RISCV_ISA_VENDOR_EXT_XSFVFNRCLIPXFQF),
+ __RISCV_ISA_EXT_DATA(xsfvfwmaccqqq, RISCV_ISA_VENDOR_EXT_XSFVFWMACCQQQ),
__RISCV_ISA_EXT_DATA(xsfvqmaccdod, RISCV_ISA_VENDOR_EXT_XSFVQMACCDOD),
__RISCV_ISA_EXT_DATA(xsfvqmaccqoq, RISCV_ISA_VENDOR_EXT_XSFVQMACCQOQ),
};