arm: implement generic PSCI reset call for armv8
Add a psci_system_reset() which calls the SYSTEM_RESET function of PSCI 0.2 and can be used by boards that support it to implement reset_cpu(). Signed-off-by: Beniamino Galvani <b.galvani@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
committed by
Tom Rini
parent
20898ea934
commit
5a07abb370
@@ -18,7 +18,7 @@
|
||||
#ifndef __ARM_PSCI_H__
|
||||
#define __ARM_PSCI_H__
|
||||
|
||||
/* PSCI interface */
|
||||
/* PSCI 0.1 interface */
|
||||
#define ARM_PSCI_FN_BASE 0x95c1ba5e
|
||||
#define ARM_PSCI_FN(n) (ARM_PSCI_FN_BASE + (n))
|
||||
|
||||
@@ -32,6 +32,21 @@
|
||||
#define ARM_PSCI_RET_INVAL (-2)
|
||||
#define ARM_PSCI_RET_DENIED (-3)
|
||||
|
||||
/* PSCI 0.2 interface */
|
||||
#define ARM_PSCI_0_2_FN_BASE 0x84000000
|
||||
#define ARM_PSCI_0_2_FN(n) (ARM_PSCI_0_2_FN_BASE + (n))
|
||||
|
||||
#define ARM_PSCI_0_2_FN_PSCI_VERSION ARM_PSCI_0_2_FN(0)
|
||||
#define ARM_PSCI_0_2_FN_CPU_SUSPEND ARM_PSCI_0_2_FN(1)
|
||||
#define ARM_PSCI_0_2_FN_CPU_OFF ARM_PSCI_0_2_FN(2)
|
||||
#define ARM_PSCI_0_2_FN_CPU_ON ARM_PSCI_0_2_FN(3)
|
||||
#define ARM_PSCI_0_2_FN_AFFINITY_INFO ARM_PSCI_0_2_FN(4)
|
||||
#define ARM_PSCI_0_2_FN_MIGRATE ARM_PSCI_0_2_FN(5)
|
||||
#define ARM_PSCI_0_2_FN_MIGRATE_INFO_TYPE ARM_PSCI_0_2_FN(6)
|
||||
#define ARM_PSCI_0_2_FN_MIGRATE_INFO_UP_CPU ARM_PSCI_0_2_FN(7)
|
||||
#define ARM_PSCI_0_2_FN_SYSTEM_OFF ARM_PSCI_0_2_FN(8)
|
||||
#define ARM_PSCI_0_2_FN_SYSTEM_RESET ARM_PSCI_0_2_FN(9)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
int psci_update_dt(void *fdt);
|
||||
void psci_board_init(void);
|
||||
|
||||
Reference in New Issue
Block a user