1/**************************************************************************//** 2 * @file startup_psoc6_02_cm4.S 3 * @brief CMSIS Core Device Startup File for 4 * ARMCM4 Device Series 5 * @version V5.00 6 * @date 02. March 2016 7 ******************************************************************************/ 8/* 9 * Copyright (c) 2009-2016 ARM Limited. All rights reserved. 10 * 11 * SPDX-License-Identifier: Apache-2.0 12 * 13 * Licensed under the Apache License, Version 2.0 (the License); you may 14 * not use this file except in compliance with the License. 15 * You may obtain a copy of the License at 16 * 17 * www.apache.org/licenses/LICENSE-2.0 18 * 19 * Unless required by applicable law or agreed to in writing, software 20 * distributed under the License is distributed on an AS IS BASIS, WITHOUT 21 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 22 * See the License for the specific language governing permissions and 23 * limitations under the License. 24 */ 25 26 /* Address of the NMI handler */ 27 #define CY_NMI_HANLDER_ADDR 0x0000000D 28 29 /* The CPU VTOR register */ 30 #define CY_CPU_VTOR_ADDR 0xE000ED08 31 32 .syntax unified 33 .section __STACK , __stack 34 .align 3 35 36#ifdef __STACK_SIZE 37 .equ Stack_Size, __STACK_SIZE 38#else 39 .equ Stack_Size, 0x00001000 40#endif 41 .globl __StackTop 42 .globl __StackLimit 43 44__StackLimit: 45 .space Stack_Size 46 .equ __StackTop, . - Stack_Size 47 48 .section __HEAP, __heap 49 .align 3 50#ifdef __HEAP_SIZE 51 .equ Heap_Size, __HEAP_SIZE 52#else 53 .equ Heap_Size, 0x00000400 54#endif 55 .globl __HeapBase 56__HeapBase: 57 .if Heap_Size 58 .space Heap_Size 59 .endif 60 61 .section __VECT, ___Vectors 62 .align 2 63 .globl ___Vectors 64___Vectors: 65 .long __StackTop /* Top of Stack */ 66 .long Reset_Handler /* Reset Handler */ 67 .long CY_NMI_HANLDER_ADDR /* NMI Handler */ 68 .long HardFault_Handler /* Hard Fault Handler */ 69 .long MemManage_Handler /* MPU Fault Handler */ 70 .long BusFault_Handler /* Bus Fault Handler */ 71 .long UsageFault_Handler /* Usage Fault Handler */ 72 .long 0 /* Reserved */ 73 .long 0 /* Reserved */ 74 .long 0 /* Reserved */ 75 .long 0 /* Reserved */ 76 .long SVC_Handler /* SVCall Handler */ 77 .long DebugMon_Handler /* Debug Monitor Handler */ 78 .long 0 /* Reserved */ 79 .long PendSV_Handler /* PendSV Handler */ 80 .long SysTick_Handler /* SysTick Handler */ 81 82 /* External interrupts Description */ 83 .long ioss_interrupts_gpio_0_IRQHandler /* GPIO Port Interrupt #0 */ 84 .long ioss_interrupts_gpio_1_IRQHandler /* GPIO Port Interrupt #1 */ 85 .long ioss_interrupts_gpio_2_IRQHandler /* GPIO Port Interrupt #2 */ 86 .long ioss_interrupts_gpio_3_IRQHandler /* GPIO Port Interrupt #3 */ 87 .long ioss_interrupts_gpio_4_IRQHandler /* GPIO Port Interrupt #4 */ 88 .long ioss_interrupts_gpio_5_IRQHandler /* GPIO Port Interrupt #5 */ 89 .long ioss_interrupts_gpio_6_IRQHandler /* GPIO Port Interrupt #6 */ 90 .long ioss_interrupts_gpio_7_IRQHandler /* GPIO Port Interrupt #7 */ 91 .long ioss_interrupts_gpio_8_IRQHandler /* GPIO Port Interrupt #8 */ 92 .long ioss_interrupts_gpio_9_IRQHandler /* GPIO Port Interrupt #9 */ 93 .long ioss_interrupts_gpio_10_IRQHandler /* GPIO Port Interrupt #10 */ 94 .long ioss_interrupts_gpio_11_IRQHandler /* GPIO Port Interrupt #11 */ 95 .long ioss_interrupts_gpio_12_IRQHandler /* GPIO Port Interrupt #12 */ 96 .long ioss_interrupts_gpio_13_IRQHandler /* GPIO Port Interrupt #13 */ 97 .long ioss_interrupts_gpio_14_IRQHandler /* GPIO Port Interrupt #14 */ 98 .long ioss_interrupt_gpio_IRQHandler /* GPIO All Ports */ 99 .long ioss_interrupt_vdd_IRQHandler /* GPIO Supply Detect Interrupt */ 100 .long lpcomp_interrupt_IRQHandler /* Low Power Comparator Interrupt */ 101 .long scb_8_interrupt_IRQHandler /* Serial Communication Block #8 (DeepSleep capable) */ 102 .long srss_interrupt_mcwdt_0_IRQHandler /* Multi Counter Watchdog Timer interrupt */ 103 .long srss_interrupt_mcwdt_1_IRQHandler /* Multi Counter Watchdog Timer interrupt */ 104 .long srss_interrupt_backup_IRQHandler /* Backup domain interrupt */ 105 .long srss_interrupt_IRQHandler /* Other combined Interrupts for SRSS (LVD, WDT, CLKCAL) */ 106 .long cpuss_interrupts_ipc_0_IRQHandler /* CPUSS Inter Process Communication Interrupt #0 */ 107 .long cpuss_interrupts_ipc_1_IRQHandler /* CPUSS Inter Process Communication Interrupt #1 */ 108 .long cpuss_interrupts_ipc_2_IRQHandler /* CPUSS Inter Process Communication Interrupt #2 */ 109 .long cpuss_interrupts_ipc_3_IRQHandler /* CPUSS Inter Process Communication Interrupt #3 */ 110 .long cpuss_interrupts_ipc_4_IRQHandler /* CPUSS Inter Process Communication Interrupt #4 */ 111 .long cpuss_interrupts_ipc_5_IRQHandler /* CPUSS Inter Process Communication Interrupt #5 */ 112 .long cpuss_interrupts_ipc_6_IRQHandler /* CPUSS Inter Process Communication Interrupt #6 */ 113 .long cpuss_interrupts_ipc_7_IRQHandler /* CPUSS Inter Process Communication Interrupt #7 */ 114 .long cpuss_interrupts_ipc_8_IRQHandler /* CPUSS Inter Process Communication Interrupt #8 */ 115 .long cpuss_interrupts_ipc_9_IRQHandler /* CPUSS Inter Process Communication Interrupt #9 */ 116 .long cpuss_interrupts_ipc_10_IRQHandler /* CPUSS Inter Process Communication Interrupt #10 */ 117 .long cpuss_interrupts_ipc_11_IRQHandler /* CPUSS Inter Process Communication Interrupt #11 */ 118 .long cpuss_interrupts_ipc_12_IRQHandler /* CPUSS Inter Process Communication Interrupt #12 */ 119 .long cpuss_interrupts_ipc_13_IRQHandler /* CPUSS Inter Process Communication Interrupt #13 */ 120 .long cpuss_interrupts_ipc_14_IRQHandler /* CPUSS Inter Process Communication Interrupt #14 */ 121 .long cpuss_interrupts_ipc_15_IRQHandler /* CPUSS Inter Process Communication Interrupt #15 */ 122 .long scb_0_interrupt_IRQHandler /* Serial Communication Block #0 */ 123 .long scb_1_interrupt_IRQHandler /* Serial Communication Block #1 */ 124 .long scb_2_interrupt_IRQHandler /* Serial Communication Block #2 */ 125 .long scb_3_interrupt_IRQHandler /* Serial Communication Block #3 */ 126 .long scb_4_interrupt_IRQHandler /* Serial Communication Block #4 */ 127 .long scb_5_interrupt_IRQHandler /* Serial Communication Block #5 */ 128 .long scb_6_interrupt_IRQHandler /* Serial Communication Block #6 */ 129 .long scb_7_interrupt_IRQHandler /* Serial Communication Block #7 */ 130 .long scb_9_interrupt_IRQHandler /* Serial Communication Block #9 */ 131 .long scb_10_interrupt_IRQHandler /* Serial Communication Block #10 */ 132 .long scb_11_interrupt_IRQHandler /* Serial Communication Block #11 */ 133 .long scb_12_interrupt_IRQHandler /* Serial Communication Block #12 */ 134 .long csd_interrupt_IRQHandler /* CSD (Capsense) interrupt */ 135 .long cpuss_interrupts_dmac_0_IRQHandler /* CPUSS DMAC, Channel #0 */ 136 .long cpuss_interrupts_dmac_1_IRQHandler /* CPUSS DMAC, Channel #1 */ 137 .long cpuss_interrupts_dmac_2_IRQHandler /* CPUSS DMAC, Channel #2 */ 138 .long cpuss_interrupts_dmac_3_IRQHandler /* CPUSS DMAC, Channel #3 */ 139 .long cpuss_interrupts_dw0_0_IRQHandler /* CPUSS DataWire #0, Channel #0 */ 140 .long cpuss_interrupts_dw0_1_IRQHandler /* CPUSS DataWire #0, Channel #1 */ 141 .long cpuss_interrupts_dw0_2_IRQHandler /* CPUSS DataWire #0, Channel #2 */ 142 .long cpuss_interrupts_dw0_3_IRQHandler /* CPUSS DataWire #0, Channel #3 */ 143 .long cpuss_interrupts_dw0_4_IRQHandler /* CPUSS DataWire #0, Channel #4 */ 144 .long cpuss_interrupts_dw0_5_IRQHandler /* CPUSS DataWire #0, Channel #5 */ 145 .long cpuss_interrupts_dw0_6_IRQHandler /* CPUSS DataWire #0, Channel #6 */ 146 .long cpuss_interrupts_dw0_7_IRQHandler /* CPUSS DataWire #0, Channel #7 */ 147 .long cpuss_interrupts_dw0_8_IRQHandler /* CPUSS DataWire #0, Channel #8 */ 148 .long cpuss_interrupts_dw0_9_IRQHandler /* CPUSS DataWire #0, Channel #9 */ 149 .long cpuss_interrupts_dw0_10_IRQHandler /* CPUSS DataWire #0, Channel #10 */ 150 .long cpuss_interrupts_dw0_11_IRQHandler /* CPUSS DataWire #0, Channel #11 */ 151 .long cpuss_interrupts_dw0_12_IRQHandler /* CPUSS DataWire #0, Channel #12 */ 152 .long cpuss_interrupts_dw0_13_IRQHandler /* CPUSS DataWire #0, Channel #13 */ 153 .long cpuss_interrupts_dw0_14_IRQHandler /* CPUSS DataWire #0, Channel #14 */ 154 .long cpuss_interrupts_dw0_15_IRQHandler /* CPUSS DataWire #0, Channel #15 */ 155 .long cpuss_interrupts_dw0_16_IRQHandler /* CPUSS DataWire #0, Channel #16 */ 156 .long cpuss_interrupts_dw0_17_IRQHandler /* CPUSS DataWire #0, Channel #17 */ 157 .long cpuss_interrupts_dw0_18_IRQHandler /* CPUSS DataWire #0, Channel #18 */ 158 .long cpuss_interrupts_dw0_19_IRQHandler /* CPUSS DataWire #0, Channel #19 */ 159 .long cpuss_interrupts_dw0_20_IRQHandler /* CPUSS DataWire #0, Channel #20 */ 160 .long cpuss_interrupts_dw0_21_IRQHandler /* CPUSS DataWire #0, Channel #21 */ 161 .long cpuss_interrupts_dw0_22_IRQHandler /* CPUSS DataWire #0, Channel #22 */ 162 .long cpuss_interrupts_dw0_23_IRQHandler /* CPUSS DataWire #0, Channel #23 */ 163 .long cpuss_interrupts_dw0_24_IRQHandler /* CPUSS DataWire #0, Channel #24 */ 164 .long cpuss_interrupts_dw0_25_IRQHandler /* CPUSS DataWire #0, Channel #25 */ 165 .long cpuss_interrupts_dw0_26_IRQHandler /* CPUSS DataWire #0, Channel #26 */ 166 .long cpuss_interrupts_dw0_27_IRQHandler /* CPUSS DataWire #0, Channel #27 */ 167 .long cpuss_interrupts_dw0_28_IRQHandler /* CPUSS DataWire #0, Channel #28 */ 168 .long cpuss_interrupts_dw1_0_IRQHandler /* CPUSS DataWire #1, Channel #0 */ 169 .long cpuss_interrupts_dw1_1_IRQHandler /* CPUSS DataWire #1, Channel #1 */ 170 .long cpuss_interrupts_dw1_2_IRQHandler /* CPUSS DataWire #1, Channel #2 */ 171 .long cpuss_interrupts_dw1_3_IRQHandler /* CPUSS DataWire #1, Channel #3 */ 172 .long cpuss_interrupts_dw1_4_IRQHandler /* CPUSS DataWire #1, Channel #4 */ 173 .long cpuss_interrupts_dw1_5_IRQHandler /* CPUSS DataWire #1, Channel #5 */ 174 .long cpuss_interrupts_dw1_6_IRQHandler /* CPUSS DataWire #1, Channel #6 */ 175 .long cpuss_interrupts_dw1_7_IRQHandler /* CPUSS DataWire #1, Channel #7 */ 176 .long cpuss_interrupts_dw1_8_IRQHandler /* CPUSS DataWire #1, Channel #8 */ 177 .long cpuss_interrupts_dw1_9_IRQHandler /* CPUSS DataWire #1, Channel #9 */ 178 .long cpuss_interrupts_dw1_10_IRQHandler /* CPUSS DataWire #1, Channel #10 */ 179 .long cpuss_interrupts_dw1_11_IRQHandler /* CPUSS DataWire #1, Channel #11 */ 180 .long cpuss_interrupts_dw1_12_IRQHandler /* CPUSS DataWire #1, Channel #12 */ 181 .long cpuss_interrupts_dw1_13_IRQHandler /* CPUSS DataWire #1, Channel #13 */ 182 .long cpuss_interrupts_dw1_14_IRQHandler /* CPUSS DataWire #1, Channel #14 */ 183 .long cpuss_interrupts_dw1_15_IRQHandler /* CPUSS DataWire #1, Channel #15 */ 184 .long cpuss_interrupts_dw1_16_IRQHandler /* CPUSS DataWire #1, Channel #16 */ 185 .long cpuss_interrupts_dw1_17_IRQHandler /* CPUSS DataWire #1, Channel #17 */ 186 .long cpuss_interrupts_dw1_18_IRQHandler /* CPUSS DataWire #1, Channel #18 */ 187 .long cpuss_interrupts_dw1_19_IRQHandler /* CPUSS DataWire #1, Channel #19 */ 188 .long cpuss_interrupts_dw1_20_IRQHandler /* CPUSS DataWire #1, Channel #20 */ 189 .long cpuss_interrupts_dw1_21_IRQHandler /* CPUSS DataWire #1, Channel #21 */ 190 .long cpuss_interrupts_dw1_22_IRQHandler /* CPUSS DataWire #1, Channel #22 */ 191 .long cpuss_interrupts_dw1_23_IRQHandler /* CPUSS DataWire #1, Channel #23 */ 192 .long cpuss_interrupts_dw1_24_IRQHandler /* CPUSS DataWire #1, Channel #24 */ 193 .long cpuss_interrupts_dw1_25_IRQHandler /* CPUSS DataWire #1, Channel #25 */ 194 .long cpuss_interrupts_dw1_26_IRQHandler /* CPUSS DataWire #1, Channel #26 */ 195 .long cpuss_interrupts_dw1_27_IRQHandler /* CPUSS DataWire #1, Channel #27 */ 196 .long cpuss_interrupts_dw1_28_IRQHandler /* CPUSS DataWire #1, Channel #28 */ 197 .long cpuss_interrupts_fault_0_IRQHandler /* CPUSS Fault Structure Interrupt #0 */ 198 .long cpuss_interrupts_fault_1_IRQHandler /* CPUSS Fault Structure Interrupt #1 */ 199 .long cpuss_interrupt_crypto_IRQHandler /* CRYPTO Accelerator Interrupt */ 200 .long cpuss_interrupt_fm_IRQHandler /* FLASH Macro Interrupt */ 201 .long cpuss_interrupts_cm4_fp_IRQHandler /* Floating Point operation fault */ 202 .long cpuss_interrupts_cm0_cti_0_IRQHandler /* CM0+ CTI #0 */ 203 .long cpuss_interrupts_cm0_cti_1_IRQHandler /* CM0+ CTI #1 */ 204 .long cpuss_interrupts_cm4_cti_0_IRQHandler /* CM4 CTI #0 */ 205 .long cpuss_interrupts_cm4_cti_1_IRQHandler /* CM4 CTI #1 */ 206 .long tcpwm_0_interrupts_0_IRQHandler /* TCPWM #0, Counter #0 */ 207 .long tcpwm_0_interrupts_1_IRQHandler /* TCPWM #0, Counter #1 */ 208 .long tcpwm_0_interrupts_2_IRQHandler /* TCPWM #0, Counter #2 */ 209 .long tcpwm_0_interrupts_3_IRQHandler /* TCPWM #0, Counter #3 */ 210 .long tcpwm_0_interrupts_4_IRQHandler /* TCPWM #0, Counter #4 */ 211 .long tcpwm_0_interrupts_5_IRQHandler /* TCPWM #0, Counter #5 */ 212 .long tcpwm_0_interrupts_6_IRQHandler /* TCPWM #0, Counter #6 */ 213 .long tcpwm_0_interrupts_7_IRQHandler /* TCPWM #0, Counter #7 */ 214 .long tcpwm_1_interrupts_0_IRQHandler /* TCPWM #1, Counter #0 */ 215 .long tcpwm_1_interrupts_1_IRQHandler /* TCPWM #1, Counter #1 */ 216 .long tcpwm_1_interrupts_2_IRQHandler /* TCPWM #1, Counter #2 */ 217 .long tcpwm_1_interrupts_3_IRQHandler /* TCPWM #1, Counter #3 */ 218 .long tcpwm_1_interrupts_4_IRQHandler /* TCPWM #1, Counter #4 */ 219 .long tcpwm_1_interrupts_5_IRQHandler /* TCPWM #1, Counter #5 */ 220 .long tcpwm_1_interrupts_6_IRQHandler /* TCPWM #1, Counter #6 */ 221 .long tcpwm_1_interrupts_7_IRQHandler /* TCPWM #1, Counter #7 */ 222 .long tcpwm_1_interrupts_8_IRQHandler /* TCPWM #1, Counter #8 */ 223 .long tcpwm_1_interrupts_9_IRQHandler /* TCPWM #1, Counter #9 */ 224 .long tcpwm_1_interrupts_10_IRQHandler /* TCPWM #1, Counter #10 */ 225 .long tcpwm_1_interrupts_11_IRQHandler /* TCPWM #1, Counter #11 */ 226 .long tcpwm_1_interrupts_12_IRQHandler /* TCPWM #1, Counter #12 */ 227 .long tcpwm_1_interrupts_13_IRQHandler /* TCPWM #1, Counter #13 */ 228 .long tcpwm_1_interrupts_14_IRQHandler /* TCPWM #1, Counter #14 */ 229 .long tcpwm_1_interrupts_15_IRQHandler /* TCPWM #1, Counter #15 */ 230 .long tcpwm_1_interrupts_16_IRQHandler /* TCPWM #1, Counter #16 */ 231 .long tcpwm_1_interrupts_17_IRQHandler /* TCPWM #1, Counter #17 */ 232 .long tcpwm_1_interrupts_18_IRQHandler /* TCPWM #1, Counter #18 */ 233 .long tcpwm_1_interrupts_19_IRQHandler /* TCPWM #1, Counter #19 */ 234 .long tcpwm_1_interrupts_20_IRQHandler /* TCPWM #1, Counter #20 */ 235 .long tcpwm_1_interrupts_21_IRQHandler /* TCPWM #1, Counter #21 */ 236 .long tcpwm_1_interrupts_22_IRQHandler /* TCPWM #1, Counter #22 */ 237 .long tcpwm_1_interrupts_23_IRQHandler /* TCPWM #1, Counter #23 */ 238 .long pass_interrupt_sar_IRQHandler /* SAR ADC interrupt */ 239 .long audioss_0_interrupt_i2s_IRQHandler /* I2S0 Audio interrupt */ 240 .long audioss_0_interrupt_pdm_IRQHandler /* PDM0/PCM0 Audio interrupt */ 241 .long audioss_1_interrupt_i2s_IRQHandler /* I2S1 Audio interrupt */ 242 .long profile_interrupt_IRQHandler /* Energy Profiler interrupt */ 243 .long smif_interrupt_IRQHandler /* Serial Memory Interface interrupt */ 244 .long usb_interrupt_hi_IRQHandler /* USB Interrupt */ 245 .long usb_interrupt_med_IRQHandler /* USB Interrupt */ 246 .long usb_interrupt_lo_IRQHandler /* USB Interrupt */ 247 .long sdhc_0_interrupt_wakeup_IRQHandler /* SDIO wakeup interrupt for mxsdhc */ 248 .long sdhc_0_interrupt_general_IRQHandler /* Consolidated interrupt for mxsdhc for everything else */ 249 .long sdhc_1_interrupt_wakeup_IRQHandler /* EEMC wakeup interrupt for mxsdhc, not used */ 250 .long sdhc_1_interrupt_general_IRQHandler /* Consolidated interrupt for mxsdhc for everything else */ 251 252 .equ __VectorsSize, . - ___Vectors 253 254 .section __RAMVECTORS, ___ramVectors 255 .align 2 256 .globl ___ramVectors 257 258___ramVectors: 259 .space __VectorsSize 260 261 262 .text 263 .thumb_func 264 .align 2 265 /* Reset handler */ 266 .globl Reset_Handler 267 268Reset_Handler: 269 bl Cy_OnResetUser 270 cpsid i 271 272/* Single section scheme. 273 * 274 * The ranges of copy from/to are specified by following symbols 275 * __etext: LMA of start of the section to copy from. Usually end of text 276 * __data_start__: VMA of start of the section to copy to 277 * __data_end__: VMA of end of the section to copy to 278 * 279 * All addresses must be aligned to 4 bytes boundary. 280 */ 281 ldr r0, =___ramVectors 282 ldr r1, =___Vectors 283 ldr r2, =__VectorsSize 284 bl _memcpy 285 286 ldr r0, =segment$start$__DATA 287 ldr r1, =segment$end$__TEXT 288 ldr r2, =section$start$__DATA$__zerofill 289 sub r2, r0 290 bl _memcpy 291 292 ldr r0, =section$start$__DATA$__zerofill 293 eor r1, r1 294 ldr r2, =section$end$__DATA$__zerofill 295 sub r2, r0 296 bl _memset 297 298 /* Update Vector Table Offset Register. */ 299 ldr r0, =___ramVectors 300 ldr r1, =CY_CPU_VTOR_ADDR 301 str r0, [r1] 302 dsb 0xF 303 304 /* Enable the FPU if used */ 305 bl _Cy_SystemInitFpuEnable 306 307 bl _HeapInit 308#ifndef __NO_SYSTEM_INIT 309 bl _SystemInit 310#endif 311 312 bl _main 313 314 /* Should never get here */ 315 b . 316 317 .pool 318 319 .text 320 .thumb 321 .thumb_func 322 .align 2 323 324 /* Device startup customization */ 325 .weak_definition Cy_OnResetUser 326 .global Cy_OnResetUser, Cy_OnResetUser 327Cy_OnResetUser: 328 bx lr 329 330 .text 331 .align 1 332 .thumb_func 333 .weak_reference Default_Handler 334 335Default_Handler: 336 b . 337 338 .text 339 .thumb_func 340 .align 2 341 .weak_definition Cy_SysLib_FaultHandler 342 343Cy_SysLib_FaultHandler: 344 b . 345 346 .text 347 .thumb_func 348 .align 2 349 350Fault_Handler: 351 /* Storing LR content for Creator call stack trace */ 352 push {LR} 353 movs r0, #4 354 mov r1, LR 355 tst r0, r1 356 beq .L_MSP 357 mrs r0, PSP 358 b .L_API_call 359.L_MSP: 360 mrs r0, MSP 361 /* Compensation of stack pointer address due to pushing 4 bytes of LR */ 362 adds r0, r0, #4 363 nop 364.L_API_call: 365 bl Cy_SysLib_FaultHandler 366 b . 367 368.macro def_fault_Handler fault_handler_name 369 .weak_definition \fault_handler_name 370 .set \fault_handler_name, Fault_Handler 371 .endm 372 373/* Macro to define default handlers. Default handler 374 * will be weak symbol and just dead loops. They can be 375 * overwritten by other handlers */ 376 .macro def_irq_handler handler_name 377 .weak_definition \handler_name 378 .set \handler_name, Default_Handler 379 .endm 380 381 def_irq_handler NMI_Handler 382 383 def_fault_Handler HardFault_Handler 384 def_fault_Handler MemManage_Handler 385 def_fault_Handler BusFault_Handler 386 def_fault_Handler UsageFault_Handler 387 388 def_irq_handler SVC_Handler 389 def_irq_handler DebugMon_Handler 390 def_irq_handler PendSV_Handler 391 def_irq_handler SysTick_Handler 392 393 def_irq_handler ioss_interrupts_gpio_0_IRQHandler /* GPIO Port Interrupt #0 */ 394 def_irq_handler ioss_interrupts_gpio_1_IRQHandler /* GPIO Port Interrupt #1 */ 395 def_irq_handler ioss_interrupts_gpio_2_IRQHandler /* GPIO Port Interrupt #2 */ 396 def_irq_handler ioss_interrupts_gpio_3_IRQHandler /* GPIO Port Interrupt #3 */ 397 def_irq_handler ioss_interrupts_gpio_4_IRQHandler /* GPIO Port Interrupt #4 */ 398 def_irq_handler ioss_interrupts_gpio_5_IRQHandler /* GPIO Port Interrupt #5 */ 399 def_irq_handler ioss_interrupts_gpio_6_IRQHandler /* GPIO Port Interrupt #6 */ 400 def_irq_handler ioss_interrupts_gpio_7_IRQHandler /* GPIO Port Interrupt #7 */ 401 def_irq_handler ioss_interrupts_gpio_8_IRQHandler /* GPIO Port Interrupt #8 */ 402 def_irq_handler ioss_interrupts_gpio_9_IRQHandler /* GPIO Port Interrupt #9 */ 403 def_irq_handler ioss_interrupts_gpio_10_IRQHandler /* GPIO Port Interrupt #10 */ 404 def_irq_handler ioss_interrupts_gpio_11_IRQHandler /* GPIO Port Interrupt #11 */ 405 def_irq_handler ioss_interrupts_gpio_12_IRQHandler /* GPIO Port Interrupt #12 */ 406 def_irq_handler ioss_interrupts_gpio_13_IRQHandler /* GPIO Port Interrupt #13 */ 407 def_irq_handler ioss_interrupts_gpio_14_IRQHandler /* GPIO Port Interrupt #14 */ 408 def_irq_handler ioss_interrupt_gpio_IRQHandler /* GPIO All Ports */ 409 def_irq_handler ioss_interrupt_vdd_IRQHandler /* GPIO Supply Detect Interrupt */ 410 def_irq_handler lpcomp_interrupt_IRQHandler /* Low Power Comparator Interrupt */ 411 def_irq_handler scb_8_interrupt_IRQHandler /* Serial Communication Block #8 (DeepSleep capable) */ 412 def_irq_handler srss_interrupt_mcwdt_0_IRQHandler /* Multi Counter Watchdog Timer interrupt */ 413 def_irq_handler srss_interrupt_mcwdt_1_IRQHandler /* Multi Counter Watchdog Timer interrupt */ 414 def_irq_handler srss_interrupt_backup_IRQHandler /* Backup domain interrupt */ 415 def_irq_handler srss_interrupt_IRQHandler /* Other combined Interrupts for SRSS (LVD, WDT, CLKCAL) */ 416 def_irq_handler cpuss_interrupts_ipc_0_IRQHandler /* CPUSS Inter Process Communication Interrupt #0 */ 417 def_irq_handler cpuss_interrupts_ipc_1_IRQHandler /* CPUSS Inter Process Communication Interrupt #1 */ 418 def_irq_handler cpuss_interrupts_ipc_2_IRQHandler /* CPUSS Inter Process Communication Interrupt #2 */ 419 def_irq_handler cpuss_interrupts_ipc_3_IRQHandler /* CPUSS Inter Process Communication Interrupt #3 */ 420 def_irq_handler cpuss_interrupts_ipc_4_IRQHandler /* CPUSS Inter Process Communication Interrupt #4 */ 421 def_irq_handler cpuss_interrupts_ipc_5_IRQHandler /* CPUSS Inter Process Communication Interrupt #5 */ 422 def_irq_handler cpuss_interrupts_ipc_6_IRQHandler /* CPUSS Inter Process Communication Interrupt #6 */ 423 def_irq_handler cpuss_interrupts_ipc_7_IRQHandler /* CPUSS Inter Process Communication Interrupt #7 */ 424 def_irq_handler cpuss_interrupts_ipc_8_IRQHandler /* CPUSS Inter Process Communication Interrupt #8 */ 425 def_irq_handler cpuss_interrupts_ipc_9_IRQHandler /* CPUSS Inter Process Communication Interrupt #9 */ 426 def_irq_handler cpuss_interrupts_ipc_10_IRQHandler /* CPUSS Inter Process Communication Interrupt #10 */ 427 def_irq_handler cpuss_interrupts_ipc_11_IRQHandler /* CPUSS Inter Process Communication Interrupt #11 */ 428 def_irq_handler cpuss_interrupts_ipc_12_IRQHandler /* CPUSS Inter Process Communication Interrupt #12 */ 429 def_irq_handler cpuss_interrupts_ipc_13_IRQHandler /* CPUSS Inter Process Communication Interrupt #13 */ 430 def_irq_handler cpuss_interrupts_ipc_14_IRQHandler /* CPUSS Inter Process Communication Interrupt #14 */ 431 def_irq_handler cpuss_interrupts_ipc_15_IRQHandler /* CPUSS Inter Process Communication Interrupt #15 */ 432 def_irq_handler scb_0_interrupt_IRQHandler /* Serial Communication Block #0 */ 433 def_irq_handler scb_1_interrupt_IRQHandler /* Serial Communication Block #1 */ 434 def_irq_handler scb_2_interrupt_IRQHandler /* Serial Communication Block #2 */ 435 def_irq_handler scb_3_interrupt_IRQHandler /* Serial Communication Block #3 */ 436 def_irq_handler scb_4_interrupt_IRQHandler /* Serial Communication Block #4 */ 437 def_irq_handler scb_5_interrupt_IRQHandler /* Serial Communication Block #5 */ 438 def_irq_handler scb_6_interrupt_IRQHandler /* Serial Communication Block #6 */ 439 def_irq_handler scb_7_interrupt_IRQHandler /* Serial Communication Block #7 */ 440 def_irq_handler scb_9_interrupt_IRQHandler /* Serial Communication Block #9 */ 441 def_irq_handler scb_10_interrupt_IRQHandler /* Serial Communication Block #10 */ 442 def_irq_handler scb_11_interrupt_IRQHandler /* Serial Communication Block #11 */ 443 def_irq_handler scb_12_interrupt_IRQHandler /* Serial Communication Block #12 */ 444 def_irq_handler csd_interrupt_IRQHandler /* CSD (Capsense) interrupt */ 445 def_irq_handler cpuss_interrupts_dmac_0_IRQHandler /* CPUSS DMAC, Channel #0 */ 446 def_irq_handler cpuss_interrupts_dmac_1_IRQHandler /* CPUSS DMAC, Channel #1 */ 447 def_irq_handler cpuss_interrupts_dmac_2_IRQHandler /* CPUSS DMAC, Channel #2 */ 448 def_irq_handler cpuss_interrupts_dmac_3_IRQHandler /* CPUSS DMAC, Channel #3 */ 449 def_irq_handler cpuss_interrupts_dw0_0_IRQHandler /* CPUSS DataWire #0, Channel #0 */ 450 def_irq_handler cpuss_interrupts_dw0_1_IRQHandler /* CPUSS DataWire #0, Channel #1 */ 451 def_irq_handler cpuss_interrupts_dw0_2_IRQHandler /* CPUSS DataWire #0, Channel #2 */ 452 def_irq_handler cpuss_interrupts_dw0_3_IRQHandler /* CPUSS DataWire #0, Channel #3 */ 453 def_irq_handler cpuss_interrupts_dw0_4_IRQHandler /* CPUSS DataWire #0, Channel #4 */ 454 def_irq_handler cpuss_interrupts_dw0_5_IRQHandler /* CPUSS DataWire #0, Channel #5 */ 455 def_irq_handler cpuss_interrupts_dw0_6_IRQHandler /* CPUSS DataWire #0, Channel #6 */ 456 def_irq_handler cpuss_interrupts_dw0_7_IRQHandler /* CPUSS DataWire #0, Channel #7 */ 457 def_irq_handler cpuss_interrupts_dw0_8_IRQHandler /* CPUSS DataWire #0, Channel #8 */ 458 def_irq_handler cpuss_interrupts_dw0_9_IRQHandler /* CPUSS DataWire #0, Channel #9 */ 459 def_irq_handler cpuss_interrupts_dw0_10_IRQHandler /* CPUSS DataWire #0, Channel #10 */ 460 def_irq_handler cpuss_interrupts_dw0_11_IRQHandler /* CPUSS DataWire #0, Channel #11 */ 461 def_irq_handler cpuss_interrupts_dw0_12_IRQHandler /* CPUSS DataWire #0, Channel #12 */ 462 def_irq_handler cpuss_interrupts_dw0_13_IRQHandler /* CPUSS DataWire #0, Channel #13 */ 463 def_irq_handler cpuss_interrupts_dw0_14_IRQHandler /* CPUSS DataWire #0, Channel #14 */ 464 def_irq_handler cpuss_interrupts_dw0_15_IRQHandler /* CPUSS DataWire #0, Channel #15 */ 465 def_irq_handler cpuss_interrupts_dw0_16_IRQHandler /* CPUSS DataWire #0, Channel #16 */ 466 def_irq_handler cpuss_interrupts_dw0_17_IRQHandler /* CPUSS DataWire #0, Channel #17 */ 467 def_irq_handler cpuss_interrupts_dw0_18_IRQHandler /* CPUSS DataWire #0, Channel #18 */ 468 def_irq_handler cpuss_interrupts_dw0_19_IRQHandler /* CPUSS DataWire #0, Channel #19 */ 469 def_irq_handler cpuss_interrupts_dw0_20_IRQHandler /* CPUSS DataWire #0, Channel #20 */ 470 def_irq_handler cpuss_interrupts_dw0_21_IRQHandler /* CPUSS DataWire #0, Channel #21 */ 471 def_irq_handler cpuss_interrupts_dw0_22_IRQHandler /* CPUSS DataWire #0, Channel #22 */ 472 def_irq_handler cpuss_interrupts_dw0_23_IRQHandler /* CPUSS DataWire #0, Channel #23 */ 473 def_irq_handler cpuss_interrupts_dw0_24_IRQHandler /* CPUSS DataWire #0, Channel #24 */ 474 def_irq_handler cpuss_interrupts_dw0_25_IRQHandler /* CPUSS DataWire #0, Channel #25 */ 475 def_irq_handler cpuss_interrupts_dw0_26_IRQHandler /* CPUSS DataWire #0, Channel #26 */ 476 def_irq_handler cpuss_interrupts_dw0_27_IRQHandler /* CPUSS DataWire #0, Channel #27 */ 477 def_irq_handler cpuss_interrupts_dw0_28_IRQHandler /* CPUSS DataWire #0, Channel #28 */ 478 def_irq_handler cpuss_interrupts_dw1_0_IRQHandler /* CPUSS DataWire #1, Channel #0 */ 479 def_irq_handler cpuss_interrupts_dw1_1_IRQHandler /* CPUSS DataWire #1, Channel #1 */ 480 def_irq_handler cpuss_interrupts_dw1_2_IRQHandler /* CPUSS DataWire #1, Channel #2 */ 481 def_irq_handler cpuss_interrupts_dw1_3_IRQHandler /* CPUSS DataWire #1, Channel #3 */ 482 def_irq_handler cpuss_interrupts_dw1_4_IRQHandler /* CPUSS DataWire #1, Channel #4 */ 483 def_irq_handler cpuss_interrupts_dw1_5_IRQHandler /* CPUSS DataWire #1, Channel #5 */ 484 def_irq_handler cpuss_interrupts_dw1_6_IRQHandler /* CPUSS DataWire #1, Channel #6 */ 485 def_irq_handler cpuss_interrupts_dw1_7_IRQHandler /* CPUSS DataWire #1, Channel #7 */ 486 def_irq_handler cpuss_interrupts_dw1_8_IRQHandler /* CPUSS DataWire #1, Channel #8 */ 487 def_irq_handler cpuss_interrupts_dw1_9_IRQHandler /* CPUSS DataWire #1, Channel #9 */ 488 def_irq_handler cpuss_interrupts_dw1_10_IRQHandler /* CPUSS DataWire #1, Channel #10 */ 489 def_irq_handler cpuss_interrupts_dw1_11_IRQHandler /* CPUSS DataWire #1, Channel #11 */ 490 def_irq_handler cpuss_interrupts_dw1_12_IRQHandler /* CPUSS DataWire #1, Channel #12 */ 491 def_irq_handler cpuss_interrupts_dw1_13_IRQHandler /* CPUSS DataWire #1, Channel #13 */ 492 def_irq_handler cpuss_interrupts_dw1_14_IRQHandler /* CPUSS DataWire #1, Channel #14 */ 493 def_irq_handler cpuss_interrupts_dw1_15_IRQHandler /* CPUSS DataWire #1, Channel #15 */ 494 def_irq_handler cpuss_interrupts_dw1_16_IRQHandler /* CPUSS DataWire #1, Channel #16 */ 495 def_irq_handler cpuss_interrupts_dw1_17_IRQHandler /* CPUSS DataWire #1, Channel #17 */ 496 def_irq_handler cpuss_interrupts_dw1_18_IRQHandler /* CPUSS DataWire #1, Channel #18 */ 497 def_irq_handler cpuss_interrupts_dw1_19_IRQHandler /* CPUSS DataWire #1, Channel #19 */ 498 def_irq_handler cpuss_interrupts_dw1_20_IRQHandler /* CPUSS DataWire #1, Channel #20 */ 499 def_irq_handler cpuss_interrupts_dw1_21_IRQHandler /* CPUSS DataWire #1, Channel #21 */ 500 def_irq_handler cpuss_interrupts_dw1_22_IRQHandler /* CPUSS DataWire #1, Channel #22 */ 501 def_irq_handler cpuss_interrupts_dw1_23_IRQHandler /* CPUSS DataWire #1, Channel #23 */ 502 def_irq_handler cpuss_interrupts_dw1_24_IRQHandler /* CPUSS DataWire #1, Channel #24 */ 503 def_irq_handler cpuss_interrupts_dw1_25_IRQHandler /* CPUSS DataWire #1, Channel #25 */ 504 def_irq_handler cpuss_interrupts_dw1_26_IRQHandler /* CPUSS DataWire #1, Channel #26 */ 505 def_irq_handler cpuss_interrupts_dw1_27_IRQHandler /* CPUSS DataWire #1, Channel #27 */ 506 def_irq_handler cpuss_interrupts_dw1_28_IRQHandler /* CPUSS DataWire #1, Channel #28 */ 507 def_irq_handler cpuss_interrupts_fault_0_IRQHandler /* CPUSS Fault Structure Interrupt #0 */ 508 def_irq_handler cpuss_interrupts_fault_1_IRQHandler /* CPUSS Fault Structure Interrupt #1 */ 509 def_irq_handler cpuss_interrupt_crypto_IRQHandler /* CRYPTO Accelerator Interrupt */ 510 def_irq_handler cpuss_interrupt_fm_IRQHandler /* FLASH Macro Interrupt */ 511 def_irq_handler cpuss_interrupts_cm4_fp_IRQHandler /* Floating Point operation fault */ 512 def_irq_handler cpuss_interrupts_cm0_cti_0_IRQHandler /* CM0+ CTI #0 */ 513 def_irq_handler cpuss_interrupts_cm0_cti_1_IRQHandler /* CM0+ CTI #1 */ 514 def_irq_handler cpuss_interrupts_cm4_cti_0_IRQHandler /* CM4 CTI #0 */ 515 def_irq_handler cpuss_interrupts_cm4_cti_1_IRQHandler /* CM4 CTI #1 */ 516 def_irq_handler tcpwm_0_interrupts_0_IRQHandler /* TCPWM #0, Counter #0 */ 517 def_irq_handler tcpwm_0_interrupts_1_IRQHandler /* TCPWM #0, Counter #1 */ 518 def_irq_handler tcpwm_0_interrupts_2_IRQHandler /* TCPWM #0, Counter #2 */ 519 def_irq_handler tcpwm_0_interrupts_3_IRQHandler /* TCPWM #0, Counter #3 */ 520 def_irq_handler tcpwm_0_interrupts_4_IRQHandler /* TCPWM #0, Counter #4 */ 521 def_irq_handler tcpwm_0_interrupts_5_IRQHandler /* TCPWM #0, Counter #5 */ 522 def_irq_handler tcpwm_0_interrupts_6_IRQHandler /* TCPWM #0, Counter #6 */ 523 def_irq_handler tcpwm_0_interrupts_7_IRQHandler /* TCPWM #0, Counter #7 */ 524 def_irq_handler tcpwm_1_interrupts_0_IRQHandler /* TCPWM #1, Counter #0 */ 525 def_irq_handler tcpwm_1_interrupts_1_IRQHandler /* TCPWM #1, Counter #1 */ 526 def_irq_handler tcpwm_1_interrupts_2_IRQHandler /* TCPWM #1, Counter #2 */ 527 def_irq_handler tcpwm_1_interrupts_3_IRQHandler /* TCPWM #1, Counter #3 */ 528 def_irq_handler tcpwm_1_interrupts_4_IRQHandler /* TCPWM #1, Counter #4 */ 529 def_irq_handler tcpwm_1_interrupts_5_IRQHandler /* TCPWM #1, Counter #5 */ 530 def_irq_handler tcpwm_1_interrupts_6_IRQHandler /* TCPWM #1, Counter #6 */ 531 def_irq_handler tcpwm_1_interrupts_7_IRQHandler /* TCPWM #1, Counter #7 */ 532 def_irq_handler tcpwm_1_interrupts_8_IRQHandler /* TCPWM #1, Counter #8 */ 533 def_irq_handler tcpwm_1_interrupts_9_IRQHandler /* TCPWM #1, Counter #9 */ 534 def_irq_handler tcpwm_1_interrupts_10_IRQHandler /* TCPWM #1, Counter #10 */ 535 def_irq_handler tcpwm_1_interrupts_11_IRQHandler /* TCPWM #1, Counter #11 */ 536 def_irq_handler tcpwm_1_interrupts_12_IRQHandler /* TCPWM #1, Counter #12 */ 537 def_irq_handler tcpwm_1_interrupts_13_IRQHandler /* TCPWM #1, Counter #13 */ 538 def_irq_handler tcpwm_1_interrupts_14_IRQHandler /* TCPWM #1, Counter #14 */ 539 def_irq_handler tcpwm_1_interrupts_15_IRQHandler /* TCPWM #1, Counter #15 */ 540 def_irq_handler tcpwm_1_interrupts_16_IRQHandler /* TCPWM #1, Counter #16 */ 541 def_irq_handler tcpwm_1_interrupts_17_IRQHandler /* TCPWM #1, Counter #17 */ 542 def_irq_handler tcpwm_1_interrupts_18_IRQHandler /* TCPWM #1, Counter #18 */ 543 def_irq_handler tcpwm_1_interrupts_19_IRQHandler /* TCPWM #1, Counter #19 */ 544 def_irq_handler tcpwm_1_interrupts_20_IRQHandler /* TCPWM #1, Counter #20 */ 545 def_irq_handler tcpwm_1_interrupts_21_IRQHandler /* TCPWM #1, Counter #21 */ 546 def_irq_handler tcpwm_1_interrupts_22_IRQHandler /* TCPWM #1, Counter #22 */ 547 def_irq_handler tcpwm_1_interrupts_23_IRQHandler /* TCPWM #1, Counter #23 */ 548 def_irq_handler pass_interrupt_sar_IRQHandler /* SAR ADC interrupt */ 549 def_irq_handler audioss_0_interrupt_i2s_IRQHandler /* I2S0 Audio interrupt */ 550 def_irq_handler audioss_0_interrupt_pdm_IRQHandler /* PDM0/PCM0 Audio interrupt */ 551 def_irq_handler audioss_1_interrupt_i2s_IRQHandler /* I2S1 Audio interrupt */ 552 def_irq_handler profile_interrupt_IRQHandler /* Energy Profiler interrupt */ 553 def_irq_handler smif_interrupt_IRQHandler /* Serial Memory Interface interrupt */ 554 def_irq_handler usb_interrupt_hi_IRQHandler /* USB Interrupt */ 555 def_irq_handler usb_interrupt_med_IRQHandler /* USB Interrupt */ 556 def_irq_handler usb_interrupt_lo_IRQHandler /* USB Interrupt */ 557 def_irq_handler sdhc_0_interrupt_wakeup_IRQHandler /* SDIO wakeup interrupt for mxsdhc */ 558 def_irq_handler sdhc_0_interrupt_general_IRQHandler /* Consolidated interrupt for mxsdhc for everything else */ 559 def_irq_handler sdhc_1_interrupt_wakeup_IRQHandler /* EEMC wakeup interrupt for mxsdhc, not used */ 560 def_irq_handler sdhc_1_interrupt_general_IRQHandler /* Consolidated interrupt for mxsdhc for everything else */ 561 562 .end 563 564 565/* [] END OF FILE */ 566