summaryrefslogtreecommitdiffstats
path: root/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
diff options
context:
space:
mode:
authorPrabhakar Kushwaha <prabhakar@freescale.com>2015-11-05 12:00:14 +0530
committerYork Sun <yorksun@freescale.com>2015-11-30 09:11:12 -0800
commitb4017364630fbc526bbf5e917d8fae6013805488 (patch)
treeea2df6ef79c7526db3f91e1cfb06803b3e96aebd /arch/arm/cpu/armv8/fsl-layerscape/cpu.c
parent5380335e66e7d731bd417f0fe6fcee68750b0245 (diff)
downloadblackbird-obmc-uboot-b4017364630fbc526bbf5e917d8fae6013805488.tar.gz
blackbird-obmc-uboot-b4017364630fbc526bbf5e917d8fae6013805488.zip
armv8: ls2085a: Add workaround of errata A009635
If the core runs at higher than x3 speed of the platform, there is possiblity about sev instruction to getting missed by other cores. This is because of SoC Run Control block may not able to sample the EVENTI(Sev) signals. Configure Run Control and EPU to periodically send out EVENTI signals to wake up A57 cores. Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com> Reviewed-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'arch/arm/cpu/armv8/fsl-layerscape/cpu.c')
-rw-r--r--arch/arm/cpu/armv8/fsl-layerscape/cpu.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
index 571ee7b70d..8847fc0287 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
@@ -484,7 +484,13 @@ int arch_early_init_r(void)
{
#ifdef CONFIG_MP
int rv = 1;
+#endif
+
+#ifdef CONFIG_SYS_FSL_ERRATUM_A009635
+ erratum_a009635();
+#endif
+#ifdef CONFIG_MP
rv = fsl_layerscape_wake_seconday_cores();
if (rv)
printf("Did not wake secondary cores\n");
OpenPOWER on IntegriCloud