summaryrefslogtreecommitdiff
path: root/utils/hwstub/stub/stmp/crt0.S
diff options
context:
space:
mode:
Diffstat (limited to 'utils/hwstub/stub/stmp/crt0.S')
-rw-r--r--utils/hwstub/stub/stmp/crt0.S5
1 files changed, 1 insertions, 4 deletions
diff --git a/utils/hwstub/stub/stmp/crt0.S b/utils/hwstub/stub/stmp/crt0.S
index 8b2197823e..f4a0c28360 100644
--- a/utils/hwstub/stub/stmp/crt0.S
+++ b/utils/hwstub/stub/stmp/crt0.S
@@ -5,15 +5,12 @@
5start: 5start:
6 sub r7, pc, #8 /* Copy running address */ 6 sub r7, pc, #8 /* Copy running address */
7 msr cpsr_c, #0xd3 /* enter supervisor mode, disable IRQ/FIQ */ 7 msr cpsr_c, #0xd3 /* enter supervisor mode, disable IRQ/FIQ */
8#ifdef CONFIG_STMP
9 /* Disable MMU, disable caching and buffering; 8 /* Disable MMU, disable caching and buffering;
10 * use low exception range address */ 9 * use low exception range address */
11 mrc p15, 0, r0, c1, c0, 0 10 mrc p15, 0, r0, c1, c0, 0
12 ldr r1, =0x3005 11 ldr r1, =0x3005
13 bic r0, r1 12 bic r0, r1
14 mcr p15, 0, r0, c1, c0, 0 13 mcr p15, 0, r0, c1, c0, 0
15#endif
16 ldr sp, =oc_stackend
17 /* Relocate to right address */ 14 /* Relocate to right address */
18 mov r2, r7 15 mov r2, r7
19 ldr r3, =_copystart 16 ldr r3, =_copystart
@@ -23,7 +20,6 @@ start:
23 ldrhi r5, [r2], #4 20 ldrhi r5, [r2], #4
24 strhi r5, [r3], #4 21 strhi r5, [r3], #4
25 bhi 1b 22 bhi 1b
26
27 mov r2, #0 23 mov r2, #0
28 mcr p15, 0, r2, c7, c5, 0 @ Invalidate ICache 24 mcr p15, 0, r2, c7, c5, 0 @ Invalidate ICache
29 /* Jump to real location */ 25 /* Jump to real location */
@@ -38,4 +34,5 @@ remap:
38 strhi r4, [r2], #4 34 strhi r4, [r2], #4
39 bhi 1b 35 bhi 1b
40 /* jump to C code */ 36 /* jump to C code */
37 ldr sp, =oc_stackend
41 b main 38 b main