.extern CopyBootToRAM\r
\r
-.text\r
-.code 32\r
-.align 0\r
+.section .startup,"ax"\r
+ .code 32\r
+ .align 0\r
\r
-.global start\r
-start:\r
+.global flashstart\r
+flashstart:\r
b Reset\r
b UndefinedInstruction\r
b SoftwareInterrupt\r
b Fiq\r
\r
Reset:\r
- ldr sp, = 0x0020FFF8 @ initialize stack pointer to top of RAM\r
+ ldr sp, .stack_end @ initialize stack pointer to top of RAM\r
bl CopyBootToRAM @ copy bootloader to RAM (in case the\r
@ user re-flashes the bootloader)\r
- ldr r3, = 0x00200000 @ start address of RAM bootloader\r
+ ldr r3, .bootphase2_start @ start address of RAM bootloader\r
bx r3 @ jump to it\r
\r
+ .stack_end:\r
+ .word _stack_end\r
+ .bootphase2_start:\r
+ .word __bootphase2_start__\r
+\r
Fiq:\r
b Fiq\r
UndefinedInstruction:\r