Commit 5d09d5406de6bdae3d1ec50aa2406342bcc1fd02
1 parent
c45a3a03
removed cstartup_pre
Showing
1 changed file
with
0 additions
and
187 deletions
virtual_lab/cstartup_pre.S deleted
100644 → 0
1 | -# 1 "cstartup.S" | |
2 | -# 1 "<built-in>" | |
3 | -# 1 "<command-line>" | |
4 | -# 1 "cstartup.S" | |
5 | -# 39 "cstartup.S" | |
6 | -# 1 "project.h" 1 | |
7 | -# 44 "project.h" | |
8 | -# 1 "include/AT91SAM9263-EK.h" 1 | |
9 | -# 45 "project.h" 2 | |
10 | -# 1 "include/AT91SAM9263.h" 1 | |
11 | -# 46 "project.h" 2 | |
12 | -# 40 "cstartup.S" 2 | |
13 | -# 55 "cstartup.S" | |
14 | - .globl reset_handler | |
15 | - .align 4 | |
16 | - | |
17 | -.section .vectors | |
18 | -.arm | |
19 | - | |
20 | - | |
21 | - | |
22 | -_exception_vectors: | |
23 | -reset_vector: | |
24 | - ldr pc, =reset_handler | |
25 | -undef_vector: | |
26 | - b undef_vector | |
27 | -swi_vector: | |
28 | - b swi_vector | |
29 | -pabt_vector: | |
30 | - ldr pc, =pabt_handler | |
31 | -dabt_vector: | |
32 | - ldr pc, =dabt_handler | |
33 | -rsvd_vector: | |
34 | - b rsvd_vector | |
35 | -irq_vector: | |
36 | - b irq_handler | |
37 | -fiq_vector: | |
38 | - | |
39 | - | |
40 | - | |
41 | - | |
42 | - | |
43 | -fiq_handler: | |
44 | - b fiq_handler | |
45 | - | |
46 | - | |
47 | - | |
48 | - | |
49 | - | |
50 | - | |
51 | -irq_handler: | |
52 | - | |
53 | - | |
54 | - sub lr, lr, #4 | |
55 | - stmfd sp!, {lr} | |
56 | - | |
57 | - mrs r14, SPSR | |
58 | - stmfd sp!, {r0,r14} | |
59 | - | |
60 | - | |
61 | - | |
62 | - | |
63 | - ldr r14, =( 0xFFFFF000) | |
64 | - ldr r0 , [r14, #( 0x00000100)] | |
65 | - str r14, [r14, #( 0x00000100)] | |
66 | - | |
67 | - | |
68 | - msr CPSR_c, #0x13 | |
69 | - | |
70 | - | |
71 | - stmfd sp!, {r1-r3, r12, r14} | |
72 | - | |
73 | - | |
74 | - mov r14, pc | |
75 | - bx r0 | |
76 | - | |
77 | - | |
78 | - ldmia sp!, {r1-r3, r12, r14} | |
79 | - | |
80 | - | |
81 | - msr CPSR_c, #0x12 | 0x80 | |
82 | - | |
83 | - | |
84 | - ldr r14, =( 0xFFFFF000) | |
85 | - str r14, [r14, #( 0x00000130)] | |
86 | - | |
87 | - | |
88 | - ldmia sp!, {r0,r14} | |
89 | - msr SPSR_cxsf, r14 | |
90 | - | |
91 | - | |
92 | - ldmia sp!, {pc}^ | |
93 | - | |
94 | - | |
95 | - | |
96 | - | |
97 | - | |
98 | - | |
99 | - | |
100 | -.section .text | |
101 | -reset_handler: | |
102 | - ldr pc, =_low_level_init | |
103 | - | |
104 | - | |
105 | - | |
106 | - | |
107 | - | |
108 | - | |
109 | -_low_level_init: | |
110 | - ldr r2, =_lp_ll_init | |
111 | - ldmia r2, {r0, r1} | |
112 | - mov sp, r1 | |
113 | - mov lr, pc | |
114 | - bx r0 | |
115 | - | |
116 | - | |
117 | - | |
118 | - | |
119 | -_stack_init: | |
120 | - ldr r2, =_lp_stack_init | |
121 | - ldmia r2, {r0, r1, r2} | |
122 | - | |
123 | - | |
124 | - msr CPSR_c, #0x17 | 0x80 | 0x40 | |
125 | - mov sp, r0 | |
126 | - sub r0, r0, r1 | |
127 | - | |
128 | - | |
129 | - msr CPSR_c, #0x12 | 0x80 | 0x40 | |
130 | - mov sp, r0 | |
131 | - sub r0, r0, r2 | |
132 | - | |
133 | - | |
134 | - msr CPSR_c, #0x13 | 0x40 | |
135 | - mov sp, r0 | |
136 | - | |
137 | - | |
138 | - | |
139 | - | |
140 | - | |
141 | -_init_data: | |
142 | - ldr r2, =_lp_data | |
143 | - ldmia r2, {r1, r3, r4} | |
144 | -1: | |
145 | - cmp r3, r4 | |
146 | - ldrcc r2, [r1], #4 | |
147 | - strcc r2, [r3], #4 | |
148 | - bcc 1b | |
149 | - | |
150 | - | |
151 | -_init_bss: | |
152 | - ldr r2, =_lp_bss | |
153 | - ldmia r2, {r3, r4} | |
154 | - mov r2, #0 | |
155 | -1: | |
156 | - cmp r3, r4 | |
157 | - strcc r2, [r3], #4 | |
158 | - bcc 1b | |
159 | - | |
160 | - | |
161 | - | |
162 | - | |
163 | -_branch_main: | |
164 | - ldr r0, =main | |
165 | - mov lr, pc | |
166 | - bx r0 | |
167 | - | |
168 | - | |
169 | - | |
170 | - | |
171 | -_lp_ll_init: | |
172 | - .word lowlevel_init | |
173 | - .word ((0x00300000) + (0x00014000)) | |
174 | - | |
175 | -_lp_stack_init: | |
176 | - .word ((0x00300000) + (0x00014000)) | |
177 | - .word 8*3*4 | |
178 | - .word 8*3*4 | |
179 | - | |
180 | -_lp_bss: | |
181 | - .word _sbss | |
182 | - .word _ebss | |
183 | - | |
184 | -_lp_data: | |
185 | - .word _etext | |
186 | - .word _sdata | |
187 | - .word _edata |