Skip to content

SBI

System Reset Extension

System Reset Extension 提供函数允许 supervisor software 请求系统级 reboot 或者 shutdown.

System reset

c
struct sbiret sbi_system_reset(uint32_t reset_type, uint32_t reset_reasion)

重置系统基于 reset_typereset_reason。这是一个异步的调用,如果成功的话将不会返回。

reset_type 参数是 32 位宽:

ValueDescription
0x00000000Shutdown
0x00000001Cold reboot
0x00000002Warm reboot
0x00000003 - 0xEFFFFFFFReserved for future use
0xF0000000 - 0xFFFFFFFFVendor or platform specific reset type
> 0xFFFFFFFFReserved

reset_reason 是一个可选的参数表示系统重置的原因。参数 32 bit 宽:

VaueDescription
0x00000000No reason
0x00000001System failure
0x00000002 - 0xDFFFFFFFReserved for future use
0xE0000000 - 0xEFFFFFFFSBI implementation specific reset reason
0xF0000000 - 0xFFFFFFFFVendor or platform specifiv reset reason
> 0xFFFFFFFFReserved

记录原理、连接知识、积累实践。