diff --git a/arch/aarch64/cpu/cpu_helpers.S b/arch/aarch64/cpu/cpu_helpers.S
index 009f08acfd7f803b9487ae22231237c4c68955a8..c05262312e0cac9a2a7f71d5b117e02a85afc742 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