aboutsummaryrefslogtreecommitdiffstats
path: root/arch/riscv/include/asm/hwcap.h
diff options
context:
space:
mode:
authorPalmer Dabbelt <palmer@rivosinc.com>2022-08-11 14:41:52 -0700
committerPalmer Dabbelt <palmer@rivosinc.com>2022-08-11 14:41:52 -0700
commit7ab52f75a9cf7fed7ba85802b986825dd72df641 (patch)
tree7925addedc2d883212d80f000d16a683c0984681 /arch/riscv/include/asm/hwcap.h
parent3dbe5829408bc1586f75b4667ef60e5aab0209c7 (diff)
parent9f7a8ff6391fd5363363b8e5c8b1462a07922368 (diff)
downloadlinux-7ab52f75a9cf7fed7ba85802b986825dd72df641.tar.gz
RISC-V: Add Sstc extension support
This series implements Sstc extension support which was ratified recently. Before the Sstc extension, an SBI call is necessary to generate timer interrupts as only M-mode have access to the timecompare registers. Thus, there is significant latency to generate timer interrupts at kernel. For virtualized enviornments, its even worse as the KVM handles the SBI call and uses a software timer to emulate the timecomapre register. Sstc extension solves both these problems by defining a stimecmp/vstimecmp at supervisor (host/guest) level. It allows kernel to program a timer and recieve interrupt without supervisor execution enviornment (M-mode/HS mode) intervention. * palmer/riscv-sstc: RISC-V: Prefer sstc extension if available RISC-V: Enable sstc extension parsing from DT RISC-V: Add SSTC extension CSR details
Diffstat (limited to 'arch/riscv/include/asm/hwcap.h')
-rw-r--r--arch/riscv/include/asm/hwcap.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/riscv/include/asm/hwcap.h b/arch/riscv/include/asm/hwcap.h
index 3c8a5ca95c72..6f59ec64175e 100644
--- a/arch/riscv/include/asm/hwcap.h
+++ b/arch/riscv/include/asm/hwcap.h
@@ -57,6 +57,7 @@ enum riscv_isa_ext_id {
RISCV_ISA_EXT_SVPBMT,
RISCV_ISA_EXT_ZICBOM,
RISCV_ISA_EXT_ZIHINTPAUSE,
+ RISCV_ISA_EXT_SSTC,
RISCV_ISA_EXT_ID_MAX = RISCV_ISA_EXT_MAX,
};