diff options
Diffstat (limited to 'include/kernel/sbi.h')
| -rw-r--r-- | include/kernel/sbi.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/include/kernel/sbi.h b/include/kernel/sbi.h new file mode 100644 index 0000000..ec262ee --- /dev/null +++ b/include/kernel/sbi.h @@ -0,0 +1,24 @@ +#pragma once +#include "common/types.h" + +// SBI Extension IDs +#define SBI_EID_SRST 0x53525354 + +// SBI Function IDs for SRST +#define SBI_FID_SRST_RESET 0 + +// Reset Types +#define SBI_SRST_TYPE_SHUTDOWN 0 +#define SBI_SRST_TYPE_COLD_REBOOT 1 +#define SBI_SRST_TYPE_WARM_REBOOT 2 + +// Reset Reasons +#define SBI_SRST_REASON_NONE 0 +#define SBI_SRST_REASON_SYSTEM_FAILURE 1 + +namespace SBI +{ + void set_timer(uint64 stime_value); + void sbi_shutdown(); + void sbi_reboot(); +} // namespace SBI |
