diff mbox series

[1/1] cmd/sbi: display new extensions

Message ID 20230412083816.19809-1-heinrich.schuchardt@canonical.com
State Accepted
Commit 7906155ed35ea584c3f8461d297426277d2d4416
Delegated to: Andes
Headers show
Series [1/1] cmd/sbi: display new extensions | expand

Commit Message

Heinrich Schuchardt April 12, 2023, 8:38 a.m. UTC
OpenSBI already implements some extensions that are not ratified yet:

* Debug Console Extension (DBCN)
* System Suspend Extension (SUSP)
* Collaborative Processor Performance Control Extension (CPPC)

Allow the sbi command to display these.

Provide the FID definitions of the Debug Console Extension. We can use that
extension for an early debug console driver.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
---
 arch/riscv/include/asm/sbi.h | 9 +++++++++
 cmd/riscv/sbi.c              | 3 +++
 2 files changed, 12 insertions(+)

Comments

Leo Liang April 28, 2023, 6:12 a.m. UTC | #1
On Wed, Apr 12, 2023 at 10:38:16AM +0200, Heinrich Schuchardt wrote:
> OpenSBI already implements some extensions that are not ratified yet:
> 
> * Debug Console Extension (DBCN)
> * System Suspend Extension (SUSP)
> * Collaborative Processor Performance Control Extension (CPPC)
> 
> Allow the sbi command to display these.
> 
> Provide the FID definitions of the Debug Console Extension. We can use that
> extension for an early debug console driver.
> 
> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
> ---
>  arch/riscv/include/asm/sbi.h | 9 +++++++++
>  cmd/riscv/sbi.c              | 3 +++
>  2 files changed, 12 insertions(+)

Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
diff mbox series

Patch

diff --git a/arch/riscv/include/asm/sbi.h b/arch/riscv/include/asm/sbi.h
index 81fcfe0b36..769369997d 100644
--- a/arch/riscv/include/asm/sbi.h
+++ b/arch/riscv/include/asm/sbi.h
@@ -28,6 +28,9 @@  enum sbi_ext_id {
 	SBI_EXT_HSM = 0x48534D,
 	SBI_EXT_SRST = 0x53525354,
 	SBI_EXT_PMU = 0x504D55,
+	SBI_EXT_DBCN = 0x4442434E,
+	SBI_EXT_SUSP = 0x53555350,
+	SBI_EXT_CPPC = 0x43505043,
 };
 
 enum sbi_ext_base_fid {
@@ -89,6 +92,12 @@  enum sbi_srst_reset_reason {
 	SBI_SRST_RESET_REASON_SYS_FAILURE,
 };
 
+enum sbi_ext_dbcn_fid {
+	SBI_EXT_DBCN_CONSOLE_WRITE = 0,
+	SBI_EXT_DBCN_CONSOLE_READ,
+	SBI_EXT_DBCN_CONSOLE_WRITE_BYTE,
+};
+
 #ifdef CONFIG_SBI_V01
 #define SBI_EXT_SET_TIMER		SBI_EXT_0_1_SET_TIMER
 #define SBI_FID_SET_TIMER		0
diff --git a/cmd/riscv/sbi.c b/cmd/riscv/sbi.c
index 6f2cad4e7e..c4707fe520 100644
--- a/cmd/riscv/sbi.c
+++ b/cmd/riscv/sbi.c
@@ -46,6 +46,9 @@  static struct sbi_ext extensions[] = {
 	{ SBI_EXT_HSM,			      "Hart State Management Extension" },
 	{ SBI_EXT_SRST,			      "System Reset Extension" },
 	{ SBI_EXT_PMU,			      "Performance Monitoring Unit Extension" },
+	{ SBI_EXT_DBCN,			      "Debug Console Extension" },
+	{ SBI_EXT_SUSP,			      "System Suspend Extension" },
+	{ SBI_EXT_CPPC,			      "Collaborative Processor Performance Control Extension" },
 };
 
 static int do_sbi(struct cmd_tbl *cmdtp, int flag, int argc,