diff options
author | Anup Patel <anup.patel@wdc.com> | 2020-11-24 14:20:19 +0530 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2020-12-01 17:11:11 +0530 |
commit | 548d03e577490f74af8b57706655e5d81c9b94a1 (patch) | |
tree | f8854349e7f544d05886c38c18c320d0dafbc0da /lib/sbi/sbi_ecall.c | |
parent | 5c429ae2133e1a82b81403146a3e38e2b4b8350e (diff) |
lib: sbi: Implement System Reset (SRST) SBI extension
The SBI SRST extension has been accepted and merged in the latest
SBI v0.3-draft specification.
(Refer, https://github.com/riscv/riscv-sbi-doc)
It allows to S-mode software to request system shutdown, cold reboot,
and warm reboot.
This patch implements SBI SRST extension as a replacement of the
legacy sbi_shutdown() call of SBI v0.1 specification.
Signed-off-by: Anup Patel <anup.patel@wdc.com>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Diffstat (limited to 'lib/sbi/sbi_ecall.c')
-rw-r--r-- | lib/sbi/sbi_ecall.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/sbi/sbi_ecall.c b/lib/sbi/sbi_ecall.c index 64c9933..6d41cff 100644 --- a/lib/sbi/sbi_ecall.c +++ b/lib/sbi/sbi_ecall.c @@ -169,6 +169,9 @@ int sbi_ecall_init(void) ret = sbi_ecall_register_extension(&ecall_hsm); if (ret) return ret; + ret = sbi_ecall_register_extension(&ecall_srst); + if (ret) + return ret; ret = sbi_ecall_register_extension(&ecall_legacy); if (ret) return ret; |