aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/head.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/kernel/head.S')
-rw-r--r--arch/arm/kernel/head.S18
1 files changed, 9 insertions, 9 deletions
diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S
index 5365d4e5949e..ebc3e74a7947 100644
--- a/arch/arm/kernel/head.S
+++ b/arch/arm/kernel/head.S
@@ -234,18 +234,18 @@ __create_page_tables:
234 234
235 /* 235 /*
236 * Now setup the pagetables for our kernel direct 236 * Now setup the pagetables for our kernel direct
237 * mapped region. We round TEXTADDR down to the 237 * mapped region.
238 * nearest megabyte boundary. It is assumed that
239 * the kernel fits within 4 contigous 1MB sections.
240 */ 238 */
241 add r0, r4, #(TEXTADDR & 0xff000000) >> 18 @ start of kernel 239 add r0, r4, #(TEXTADDR & 0xff000000) >> 18 @ start of kernel
242 str r3, [r0, #(TEXTADDR & 0x00f00000) >> 18]! 240 str r3, [r0, #(TEXTADDR & 0x00f00000) >> 18]!
243 add r3, r3, #1 << 20 241
244 str r3, [r0, #4]! @ KERNEL + 1MB 242 ldr r6, =(_end - PAGE_OFFSET - 1) @ r6 = number of sections
245 add r3, r3, #1 << 20 243 mov r6, r6, lsr #20 @ needed for kernel minus 1
246 str r3, [r0, #4]! @ KERNEL + 2MB 244
247 add r3, r3, #1 << 20 2451: add r3, r3, #1 << 20
248 str r3, [r0, #4] @ KERNEL + 3MB 246 str r3, [r0, #4]!
247 subs r6, r6, #1
248 bgt 1b
249 249
250 /* 250 /*
251 * Then map first 1MB of ram in case it contains our boot params. 251 * Then map first 1MB of ram in case it contains our boot params.