From: Lorenzo Pieralisi Date: Mon, 18 Nov 2013 18:56:42 +0000 (+0000) Subject: arm64: kernel: add code to set cpu boot mode to secondary_entry shim X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=85cc00eaa81dfa0f5bf8076c48f3ee2c2c4a77ba;p=openwrt%2Fstaging%2Fblogic.git arm64: kernel: add code to set cpu boot mode to secondary_entry shim The refactoring of el2_setup split code setting up EL2 and detecting the CPU boot mode in separate chunks. This allows the code that sets up EL2 to run in an endian independent way - ie before the endianess is set up in the respective sctlr registers. This patch brings secondary_entry up-to-date so that CPUs entering the kernel through this code path set-up EL2 and the cpu boot mode properly. Signed-off-by: Lorenzo Pieralisi Acked-by: Mark Rutland Signed-off-by: Catalin Marinas --- diff --git a/arch/arm64/kernel/head.S b/arch/arm64/kernel/head.S index 7009387348b7..c68cca5c3523 100644 --- a/arch/arm64/kernel/head.S +++ b/arch/arm64/kernel/head.S @@ -282,8 +282,9 @@ ENDPROC(secondary_holding_pen) * be used where CPUs are brought online dynamically by the kernel. */ ENTRY(secondary_entry) - bl __calc_phys_offset // x2=phys offset bl el2_setup // Drop to EL1 + bl __calc_phys_offset // x24=PHYS_OFFSET, x28=PHYS_OFFSET-PAGE_OFFSET + bl set_cpu_boot_mode_flag b secondary_startup ENDPROC(secondary_entry)