riscv: enter WFI in default_power_off() if SBI does not shutdown
authorChristoph Hellwig <hch@lst.de>
Wed, 30 Oct 2019 23:11:47 +0000 (16:11 -0700)
committerPaul Walmsley <paul.walmsley@sifive.com>
Tue, 5 Nov 2019 17:11:17 +0000 (09:11 -0800)
Provide a new default fallback power off that just sits in a wfi loop
to save some power.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Anup Patel <anup@brainfault.org>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
[paul.walmsley@sifive.com: split the WFI fix apart from the
 nommu-related default_power_off() changes]
Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com>
arch/riscv/kernel/reset.c

index aa56bb1..485be42 100644 (file)
@@ -10,7 +10,8 @@
 static void default_power_off(void)
 {
        sbi_shutdown();
-       while (1);
+       while (1)
+               wait_for_interrupt();
 }
 
 void (*pm_power_off)(void) = default_power_off;