diff options
author | Will Deacon <will.deacon@arm.com> | 2011-11-23 07:03:27 -0500 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2011-12-06 09:04:15 -0500 |
commit | 72662e01088394577be4a3f14da94cf87bea2591 (patch) | |
tree | 3626efb94b048cefa3f62aa0174c29949626d783 /arch/arm/kernel/head.S | |
parent | 2c8951ab0c337cb198236df07ad55f9dd4892c26 (diff) |
ARM: head.S: only include __turn_mmu_on in the initial identity mapping
__create_page_tables identity maps the region of memory from
__enable_mmu to the end of __turn_mmu_on.
In preparation for including __turn_mmu_on in the .idmap.text section,
this patch modifies the identity mapping so that it only includes the
__turn_mmu_on code.
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/kernel/head.S')
-rw-r--r-- | arch/arm/kernel/head.S | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S index 566c54c2a1fe..43e3aa3b0573 100644 --- a/arch/arm/kernel/head.S +++ b/arch/arm/kernel/head.S | |||
@@ -170,11 +170,11 @@ __create_page_tables: | |||
170 | * Create identity mapping to cater for __enable_mmu. | 170 | * Create identity mapping to cater for __enable_mmu. |
171 | * This identity mapping will be removed by paging_init(). | 171 | * This identity mapping will be removed by paging_init(). |
172 | */ | 172 | */ |
173 | adr r0, __enable_mmu_loc | 173 | adr r0, __turn_mmu_on_loc |
174 | ldmia r0, {r3, r5, r6} | 174 | ldmia r0, {r3, r5, r6} |
175 | sub r0, r0, r3 @ virt->phys offset | 175 | sub r0, r0, r3 @ virt->phys offset |
176 | add r5, r5, r0 @ phys __enable_mmu | 176 | add r5, r5, r0 @ phys __turn_mmu_on |
177 | add r6, r6, r0 @ phys __enable_mmu_end | 177 | add r6, r6, r0 @ phys __turn_mmu_on_end |
178 | mov r5, r5, lsr #SECTION_SHIFT | 178 | mov r5, r5, lsr #SECTION_SHIFT |
179 | mov r6, r6, lsr #SECTION_SHIFT | 179 | mov r6, r6, lsr #SECTION_SHIFT |
180 | 180 | ||
@@ -287,10 +287,10 @@ __create_page_tables: | |||
287 | ENDPROC(__create_page_tables) | 287 | ENDPROC(__create_page_tables) |
288 | .ltorg | 288 | .ltorg |
289 | .align | 289 | .align |
290 | __enable_mmu_loc: | 290 | __turn_mmu_on_loc: |
291 | .long . | 291 | .long . |
292 | .long __enable_mmu | 292 | .long __turn_mmu_on |
293 | .long __enable_mmu_end | 293 | .long __turn_mmu_on_end |
294 | 294 | ||
295 | #if defined(CONFIG_SMP) | 295 | #if defined(CONFIG_SMP) |
296 | __CPUINIT | 296 | __CPUINIT |
@@ -405,7 +405,7 @@ __turn_mmu_on: | |||
405 | mov r3, r3 | 405 | mov r3, r3 |
406 | mov r3, r13 | 406 | mov r3, r13 |
407 | mov pc, r3 | 407 | mov pc, r3 |
408 | __enable_mmu_end: | 408 | __turn_mmu_on_end: |
409 | ENDPROC(__turn_mmu_on) | 409 | ENDPROC(__turn_mmu_on) |
410 | 410 | ||
411 | 411 | ||