aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/aarch64/cpu/cpu_helpers.S11
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/aarch64/cpu/cpu_helpers.S b/arch/aarch64/cpu/cpu_helpers.S
index 009f08acfd..c05262312e 100644
--- a/arch/aarch64/cpu/cpu_helpers.S
+++ b/arch/aarch64/cpu/cpu_helpers.S
@@ -46,12 +46,19 @@ cpu_reset_handler: ; .type cpu_reset_handler, %function
lsr x0, x0, #MIDR_PN_SHIFT
and x0, x0, #MIDR_PN_MASK
cmp x0, #MIDR_PN_A57
- b.eq smp_setup_begin
+ b.eq a57_setup_begin
cmp x0, #MIDR_PN_A53
- b.ne smp_setup_end
+ b.eq smp_setup_begin
+ b smp_setup_end
+
+a57_setup_begin:
+ mov x0, #0x082
+ msr s3_1_c11_c0_2, x0
+
smp_setup_begin:
bl read_cpuectlr
orr x0, x0, #CPUECTLR_SMP_BIT
bl write_cpuectlr
+
smp_setup_end:
ret x19