Messages in this thread Patch in this message | | | From | Christoph Hellwig <> | Subject | [PATCH 09/17] riscv: improve the default power off implementation | Date | Tue, 11 Jun 2019 00:16:13 +0200 |
| |
Only call the SBI code if we are not running in M mode, and if we didn't do the SBI call, or it didn't succeed call wfi in a loop to at least save some power.
Signed-off-by: Christoph Hellwig <hch@lst.de> --- arch/riscv/kernel/reset.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/arch/riscv/kernel/reset.c b/arch/riscv/kernel/reset.c index cfb6eb1d762d..17c810985ad0 100644 --- a/arch/riscv/kernel/reset.c +++ b/arch/riscv/kernel/reset.c @@ -8,8 +8,11 @@ static void default_power_off(void) { +#ifndef CONFIG_M_MODE sbi_shutdown(); - while (1); +#endif + while (1) + wait_for_interrupt(); } void (*pm_power_off)(void) = default_power_off; -- 2.20.1
| |