Skip to content
Snippets Groups Projects
Commit 3ee655ed authored by Alexander Graf's avatar Alexander Graf
Browse files

arm: Add PSCI shutdown function


Using PSCI you can not only reset the system, you can also shut it down!
This patch exposes a function to do exactly that to whatever code wants
to make use of it.

Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
parent 51bfb5b6
Branches
Tags
No related merge requests found
...@@ -97,3 +97,18 @@ void __noreturn psci_system_reset(void) ...@@ -97,3 +97,18 @@ void __noreturn psci_system_reset(void)
while (1) while (1)
; ;
} }
void __noreturn psci_system_off(void)
{
struct pt_regs regs;
regs.regs[0] = ARM_PSCI_0_2_FN_SYSTEM_OFF;
if (use_smc_for_psci)
smc_call(&regs);
else
hvc_call(&regs);
while (1)
;
}
...@@ -116,6 +116,7 @@ void flush_l3_cache(void); ...@@ -116,6 +116,7 @@ void flush_l3_cache(void);
void smc_call(struct pt_regs *args); void smc_call(struct pt_regs *args);
void __noreturn psci_system_reset(void); void __noreturn psci_system_reset(void);
void __noreturn psci_system_off(void);
#endif /* __ASSEMBLY__ */ #endif /* __ASSEMBLY__ */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment