diff options
Diffstat (limited to 'firmware/target/arm/s3c2440/crt0.S')
-rw-r--r-- | firmware/target/arm/s3c2440/crt0.S | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/firmware/target/arm/s3c2440/crt0.S b/firmware/target/arm/s3c2440/crt0.S index 7f1ebf8dec..efdb3f7248 100644 --- a/firmware/target/arm/s3c2440/crt0.S +++ b/firmware/target/arm/s3c2440/crt0.S | |||
@@ -97,7 +97,7 @@ start: | |||
97 | 97 | ||
98 | /* Calculate the length of the code needed to run/copy */ | 98 | /* Calculate the length of the code needed to run/copy */ |
99 | ldr r1, = _vectorstart | 99 | ldr r1, = _vectorstart |
100 | ldr r2, = _iramend | 100 | ldr r2, = _initdata_end |
101 | sub r2, r2, r1 | 101 | sub r2, r2, r1 |
102 | 102 | ||
103 | add r3, r2, #0x30000000 | 103 | add r3, r2, #0x30000000 |
@@ -364,7 +364,7 @@ start: | |||
364 | 364 | ||
365 | /* Copy code to 0x30000000 */ | 365 | /* Copy code to 0x30000000 */ |
366 | ldr r2, = _vectorstart | 366 | ldr r2, = _vectorstart |
367 | ldr r3, = _iramend | 367 | ldr r3, = _initdata_end |
368 | 368 | ||
369 | sub r2, r3, r2 /* length of loader */ | 369 | sub r2, r3, r2 /* length of loader */ |
370 | 370 | ||
@@ -408,22 +408,6 @@ donecopy: | |||
408 | 408 | ||
409 | bl enable_mmu | 409 | bl enable_mmu |
410 | 410 | ||
411 | /* Zero out IBSS */ | ||
412 | ldr r2, =_iedata | ||
413 | ldr r3, =_iend | ||
414 | mov r4, #0 | ||
415 | ibsszero: | ||
416 | cmp r3, r2 | ||
417 | strhi r4, [r2], #4 | ||
418 | bhi ibsszero | ||
419 | |||
420 | /* Copy the IRAM */ | ||
421 | ldr r0, =_iramcopy | ||
422 | ldr r1, =_iramstart | ||
423 | ldr r2, =_iramend | ||
424 | sub r2, r2, r1 | ||
425 | bl word_copy | ||
426 | |||
427 | /* Initialise bss section to zero */ | 411 | /* Initialise bss section to zero */ |
428 | ldr r2, =_edata | 412 | ldr r2, =_edata |
429 | ldr r3, =_end | 413 | ldr r3, =_end |