aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/cpu/armv8/cpu-dt.c
diff options
context:
space:
mode:
authorYuantian Tang <andy.tang@nxp.com>2017-04-19 13:27:39 +0800
committerYork Sun <york.sun@nxp.com>2017-04-24 09:07:12 -0700
commit026f30ec3e846edb85b5df8265d8cad098184be6 (patch)
treedd04857c18d73ef4ed0fc809c72cfe4ab8d2f101 /arch/arm/cpu/armv8/cpu-dt.c
parentd14428c729fb620da73234f5a8862066454de44c (diff)
downloadu-boot-026f30ec3e846edb85b5df8265d8cad098184be6.zip
u-boot-026f30ec3e846edb85b5df8265d8cad098184be6.tar.gz
u-boot-026f30ec3e846edb85b5df8265d8cad098184be6.tar.bz2
arm: psci: make psci usable on single core socs
PSCI can be used on both multiple and single core socs. Current implementation only allows PSCI to work on multiple core socs. This patch removes this restriction so that PSCI can work on single core socs as well. Signed-off-by: Chenhui Zhao <chenhui.zhao@nxp.com> Signed-off-by: Tang Yuantian <andy.tang@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
Diffstat (limited to 'arch/arm/cpu/armv8/cpu-dt.c')
-rw-r--r--arch/arm/cpu/armv8/cpu-dt.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/arch/arm/cpu/armv8/cpu-dt.c b/arch/arm/cpu/armv8/cpu-dt.c
index 5156a15..e3c8aa2 100644
--- a/arch/arm/cpu/armv8/cpu-dt.c
+++ b/arch/arm/cpu/armv8/cpu-dt.c
@@ -7,25 +7,19 @@
#include <common.h>
#include <asm/psci.h>
#include <asm/system.h>
-#ifdef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT
#include <asm/armv8/sec_firmware.h>
-#endif
+#ifdef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT
int psci_update_dt(void *fdt)
{
-#ifdef CONFIG_MP
-#if defined(CONFIG_ARMV8_PSCI) || defined(CONFIG_SEC_FIRMWARE_ARMV8_PSCI)
-
-#ifdef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT
/*
* If the PSCI in SEC Firmware didn't work, avoid to update the
* device node of PSCI. But still return 0 instead of an error
* number to support detecting PSCI dynamically and then switching
* the SMP boot method between PSCI and spin-table.
*/
- if (sec_firmware_support_psci_version() == 0xffffffff)
+ if (sec_firmware_support_psci_version() == PSCI_INVALID_VER)
return 0;
-#endif
fdt_psci(fdt);
#if defined(CONFIG_ARMV8_PSCI) && !defined(CONFIG_ARMV8_SECURE_BASE)
@@ -34,7 +28,6 @@ int psci_update_dt(void *fdt)
__secure_end - __secure_start);
#endif
-#endif
-#endif
return 0;
}
+#endif