]> git.donarmstrong.com Git - qmk_firmware.git/blob - tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_NORDIC/TARGET_MCU_NRF51822/TOOLCHAIN_IAR/TARGET_MCU_NORDIC_32K/startup_NRF51822_IAR.s
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[qmk_firmware.git] / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_NORDIC / TARGET_MCU_NRF51822 / TOOLCHAIN_IAR / TARGET_MCU_NORDIC_32K / startup_NRF51822_IAR.s
1 ;; Copyright (c) 2009 Nordic Semiconductor. All Rights Reserved.
2 ;; The information contained herein is confidential property of Nordic
3 ;; Semiconductor ASA.Terms and conditions of usage are described in detail
4 ;; in NORDIC SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT.
5 ;; Licensees are granted free, non-transferable use of the information. NO
6 ;; WARRANTY of ANY KIND is provided. This heading must NOT be removed from
7 ;; the file.
8
9 ;; Description message
10
11         MODULE  ?cstartup
12
13         ;; Stack size default : 1024
14         ;; Heap size default : 2048
15
16         ;; Forward declaration of sections.
17         SECTION CSTACK:DATA:NOROOT(3)
18
19         SECTION .intvec:CODE:NOROOT(2)
20
21         EXTERN  __iar_program_start
22         EXTERN  SystemInit
23         PUBLIC  __vector_table
24         PUBLIC  __Vectors
25         PUBLIC  __Vectors_End
26         PUBLIC  __Vectors_Size
27
28         DATA
29
30 __vector_table
31         DCD     sfe(CSTACK)
32         DCD     Reset_Handler
33         DCD     NMI_Handler
34         DCD     HardFault_Handler
35         DCD     0
36         DCD     0
37         DCD     0
38 ;__vector_table_0x1c
39         DCD     0
40         DCD     0
41         DCD     0
42         DCD     0
43         DCD     SVC_Handler
44         DCD     0
45         DCD     0
46         DCD     PendSV_Handler
47         DCD     SysTick_Handler
48
49         ; External Interrupts
50         DCD      POWER_CLOCK_IRQHandler ;POWER_CLOCK
51         DCD      RADIO_IRQHandler ;RADIO
52         DCD      UART0_IRQHandler ;UART0
53         DCD      SPI0_TWI0_IRQHandler ;SPI0_TWI0
54         DCD      SPI1_TWI1_IRQHandler ;SPI1_TWI1
55         DCD      0 ;Reserved
56         DCD      GPIOTE_IRQHandler ;GPIOTE
57         DCD      ADC_IRQHandler ;ADC
58         DCD      TIMER0_IRQHandler ;TIMER0
59         DCD      TIMER1_IRQHandler ;TIMER1
60         DCD      TIMER2_IRQHandler ;TIMER2
61         DCD      RTC0_IRQHandler ;RTC0
62         DCD      TEMP_IRQHandler ;TEMP
63         DCD      RNG_IRQHandler ;RNG
64         DCD      ECB_IRQHandler ;ECB
65         DCD      CCM_AAR_IRQHandler ;CCM_AAR
66         DCD      WDT_IRQHandler ;WDT
67         DCD      RTC1_IRQHandler ;RTC1
68         DCD      QDEC_IRQHandler ;QDEC
69         DCD      LPCOMP_COMP_IRQHandler ;LPCOMP_COMP
70         DCD      SWI0_IRQHandler ;SWI0
71         DCD      SWI1_IRQHandler ;SWI1
72         DCD      SWI2_IRQHandler ;SWI2
73         DCD      SWI3_IRQHandler ;SWI3
74         DCD      SWI4_IRQHandler ;SWI4
75         DCD      SWI5_IRQHandler ;SWI5
76         DCD      0 ;Reserved
77         DCD      0 ;Reserved
78         DCD      0 ;Reserved
79         DCD      0 ;Reserved
80         DCD      0 ;Reserved
81         DCD      0 ;Reserved
82
83
84 __Vectors_End
85 __Vectors                           EQU   __vector_table
86 __Vectors_Size                      EQU   __Vectors_End - __Vectors
87 NRF_POWER_RAMON_ADDRESS             EQU   0x40000524  ; NRF_POWER->RAMON address
88 NRF_POWER_RAMON_RAMxON_ONMODE_Msk   EQU   0xF         ; All RAM blocks on in onmode bit mask
89
90 ; Default handlers.
91         THUMB
92
93         PUBWEAK Reset_Handler
94         SECTION .text:CODE:REORDER:NOROOT(2)
95 Reset_Handler
96         LDR     R0, =NRF_POWER_RAMON_ADDRESS
97         LDR     R2, [R0]
98         MOVS    R1, #NRF_POWER_RAMON_RAMxON_ONMODE_Msk
99         ORRS    R2, R2, R1
100         STR     R2, [R0]
101         LDR     R0, =SystemInit
102         BLX     R0
103         LDR     R0, =__iar_program_start
104         BX      R0
105
106         ; Dummy exception handlers
107
108         PUBWEAK NMI_Handler
109         SECTION .text:CODE:REORDER:NOROOT(1)
110 NMI_Handler
111         B .
112
113         PUBWEAK HardFault_Handler
114         SECTION .text:CODE:REORDER:NOROOT(1)
115 HardFault_Handler
116         B .
117
118         PUBWEAK SVC_Handler
119         SECTION .text:CODE:REORDER:NOROOT(1)
120 SVC_Handler
121         B .
122
123         PUBWEAK PendSV_Handler
124         SECTION .text:CODE:REORDER:NOROOT(1)
125 PendSV_Handler
126         B .
127
128         PUBWEAK SysTick_Handler
129         SECTION .text:CODE:REORDER:NOROOT(1)
130 SysTick_Handler
131         B .
132
133        ; Dummy interrupt handlers
134
135         PUBWEAK  POWER_CLOCK_IRQHandler
136         SECTION .text:CODE:REORDER:NOROOT(1)
137 POWER_CLOCK_IRQHandler
138         B .
139         PUBWEAK  RADIO_IRQHandler
140         SECTION .text:CODE:REORDER:NOROOT(1)
141 RADIO_IRQHandler
142         B .
143         PUBWEAK  UART0_IRQHandler
144         SECTION .text:CODE:REORDER:NOROOT(1)
145 UART0_IRQHandler
146         B .
147         PUBWEAK  SPI0_TWI0_IRQHandler
148         SECTION .text:CODE:REORDER:NOROOT(1)
149 SPI0_TWI0_IRQHandler
150         B .
151         PUBWEAK  SPI1_TWI1_IRQHandler
152         SECTION .text:CODE:REORDER:NOROOT(1)
153 SPI1_TWI1_IRQHandler
154         B .
155         PUBWEAK  GPIOTE_IRQHandler
156         SECTION .text:CODE:REORDER:NOROOT(1)
157 GPIOTE_IRQHandler
158         B .
159         PUBWEAK  ADC_IRQHandler
160         SECTION .text:CODE:REORDER:NOROOT(1)
161 ADC_IRQHandler
162         B .
163         PUBWEAK  TIMER0_IRQHandler
164         SECTION .text:CODE:REORDER:NOROOT(1)
165 TIMER0_IRQHandler
166         B .
167         PUBWEAK  TIMER1_IRQHandler
168         SECTION .text:CODE:REORDER:NOROOT(1)
169 TIMER1_IRQHandler
170         B .
171         PUBWEAK  TIMER2_IRQHandler
172         SECTION .text:CODE:REORDER:NOROOT(1)
173 TIMER2_IRQHandler
174         B .
175         PUBWEAK  RTC0_IRQHandler
176         SECTION .text:CODE:REORDER:NOROOT(1)
177 RTC0_IRQHandler
178         B .
179         PUBWEAK  TEMP_IRQHandler
180         SECTION .text:CODE:REORDER:NOROOT(1)
181 TEMP_IRQHandler
182         B .
183         PUBWEAK  RNG_IRQHandler
184         SECTION .text:CODE:REORDER:NOROOT(1)
185 RNG_IRQHandler
186         B .
187         PUBWEAK  ECB_IRQHandler
188         SECTION .text:CODE:REORDER:NOROOT(1)
189 ECB_IRQHandler
190         B .
191         PUBWEAK  CCM_AAR_IRQHandler
192         SECTION .text:CODE:REORDER:NOROOT(1)
193 CCM_AAR_IRQHandler
194         B .
195         PUBWEAK  WDT_IRQHandler
196         SECTION .text:CODE:REORDER:NOROOT(1)
197 WDT_IRQHandler
198         B .
199         PUBWEAK  RTC1_IRQHandler
200         SECTION .text:CODE:REORDER:NOROOT(1)
201 RTC1_IRQHandler
202         B .
203         PUBWEAK  QDEC_IRQHandler
204         SECTION .text:CODE:REORDER:NOROOT(1)
205 QDEC_IRQHandler
206         B .
207         PUBWEAK  LPCOMP_COMP_IRQHandler
208         SECTION .text:CODE:REORDER:NOROOT(1)
209 LPCOMP_COMP_IRQHandler
210         B .
211         PUBWEAK  SWI0_IRQHandler
212         SECTION .text:CODE:REORDER:NOROOT(1)
213 SWI0_IRQHandler
214         B .
215         PUBWEAK  SWI1_IRQHandler
216         SECTION .text:CODE:REORDER:NOROOT(1)
217 SWI1_IRQHandler
218         B .
219         PUBWEAK  SWI2_IRQHandler
220         SECTION .text:CODE:REORDER:NOROOT(1)
221 SWI2_IRQHandler
222         B .
223         PUBWEAK  SWI3_IRQHandler
224         SECTION .text:CODE:REORDER:NOROOT(1)
225 SWI3_IRQHandler
226         B .
227         PUBWEAK  SWI4_IRQHandler
228         SECTION .text:CODE:REORDER:NOROOT(1)
229 SWI4_IRQHandler
230         B .
231         PUBWEAK  SWI5_IRQHandler
232         SECTION .text:CODE:REORDER:NOROOT(1)
233 SWI5_IRQHandler
234         B .
235
236
237         END