[PATCH v2] RISC-V: Schedule SBI-0.1 for removal
Palmer Dabbelt
palmer at rivosinc.com
Tue Sep 17 06:53:08 PDT 2024
We've said we're going to deprecate SBI-0.1 for a while now, but I
didn't find that written down anywhere. So mark SBI-0.1 as deprecated
and print a timeline for that deprecation on systems that probe it.
Signed-off-by: Palmer Dabbelt <palmer at rivosinc.com>
---
arch/riscv/Kconfig | 17 +++++++++++++----
arch/riscv/kernel/sbi.c | 1 +
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index f00d474e13d0..fad197d5e122 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -838,12 +838,21 @@ menu "Kernel features"
source "kernel/Kconfig.hz"
-config RISCV_SBI_V01
- bool "SBI v0.1 support"
+config RISCV_SBI_V01_DEPRECATED
+ bool "SBI v0.1 support (DEPRECATED)"
depends on RISCV_SBI
help
- This config allows kernel to use SBI v0.1 APIs. This will be
- deprecated in future once legacy M-mode software are no longer in use.
+ This config allows kernel to use SBI v0.1 APIs.
+
+ SBI v0.1 support has been deprecated and will be removed after the
+ 2025 LTS.
+
+ If unsure what to do here, say N.
+
+config RISCV_SBI_V01
+ bool
+ default y
+ depends on RISCV_SBI_V01_DEPRECATED
config RISCV_BOOT_SPINWAIT
bool "Spinwait booting method"
diff --git a/arch/riscv/kernel/sbi.c b/arch/riscv/kernel/sbi.c
index 837bdab2601b..1209a4e53ed1 100644
--- a/arch/riscv/kernel/sbi.c
+++ b/arch/riscv/kernel/sbi.c
@@ -686,6 +686,7 @@ void __init sbi_init(void)
sbi_debug_console_available = true;
}
} else {
+ pr_warn("SBI-0.1 is deprecated and scheduled for removal after the 2025 LTS");
__sbi_set_timer = __sbi_set_timer_v01;
__sbi_send_ipi = __sbi_send_ipi_v01;
__sbi_rfence = __sbi_rfence_v01;
--
2.45.2
More information about the linux-riscv
mailing list