1 ;/************************************************************************/
\r
2 ;/* (C) Fujitsu Semiconductor Europe GmbH */
\r
4 ;/* The following software deliverable is intended for and must only be */
\r
5 ;/* used for reference and in an evaluation laboratory environment. */
\r
6 ;/* It is provided on an as-is basis without charge and is subject to */
\r
8 ;/* It is the user
\92s obligation to fully test the software in its */
\r
9 ;/* environment and to ensure proper functionality, qualification and */
\r
10 ;/* compliance with component specifications. */
\r
12 ;/* In the event the software deliverable includes the use of open */
\r
13 ;/* source components, the provisions of the governing open source */
\r
14 ;/* license agreement shall apply with respect to such software */
\r
16 ;/* FSEU does not warrant that the deliverables do not infringe any */
\r
17 ;/* third party intellectual property right (IPR). In the event that */
\r
18 ;/* the deliverables infringe a third party IPR it is the sole */
\r
19 ;/* responsibility of the customer to obtain necessary licenses to */
\r
20 ;/* continue the usage of the deliverable. */
\r
22 ;/* To the maximum extent permitted by applicable law FSEU disclaims all */
\r
23 ;/* warranties, whether express or implied, in particular, but not */
\r
24 ;/* limited to, warranties of merchantability and fitness for a */
\r
25 ;/* particular purpose for which the deliverable is not designated. */
\r
27 ;/* To the maximum extent permitted by applicable law, FSEU's liability */
\r
28 ;/* is restricted to intention and gross negligence. */
\r
29 ;/* FSEU is not liable for consequential damages. */
\r
32 ;/************************************************************************/
\r
33 ;/* Startup for ARM */
\r
34 ;/* Version V1.02 */
\r
35 ;/* Date 2011-01-12 */
\r
36 ;/* Target-mcu MB9B5xx */
\r
37 ;/************************************************************************/
\r
39 ; Stack Configuration
\r
40 ; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
\r
42 Stack_Size EQU 0x00000200
\r
44 AREA STACK, NOINIT, READWRITE, ALIGN=3
\r
45 Stack_Mem SPACE Stack_Size
\r
49 ; Heap Configuration
\r
50 ; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
\r
52 Heap_Size EQU 0x00000000
\r
54 AREA HEAP, NOINIT, READWRITE, ALIGN=3
\r
56 Heap_Mem SPACE Heap_Size
\r
64 ; Vector Table Mapped to Address 0 at Reset
\r
66 AREA RESET, DATA, READONLY
\r
68 EXPORT __Vectors_End
\r
69 EXPORT __Vectors_Size
\r
71 __Vectors DCD __initial_sp ; Top of Stack
\r
72 DCD Reset_Handler ; Reset Handler
\r
73 DCD NMI_Handler ; NMI Handler
\r
74 DCD HardFault_Handler ; Hard Fault Handler
\r
75 DCD MemManage_Handler ; MPU Fault Handler
\r
76 DCD BusFault_Handler ; Bus Fault Handler
\r
77 DCD UsageFault_Handler ; Usage Fault Handler
\r
82 DCD SVC_Handler ; SVCall Handler
\r
83 DCD DebugMon_Handler ; Debug Monitor Handler
\r
85 DCD PendSV_Handler ; PendSV Handler
\r
86 DCD SysTick_Handler ; SysTick Handler
\r
88 DCD CSV_Handler ; 0: Clock Super Visor
\r
89 DCD SWDT_Handler ; 1: Software Watchdog Timer
\r
90 DCD LVD_Handler ; 2: Low Voltage Detector
\r
91 DCD MFT_WG_IRQHandler ; 3: Wave Form Generator / DTIF
\r
92 DCD INT0_7_Handler ; 4: External Interrupt Request ch.0 to ch.7
\r
93 DCD INT8_15_Handler ; 5: External Interrupt Request ch.8 to ch.15
\r
94 DCD DT_Handler ; 6: Dual Timer / Quad Decoder
\r
95 DCD MFS0RX_IRQHandler ; 7: MultiFunction Serial ch.0
\r
96 DCD MFS0TX_IRQHandler ; 8: MultiFunction Serial ch.0
\r
97 DCD MFS1RX_IRQHandler ; 9: MultiFunction Serial ch.1
\r
98 DCD MFS1TX_IRQHandler ; 10: MultiFunction Serial ch.1
\r
99 DCD MFS2RX_IRQHandler ; 11: MultiFunction Serial ch.2
\r
100 DCD MFS2TX_IRQHandler ; 12: MultiFunction Serial ch.2
\r
101 DCD MFS3RX_IRQHandler ; 13: MultiFunction Serial ch.3
\r
102 DCD MFS3TX_IRQHandler ; 14: MultiFunction Serial ch.3
\r
103 DCD MFS4RX_IRQHandler ; 15: MultiFunction Serial ch.4
\r
104 DCD MFS4TX_IRQHandler ; 16: MultiFunction Serial ch.4
\r
105 DCD MFS5RX_IRQHandler ; 17: MultiFunction Serial ch.5
\r
106 DCD MFS5TX_IRQHandler ; 18: MultiFunction Serial ch.5
\r
107 DCD MFS6RX_IRQHandler ; 19: MultiFunction Serial ch.6
\r
108 DCD MFS6TX_IRQHandler ; 20: MultiFunction Serial ch.6
\r
109 DCD MFS7RX_IRQHandler ; 21: MultiFunction Serial ch.7
\r
110 DCD MFS7TX_IRQHandler ; 22: MultiFunction Serial ch.7
\r
111 DCD PPG_Handler ; 23: PPG
\r
112 DCD TIM_IRQHandler ; 24: OSC / PLL / Watch Counter
\r
113 DCD ADC0_IRQHandler ; 25: ADC0
\r
114 DCD ADC1_IRQHandler ; 26: ADC1
\r
115 DCD ADC2_IRQHandler ; 27: ADC2
\r
116 DCD MFT_FRT_IRQHandler ; 28: Free-run Timer
\r
117 DCD MFT_IPC_IRQHandler ; 29: Input Capture
\r
118 DCD MFT_OPC_IRQHandler ; 30: Output Compare
\r
119 DCD BT_IRQHandler ; 31: Base Timer ch.0 to ch.7
\r
120 DCD CAN0_IRQHandler ; 32: CAN ch.0
\r
121 DCD CAN1_IRQHandler ; 33: CAN ch.1
\r
122 DCD USBF_Handler ; 34: USB Function
\r
123 DCD USB_Handler ; 35: USB Function / USB HOST
\r
124 DCD DummyHandler ; 36: Reserved
\r
125 DCD DummyHandler ; 37: Reserved
\r
126 DCD DMAC0_Handler ; 38: DMAC ch.0
\r
127 DCD DMAC1_Handler ; 39: DMAC ch.1
\r
128 DCD DMAC2_Handler ; 40: DMAC ch.2
\r
129 DCD DMAC3_Handler ; 41: DMAC ch.3
\r
130 DCD DMAC4_Handler ; 42: DMAC ch.4
\r
131 DCD DMAC5_Handler ; 43: DMAC ch.5
\r
132 DCD DMAC6_Handler ; 44: DMAC ch.6
\r
133 DCD DMAC7_Handler ; 45: DMAC ch.7
\r
134 DCD DummyHandler ; 46: Reserved
\r
135 DCD DummyHandler ; 47: Reserved
\r
138 __Vectors_Size EQU __Vectors_End - __Vectors
\r
140 AREA |.text|, CODE, READONLY
\r
146 EXPORT Reset_Handler [WEAK]
\r
149 LDR R0, =SystemInit
\r
156 ; Dummy Exception Handlers (infinite loops which can be modified)
\r
159 EXPORT NMI_Handler [WEAK]
\r
164 EXPORT HardFault_Handler [WEAK]
\r
169 EXPORT MemManage_Handler [WEAK]
\r
174 EXPORT BusFault_Handler [WEAK]
\r
177 UsageFault_Handler\
\r
179 EXPORT UsageFault_Handler [WEAK]
\r
183 EXPORT SVC_Handler [WEAK]
\r
188 EXPORT DebugMon_Handler [WEAK]
\r
191 PendSV_Handler PROC
\r
192 EXPORT PendSV_Handler [WEAK]
\r
195 SysTick_Handler PROC
\r
196 EXPORT SysTick_Handler [WEAK]
\r
200 Default_Handler PROC
\r
202 EXPORT CSV_Handler [WEAK]
\r
203 EXPORT SWDT_Handler [WEAK]
\r
204 EXPORT LVD_Handler [WEAK]
\r
205 EXPORT MFT_WG_IRQHandler [WEAK]
\r
206 EXPORT INT0_7_Handler [WEAK]
\r
207 EXPORT INT8_15_Handler [WEAK]
\r
208 EXPORT DT_Handler [WEAK]
\r
209 EXPORT MFS0RX_IRQHandler [WEAK]
\r
210 EXPORT MFS0TX_IRQHandler [WEAK]
\r
211 EXPORT MFS1RX_IRQHandler [WEAK]
\r
212 EXPORT MFS1TX_IRQHandler [WEAK]
\r
213 EXPORT MFS2RX_IRQHandler [WEAK]
\r
214 EXPORT MFS2TX_IRQHandler [WEAK]
\r
215 EXPORT MFS3RX_IRQHandler [WEAK]
\r
216 EXPORT MFS3TX_IRQHandler [WEAK]
\r
217 EXPORT MFS4RX_IRQHandler [WEAK]
\r
218 EXPORT MFS4TX_IRQHandler [WEAK]
\r
219 EXPORT MFS5RX_IRQHandler [WEAK]
\r
220 EXPORT MFS5TX_IRQHandler [WEAK]
\r
221 EXPORT MFS6RX_IRQHandler [WEAK]
\r
222 EXPORT MFS6TX_IRQHandler [WEAK]
\r
223 EXPORT MFS7RX_IRQHandler [WEAK]
\r
224 EXPORT MFS7TX_IRQHandler [WEAK]
\r
225 EXPORT PPG_Handler [WEAK]
\r
226 EXPORT TIM_IRQHandler [WEAK]
\r
227 EXPORT ADC0_IRQHandler [WEAK]
\r
228 EXPORT ADC1_IRQHandler [WEAK]
\r
229 EXPORT ADC2_IRQHandler [WEAK]
\r
230 EXPORT MFT_FRT_IRQHandler [WEAK]
\r
231 EXPORT MFT_IPC_IRQHandler [WEAK]
\r
232 EXPORT MFT_OPC_IRQHandler [WEAK]
\r
233 EXPORT BT_IRQHandler [WEAK]
\r
234 EXPORT CAN0_IRQHandler [WEAK]
\r
235 EXPORT CAN1_IRQHandler [WEAK]
\r
236 EXPORT USBF_Handler [WEAK]
\r
237 EXPORT USB_Handler [WEAK]
\r
238 EXPORT DMAC0_Handler [WEAK]
\r
239 EXPORT DMAC1_Handler [WEAK]
\r
240 EXPORT DMAC2_Handler [WEAK]
\r
241 EXPORT DMAC3_Handler [WEAK]
\r
242 EXPORT DMAC4_Handler [WEAK]
\r
243 EXPORT DMAC5_Handler [WEAK]
\r
244 EXPORT DMAC6_Handler [WEAK]
\r
245 EXPORT DMAC7_Handler [WEAK]
\r
246 EXPORT DummyHandler [WEAK]
\r
302 ; User Initial Stack & Heap
\r
306 EXPORT __initial_sp
\r
308 EXPORT __heap_limit
\r
312 IMPORT __use_two_region_memory
\r
313 EXPORT __user_initial_stackheap
\r
314 __user_initial_stackheap
\r
317 LDR R1, =(Stack_Mem + Stack_Size)
\r
318 LDR R2, = (Heap_Mem + Heap_Size)
\r
319 LDR R3, = Stack_Mem
\r