riscv: hwprobe: export Ztso ISA extension
authorClément Léger <cleger@rivosinc.com>
Wed, 20 Dec 2023 15:57:18 +0000 (16:57 +0100)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 10 Jan 2024 04:12:26 +0000 (20:12 -0800)
Export the Ztso extension to userspace.

Signed-off-by: Clément Léger <cleger@rivosinc.com>
Link: https://lore.kernel.org/r/20231220155723.684081-3-cleger@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Documentation/arch/riscv/hwprobe.rst
arch/riscv/include/uapi/asm/hwprobe.h
arch/riscv/kernel/sys_riscv.c

index 41463b93226892b5310d5f543f9047f536733a3b..10bd7b170118e8e6df83746ff9fcbab2329f9793 100644 (file)
@@ -161,6 +161,10 @@ The following keys are defined:
        defined in the RISC-V ISA manual starting from commit 056b6ff467c7
        ("Zfa is ratified").
 
+  * :c:macro:`RISCV_HWPROBE_EXT_ZTSO`: The Ztso extension is supported as
+       defined in the RISC-V ISA manual starting from commit 5618fb5a216b
+       ("Ztso is now ratified.")
+
 * :c:macro:`RISCV_HWPROBE_KEY_CPUPERF_0`: A bitmask that contains performance
   information about the selected set of processors.
 
index 91fbe1a7f2e2935f58c2a719e0ca7180b282feee..01ac3dc196e5201f31727a42c01a195c24e9fbb1 100644 (file)
@@ -56,6 +56,7 @@ struct riscv_hwprobe {
 #define                RISCV_HWPROBE_EXT_ZVFH          (1 << 30)
 #define                RISCV_HWPROBE_EXT_ZVFHMIN       (1 << 31)
 #define                RISCV_HWPROBE_EXT_ZFA           (1ULL << 32)
+#define                RISCV_HWPROBE_EXT_ZTSO          (1ULL << 33)
 #define RISCV_HWPROBE_KEY_CPUPERF_0    5
 #define                RISCV_HWPROBE_MISALIGNED_UNKNOWN        (0 << 0)
 #define                RISCV_HWPROBE_MISALIGNED_EMULATED       (1 << 0)
index f0bd7b480b7f252ae115f14c8158272b315ef88d..6564fa9e7a7ff9ce38f93a5f8f7fb8fbc52ffcda 100644 (file)
@@ -174,6 +174,7 @@ static void hwprobe_isa_ext0(struct riscv_hwprobe *pair,
                EXT_KEY(ZKSH);
                EXT_KEY(ZKT);
                EXT_KEY(ZIHINTNTL);
+               EXT_KEY(ZTSO);
 
                if (has_vector()) {
                        EXT_KEY(ZVBB);