diff options
author | macro.wave.z@gmail.com <macro.wave.z@gmail.com> | 2016-12-08 03:58:25 (GMT) |
---|---|---|
committer | York Sun <york.sun@nxp.com> | 2016-12-15 19:57:51 (GMT) |
commit | 9a561753ce48def18dbc4aa278c685c93ed0a77d (patch) | |
tree | c8cae792414c13a82a40be1d7ad9d42cec433bd8 /arch/arm/include | |
parent | 14bf25d50d934e95ffd7fc1276f9ab1e6c67bfbb (diff) | |
download | u-boot-9a561753ce48def18dbc4aa278c685c93ed0a77d.tar.xz |
ARMv8: Setup PSCI memory and device tree
Newly add ARMv8 PSCI needs to be initialized, be copied or reserved in right
place, this patch does all the setup steps.
Signed-off-by: Hongbo Zhang <hongbo.zhang@nxp.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: York Sun <york.sun@nxp.com>
Diffstat (limited to 'arch/arm/include')
-rw-r--r-- | arch/arm/include/asm/secure.h | 2 | ||||
-rw-r--r-- | arch/arm/include/asm/system.h | 11 |
2 files changed, 12 insertions, 1 deletions
diff --git a/arch/arm/include/asm/secure.h b/arch/arm/include/asm/secure.h index 5a403bc..d23044a 100644 --- a/arch/arm/include/asm/secure.h +++ b/arch/arm/include/asm/secure.h @@ -6,7 +6,7 @@ #define __secure __attribute__ ((section ("._secure.text"))) #define __secure_data __attribute__ ((section ("._secure.data"))) -#ifdef CONFIG_ARMV7_SECURE_BASE +#if defined(CONFIG_ARMV7_SECURE_BASE) || defined(CONFIG_ARMV8_SECURE_BASE) /* * Warning, horror ahead. * diff --git a/arch/arm/include/asm/system.h b/arch/arm/include/asm/system.h index 01efc43..dc4c991 100644 --- a/arch/arm/include/asm/system.h +++ b/arch/arm/include/asm/system.h @@ -237,6 +237,17 @@ void smc_call(struct pt_regs *args); void __noreturn psci_system_reset(void); void __noreturn psci_system_off(void); +#ifdef CONFIG_ARMV8_PSCI +extern char __secure_start[]; +extern char __secure_end[]; +extern char __secure_stack_start[]; +extern char __secure_stack_end[]; + +void armv8_setup_psci(void); +void psci_setup_vectors(void); +void psci_arch_init(void); +#endif + #endif /* __ASSEMBLY__ */ #else /* CONFIG_ARM64 */ |