diff options
Diffstat (limited to 'lume-legacy/include/kernel/sbi.h')
| -rw-r--r-- | lume-legacy/include/kernel/sbi.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lume-legacy/include/kernel/sbi.h b/lume-legacy/include/kernel/sbi.h new file mode 100644 index 0000000..a6be5b3 --- /dev/null +++ b/lume-legacy/include/kernel/sbi.h @@ -0,0 +1,29 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* + * Copyright (C) 2026 Richard QIn + */ + +#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 |
