@@ -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"
@@ -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;
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@rivosinc.com> --- arch/riscv/Kconfig | 17 +++++++++++++---- arch/riscv/kernel/sbi.c | 1 + 2 files changed, 14 insertions(+), 4 deletions(-)