diff options
author | Will Deacon <will.deacon@arm.com> | 2011-11-15 14:25:04 +0100 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2011-12-06 15:04:14 +0100 |
commit | 1a4baafa7d203da1cceb302c2df38f0fea1c17a1 (patch) | |
tree | f64d1b22be6f3255ccb73470a9799890972bd670 /arch/arm/mm/proc-arm946.S | |
parent | ARM: suspend: use idmap_pgd instead of suspend_pgd (diff) | |
download | linux-1a4baafa7d203da1cceb302c2df38f0fea1c17a1.tar.xz linux-1a4baafa7d203da1cceb302c2df38f0fea1c17a1.zip |
ARM: proc-*.S: place cpu_reset functions into .idmap.text section
The CPU reset functions disable the MMU and therefore must be executed
with an identity mapping in place.
This patch places the CPU reset functions into the .idmap.text section,
causing the idmap code to include them as part of the identity mapping.
Acked-by: Dave Martin <dave.martin@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/mm/proc-arm946.S')
-rw-r--r-- | arch/arm/mm/proc-arm946.S | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mm/proc-arm946.S b/arch/arm/mm/proc-arm946.S index 683af3a182b7..f684cfedcca9 100644 --- a/arch/arm/mm/proc-arm946.S +++ b/arch/arm/mm/proc-arm946.S @@ -55,6 +55,7 @@ ENTRY(cpu_arm946_proc_fin) * Params : r0 = address to jump to * Notes : This sets up everything for a reset */ + .pushsection .idmap.text, "ax" ENTRY(cpu_arm946_reset) mov ip, #0 mcr p15, 0, ip, c7, c5, 0 @ flush I cache @@ -65,6 +66,8 @@ ENTRY(cpu_arm946_reset) bic ip, ip, #0x00001000 @ i-cache mcr p15, 0, ip, c1, c0, 0 @ ctrl register mov pc, r0 +ENDPROC(cpu_arm946_reset) + .popsection /* * cpu_arm946_do_idle() |