ARMv8: Add support for poweroff via PSCI

Add support for calling poweroff in case of psci is wired.
Based on the same solution as is used for reset.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[trini: Move all logic in to fwcall.c as other ARMs implement poweroff
via PMIC]
Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Michal Simek 2017-05-29 09:11:32 +02:00 committed by Tom Rini
parent 18b2916585
commit 3c85417f45
1 changed files with 17 additions and 0 deletions

View File

@ -1,5 +1,6 @@
/** /**
* (C) Copyright 2014, Cavium Inc. * (C) Copyright 2014, Cavium Inc.
* (C) Copyright 2017, Xilinx Inc.
* *
* SPDX-License-Identifier: GPL-2.0+ * SPDX-License-Identifier: GPL-2.0+
**/ **/
@ -114,6 +115,22 @@ void __noreturn __efi_runtime psci_system_off(void)
; ;
} }
#ifdef CONFIG_CMD_POWEROFF
int do_poweroff(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
puts("poweroff ...\n");
udelay(50000); /* wait 50 ms */
disable_interrupts();
psci_system_off();
/*NOTREACHED*/
return 0;
}
#endif
#ifdef CONFIG_PSCI_RESET #ifdef CONFIG_PSCI_RESET
void reset_misc(void) void reset_misc(void)
{ {