[PATCH v6 0/4] riscv: enable SBI system reset
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Sun Sep 12 21:11:43 CEST 2021
With SBI v0.3 a system reset extension is available. This allows to
implement reboot and poweroff in U-Boot in a system independent way.
* Provide missing constants
* Provide a system reset driver using the system reset extension.
v6:
* enable SYSRESET_SBI for qemu-riscvXX_spl_defconfig
v5:
* add a configuration actually using the driver
* don't add __efi_runtime in arch/riscv/lib/sbi.c
* use '=' not ':' in array initialization with enum indices
* enable SYSRESET_SBI for qemu-riscvXX_smode_defconfig
v4:
* remove the UEFI SystemReset() implementation
* simplify the code using an array to translate reset types
* remove a superfluos check to determine if the device was probed
v3:
add SBI_HSM_HART_STATUS_SUSPENDED,
SBI_HSM_HART_STATUS_SUSPEND_PENDING,
SBI_HSM_HART_STATUS_RESUME_PENDING
v2:
correct constants that were blindly copied from Linux
Heinrich Schuchardt (4):
riscv: add missing SBI extension definitions
cmd/sbi: use constants instead of numerical values
sysreset: provide SBI based sysreset driver
configs: enable SYSRESET_SBI on qemu-riscvXX_smode_defconfig
MAINTAINERS | 1 +
arch/riscv/cpu/cpu.c | 13 ++++++-
arch/riscv/include/asm/sbi.h | 40 ++++++++++++++++++++--
arch/riscv/lib/sbi.c | 12 +++++++
cmd/riscv/sbi.c | 30 ++++++++--------
configs/qemu-riscv32_smode_defconfig | 1 +
configs/qemu-riscv32_spl_defconfig | 1 +
configs/qemu-riscv64_smode_defconfig | 1 +
configs/qemu-riscv64_spl_defconfig | 1 +
drivers/sysreset/Kconfig | 12 +++++++
drivers/sysreset/Makefile | 1 +
drivers/sysreset/sysreset_sbi.c | 51 ++++++++++++++++++++++++++++
12 files changed, 146 insertions(+), 18 deletions(-)
create mode 100644 drivers/sysreset/sysreset_sbi.c
--
2.32.0
More information about the U-Boot
mailing list