diff mbox series

[v2] RISC-V: Schedule SBI-0.1 for removal

Message ID 20240917135308.24997-1-palmer@rivosinc.com (mailing list archive)
State New
Headers show
Series [v2] RISC-V: Schedule SBI-0.1 for removal | expand

Checks

Context Check Description
conchuod/vmtest-for-next-PR fail PR summary
conchuod/patch-1-test-1 success .github/scripts/patches/tests/build_rv32_defconfig.sh took 129.26s
conchuod/patch-1-test-2 fail .github/scripts/patches/tests/build_rv64_clang_allmodconfig.sh took 1318.70s
conchuod/patch-1-test-3 fail .github/scripts/patches/tests/build_rv64_gcc_allmodconfig.sh took 1569.56s
conchuod/patch-1-test-4 success .github/scripts/patches/tests/build_rv64_nommu_k210_defconfig.sh took 19.99s
conchuod/patch-1-test-5 success .github/scripts/patches/tests/build_rv64_nommu_virt_defconfig.sh took 22.15s
conchuod/patch-1-test-6 warning .github/scripts/patches/tests/checkpatch.sh took 0.68s
conchuod/patch-1-test-7 success .github/scripts/patches/tests/dtb_warn_rv64.sh took 43.51s
conchuod/patch-1-test-8 success .github/scripts/patches/tests/header_inline.sh took 0.00s
conchuod/patch-1-test-9 success .github/scripts/patches/tests/kdoc.sh took 0.54s
conchuod/patch-1-test-10 success .github/scripts/patches/tests/module_param.sh took 0.01s
conchuod/patch-1-test-11 success .github/scripts/patches/tests/verify_fixes.sh took 0.00s
conchuod/patch-1-test-12 success .github/scripts/patches/tests/verify_signedoff.sh took 0.03s

Commit Message

Palmer Dabbelt Sept. 17, 2024, 1:53 p.m. UTC
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(-)

Comments

Andrew Jones Sept. 17, 2024, 3:03 p.m. UTC | #1
On Tue, Sep 17, 2024 at 06:53:08AM GMT, Palmer Dabbelt wrote:
> 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(-)
> 
> 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

I think this could be simplified to

  def_bool 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");

I don't think pr_warn appends a newline.

>  		__sbi_set_timer = __sbi_set_timer_v01;
>  		__sbi_send_ipi	= __sbi_send_ipi_v01;
>  		__sbi_rfence	= __sbi_rfence_v01;
> -- 
> 2.45.2
>

Otherwise,

Reviewed-by: Andrew Jones <ajones@ventanamicro.com>

Thanks,
drew
Atish Kumar Patra Sept. 25, 2024, 12:04 a.m. UTC | #2
On 9/17/24 8:03 AM, Andrew Jones wrote:
> On Tue, Sep 17, 2024 at 06:53:08AM GMT, Palmer Dabbelt wrote:
>> 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(-)
>>
>> 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
> 
> I think this could be simplified to
> 
>    def_bool 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");
> 
> I don't think pr_warn appends a newline.
> 
>>   		__sbi_set_timer = __sbi_set_timer_v01;
>>   		__sbi_send_ipi	= __sbi_send_ipi_v01;
>>   		__sbi_rfence	= __sbi_rfence_v01;
>> -- 
>> 2.45.2
>>
> 

With Drew's comment addressed:

Reviewed-by: Atish Patra <atishp@rivosinc.com>


> Otherwise,
> 
> Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
> 
> Thanks,
> drew
> 
> _______________________________________________
> linux-riscv mailing list
> linux-riscv@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-riscv
diff mbox series

Patch

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;