1;******************************************************************************* 2;* @file startup_XMC4500.s 3;* @brief CMSIS Core Device Startup File for 4;* Infineon XMC4500 Device Series 5;* @version V1.7 6;* @date June 2016 7;* 8;* @cond 9;********************************************************************************************************************* 10;* Copyright (c) 2012-2016, Infineon Technologies AG 11;* All rights reserved. 12;* 13;* Redistribution and use in source and binary forms, with or without modification,are permitted provided that the 14;* following conditions are met: 15;* 16;* Redistributions of source code must retain the above copyright notice, this list of conditions and the following 17;* disclaimer. 18;* 19;* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following 20;* disclaimer in the documentation and/or other materials provided with the distribution. 21;* 22;* Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote 23;* products derived from this software without specific prior written permission. 24;* 25;* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 26;* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 27;* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 28;* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 29;* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 30;* WHETHER IN CONTRACT, STRICT LIABILITY,OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 31;* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32;* 33;* To improve the quality of the software, users are encouraged to share modifications, enhancements or bug fixes with 34;* Infineon Technologies AG dave@infineon.com). 35;********************************************************************************************************************* 36;* 37;************************** Version History ************************************ 38; V1.00, February 2012, First version 39; V1.10, August 2012, Adding Dave3 init function call 40; V1.20, February 2013, FIX for CPU prefetch bug implemented 41; V1.30, August 2013, Fix the bug of stack pointer alignment to a 8 byte boundary 42; V1.40, November 2014, Disable CPU workaround. 43; To enable the workaround add to the ASM defines: 44; ENABLE_PMU_CM_001_WORKAROUND 45; Increased stack size. 46; Removed DAVE3 dependency 47; V1.50, December 2014, Fix not available entries in vector table 48; V1.6 , March 2016, Fix weak definition of Veneers. 49; Only relevant for AA and AB step, which needs ENABLE_PMU_CM_001_WORKAROUND 50; V1.7, June 2016, Rename ENABLE_CPU_CM_001_WORKAROUND to ENABLE_PMU_CM_001_WORKAROUND 51; Action required: If using AA/AB step, use ENABLE_PMU_CM_001_WORKAROUND instead of ENABLE_CPU_CM_001_WORKAROUND 52;******************************************************************************* 53;* @endcond 54 55; ------------------ <<< Use Configuration Wizard in Context Menu >>> ------------------ 56 57; <h> Stack Configuration 58; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> 59; </h> 60 61Stack_Size EQU 0x00000800 62 63 AREA STACK, NOINIT, READWRITE, ALIGN=3 64Stack_Mem SPACE Stack_Size 65__initial_sp 66 67 68; <h> Heap Configuration 69; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> 70; </h> 71 72Heap_Size EQU 0x00000200 73 74 AREA HEAP, NOINIT, READWRITE, ALIGN=3 75__heap_base 76Heap_Mem SPACE Heap_Size 77__heap_limit 78 79 PRESERVE8 80 THUMB 81 82 IF :DEF:ENABLE_PMU_CM_001_WORKAROUND 83 MACRO 84 Entry $Handler 85 DCD $Handler._Veneer 86 MEND 87 ELSE 88 MACRO 89 Entry $Handler 90 DCD $Handler 91 MEND 92 ENDIF 93 94; Vector Table Mapped to Address 0 at Reset 95 96 AREA RESET, DATA, READONLY 97 EXPORT __Vectors 98 EXPORT __Vectors_End 99 EXPORT __Vectors_Size 100 101__Vectors DCD __initial_sp ; 0 Top of Stack 102 DCD Reset_Handler ; 1 Reset Handler 103 Entry NMI_Handler ; 2 NMI Handler 104 Entry HardFault_Handler ; 3 Hard Fault Handler 105 Entry MemManage_Handler ; 4 MPU Fault Handler 106 Entry BusFault_Handler ; 5 Bus Fault Handler 107 Entry UsageFault_Handler ; 6 Usage Fault Handler 108 DCD 0 ; 7 Reserved 109 DCD 0 ; 8 Reserved 110 DCD 0 ; 9 Reserved 111 DCD 0 ; 10 Reserved 112 Entry SVC_Handler ; 11 SVCall Handler 113 Entry DebugMon_Handler ; 12 Debug Monitor Handler 114 DCD 0 ; 13 Reserved 115 Entry PendSV_Handler ; 14 PendSV Handler 116 Entry SysTick_Handler ; 15 SysTick Handler 117 118; Interrupt Handlers for Service Requests (SR) from XMC4500 Peripherals */ 119 Entry SCU_0_IRQHandler ; Handler name for SR SCU_0 120 Entry ERU0_0_IRQHandler ; Handler name for SR ERU0_0 121 Entry ERU0_1_IRQHandler ; Handler name for SR ERU0_1 122 Entry ERU0_2_IRQHandler ; Handler name for SR ERU0_2 123 Entry ERU0_3_IRQHandler ; Handler name for SR ERU0_3 124 Entry ERU1_0_IRQHandler ; Handler name for SR ERU1_0 125 Entry ERU1_1_IRQHandler ; Handler name for SR ERU1_1 126 Entry ERU1_2_IRQHandler ; Handler name for SR ERU1_2 127 Entry ERU1_3_IRQHandler ; Handler name for SR ERU1_3 128 DCD 0 ; Not Available 129 DCD 0 ; Not Available 130 DCD 0 ; Not Available 131 Entry PMU0_0_IRQHandler ; Handler name for SR PMU0_0 132 DCD 0 ; Not Available 133 Entry VADC0_C0_0_IRQHandler ; Handler name for SR VADC0_C0_0 134 Entry VADC0_C0_1_IRQHandler ; Handler name for SR VADC0_C0_1 135 Entry VADC0_C0_2_IRQHandler ; Handler name for SR VADC0_C0_1 136 Entry VADC0_C0_3_IRQHandler ; Handler name for SR VADC0_C0_3 137 Entry VADC0_G0_0_IRQHandler ; Handler name for SR VADC0_G0_0 138 Entry VADC0_G0_1_IRQHandler ; Handler name for SR VADC0_G0_1 139 Entry VADC0_G0_2_IRQHandler ; Handler name for SR VADC0_G0_2 140 Entry VADC0_G0_3_IRQHandler ; Handler name for SR VADC0_G0_3 141 Entry VADC0_G1_0_IRQHandler ; Handler name for SR VADC0_G1_0 142 Entry VADC0_G1_1_IRQHandler ; Handler name for SR VADC0_G1_1 143 Entry VADC0_G1_2_IRQHandler ; Handler name for SR VADC0_G1_2 144 Entry VADC0_G1_3_IRQHandler ; Handler name for SR VADC0_G1_3 145 Entry VADC0_G2_0_IRQHandler ; Handler name for SR VADC0_G2_0 146 Entry VADC0_G2_1_IRQHandler ; Handler name for SR VADC0_G2_1 147 Entry VADC0_G2_2_IRQHandler ; Handler name for SR VADC0_G2_2 148 Entry VADC0_G2_3_IRQHandler ; Handler name for SR VADC0_G2_3 149 Entry VADC0_G3_0_IRQHandler ; Handler name for SR VADC0_G3_0 150 Entry VADC0_G3_1_IRQHandler ; Handler name for SR VADC0_G3_1 151 Entry VADC0_G3_2_IRQHandler ; Handler name for SR VADC0_G3_2 152 Entry VADC0_G3_3_IRQHandler ; Handler name for SR VADC0_G3_3 153 Entry DSD0_0_IRQHandler ; Handler name for SR DSD_SRM_0 154 Entry DSD0_1_IRQHandler ; Handler name for SR DSD_SRM_1 155 Entry DSD0_2_IRQHandler ; Handler name for SR DSD_SRM_2 156 Entry DSD0_3_IRQHandler ; Handler name for SR DSD_SRM_3 157 Entry DSD0_4_IRQHandler ; Handler name for SR DSD_SRA_0 158 Entry DSD0_5_IRQHandler ; Handler name for SR DSD_SRA_1 159 Entry DSD0_6_IRQHandler ; Handler name for SR DSD_SRA_2 160 Entry DSD0_7_IRQHandler ; Handler name for SR DSD_SRA_3 161 Entry DAC0_0_IRQHandler ; Handler name for SR DAC0_0 162 Entry DAC0_1_IRQHandler ; Handler name for SR DAC0_1 163 Entry CCU40_0_IRQHandler ; Handler name for SR CCU40_0 164 Entry CCU40_1_IRQHandler ; Handler name for SR CCU40_1 165 Entry CCU40_2_IRQHandler ; Handler name for SR CCU40_2 166 Entry CCU40_3_IRQHandler ; Handler name for SR CCU40_3 167 Entry CCU41_0_IRQHandler ; Handler name for SR CCU41_0 168 Entry CCU41_1_IRQHandler ; Handler name for SR CCU41_1 169 Entry CCU41_2_IRQHandler ; Handler name for SR CCU41_2 170 Entry CCU41_3_IRQHandler ; Handler name for SR CCU41_3 171 Entry CCU42_0_IRQHandler ; Handler name for SR CCU42_0 172 Entry CCU42_1_IRQHandler ; Handler name for SR CCU42_1 173 Entry CCU42_2_IRQHandler ; Handler name for SR CCU42_2 174 Entry CCU42_3_IRQHandler ; Handler name for SR CCU42_3 175 Entry CCU43_0_IRQHandler ; Handler name for SR CCU43_0 176 Entry CCU43_1_IRQHandler ; Handler name for SR CCU43_1 177 Entry CCU43_2_IRQHandler ; Handler name for SR CCU43_2 178 Entry CCU43_3_IRQHandler ; Handler name for SR CCU43_3 179 Entry CCU80_0_IRQHandler ; Handler name for SR CCU80_0 180 Entry CCU80_1_IRQHandler ; Handler name for SR CCU80_1 181 Entry CCU80_2_IRQHandler ; Handler name for SR CCU80_2 182 Entry CCU80_3_IRQHandler ; Handler name for SR CCU80_3 183 Entry CCU81_0_IRQHandler ; Handler name for SR CCU81_0 184 Entry CCU81_1_IRQHandler ; Handler name for SR CCU81_1 185 Entry CCU81_2_IRQHandler ; Handler name for SR CCU81_2 186 Entry CCU81_3_IRQHandler ; Handler name for SR CCU81_3 187 Entry POSIF0_0_IRQHandler ; Handler name for SR POSIF0_0 188 Entry POSIF0_1_IRQHandler ; Handler name for SR POSIF0_1 189 Entry POSIF1_0_IRQHandler ; Handler name for SR POSIF1_0 190 Entry POSIF1_1_IRQHandler ; Handler name for SR POSIF1_1 191 DCD 0 ; Not Available 192 DCD 0 ; Not Available 193 DCD 0 ; Not Available 194 DCD 0 ; Not Available 195 Entry CAN0_0_IRQHandler ; Handler name for SR CAN0_0 196 Entry CAN0_1_IRQHandler ; Handler name for SR CAN0_1 197 Entry CAN0_2_IRQHandler ; Handler name for SR CAN0_2 198 Entry CAN0_3_IRQHandler ; Handler name for SR CAN0_3 199 Entry CAN0_4_IRQHandler ; Handler name for SR CAN0_4 200 Entry CAN0_5_IRQHandler ; Handler name for SR CAN0_5 201 Entry CAN0_6_IRQHandler ; Handler name for SR CAN0_6 202 Entry CAN0_7_IRQHandler ; Handler name for SR CAN0_7 203 Entry USIC0_0_IRQHandler ; Handler name for SR USIC0_0 204 Entry USIC0_1_IRQHandler ; Handler name for SR USIC0_1 205 Entry USIC0_2_IRQHandler ; Handler name for SR USIC0_2 206 Entry USIC0_3_IRQHandler ; Handler name for SR USIC0_3 207 Entry USIC0_4_IRQHandler ; Handler name for SR USIC0_4 208 Entry USIC0_5_IRQHandler ; Handler name for SR USIC0_5 209 Entry USIC1_0_IRQHandler ; Handler name for SR USIC1_0 210 Entry USIC1_1_IRQHandler ; Handler name for SR USIC1_1 211 Entry USIC1_2_IRQHandler ; Handler name for SR USIC1_2 212 Entry USIC1_3_IRQHandler ; Handler name for SR USIC1_3 213 Entry USIC1_4_IRQHandler ; Handler name for SR USIC1_4 214 Entry USIC1_5_IRQHandler ; Handler name for SR USIC1_5 215 Entry USIC2_0_IRQHandler ; Handler name for SR USIC2_0 216 Entry USIC2_1_IRQHandler ; Handler name for SR USIC2_1 217 Entry USIC2_2_IRQHandler ; Handler name for SR USIC2_2 218 Entry USIC2_3_IRQHandler ; Handler name for SR USIC2_3 219 Entry USIC2_4_IRQHandler ; Handler name for SR USIC2_4 220 Entry USIC2_5_IRQHandler ; Handler name for SR USIC2_5 221 Entry LEDTS0_0_IRQHandler ; Handler name for SR LEDTS0_0 222 DCD 0 ; Not Available 223 Entry FCE0_0_IRQHandler ; Handler name for SR FCE0_0 224 Entry GPDMA0_0_IRQHandler ; Handler name for SR GPDMA0_0 225 Entry SDMMC0_0_IRQHandler ; Handler name for SR SDMMC0_0 226 Entry USB0_0_IRQHandler ; Handler name for SR USB0_0 227 Entry ETH0_0_IRQHandler ; Handler name for SR ETH0_0 228 DCD 0 ; Not Available 229 Entry GPDMA1_0_IRQHandler ; Handler name for SR GPDMA0_1 230 DCD 0 ; Not Available 231__Vectors_End 232 233__Vectors_Size EQU __Vectors_End - __Vectors 234 235 AREA |.text|, CODE, READONLY 236 237; Reset Handler 238 239Reset_Handler PROC 240 EXPORT Reset_Handler [WEAK] 241 IMPORT SystemInit 242 IMPORT __main 243 LDR SP, =__initial_sp 244 LDR R0, =SystemInit 245 BLX R0 246 LDR R0, =__main 247 BX R0 248 ENDP 249 250; Dummy Exception Handlers (infinite loops which can be modified) 251 252Default_Handler PROC 253 EXPORT NMI_Handler [WEAK] 254 EXPORT HardFault_Handler [WEAK] 255 EXPORT MemManage_Handler [WEAK] 256 EXPORT BusFault_Handler [WEAK] 257 EXPORT UsageFault_Handler [WEAK] 258 EXPORT SVC_Handler [WEAK] 259 EXPORT DebugMon_Handler [WEAK] 260 EXPORT PendSV_Handler [WEAK] 261 EXPORT SysTick_Handler [WEAK] 262 263 EXPORT SCU_0_IRQHandler [WEAK] 264 EXPORT ERU0_0_IRQHandler [WEAK] 265 EXPORT ERU0_1_IRQHandler [WEAK] 266 EXPORT ERU0_2_IRQHandler [WEAK] 267 EXPORT ERU0_3_IRQHandler [WEAK] 268 EXPORT ERU1_0_IRQHandler [WEAK] 269 EXPORT ERU1_1_IRQHandler [WEAK] 270 EXPORT ERU1_2_IRQHandler [WEAK] 271 EXPORT ERU1_3_IRQHandler [WEAK] 272 EXPORT PMU0_0_IRQHandler [WEAK] 273 EXPORT VADC0_C0_0_IRQHandler [WEAK] 274 EXPORT VADC0_C0_1_IRQHandler [WEAK] 275 EXPORT VADC0_C0_2_IRQHandler [WEAK] 276 EXPORT VADC0_C0_3_IRQHandler [WEAK] 277 EXPORT VADC0_G0_0_IRQHandler [WEAK] 278 EXPORT VADC0_G0_1_IRQHandler [WEAK] 279 EXPORT VADC0_G0_2_IRQHandler [WEAK] 280 EXPORT VADC0_G0_3_IRQHandler [WEAK] 281 EXPORT VADC0_G1_0_IRQHandler [WEAK] 282 EXPORT VADC0_G1_1_IRQHandler [WEAK] 283 EXPORT VADC0_G1_2_IRQHandler [WEAK] 284 EXPORT VADC0_G1_3_IRQHandler [WEAK] 285 EXPORT VADC0_G2_0_IRQHandler [WEAK] 286 EXPORT VADC0_G2_1_IRQHandler [WEAK] 287 EXPORT VADC0_G2_2_IRQHandler [WEAK] 288 EXPORT VADC0_G2_3_IRQHandler [WEAK] 289 EXPORT VADC0_G3_0_IRQHandler [WEAK] 290 EXPORT VADC0_G3_1_IRQHandler [WEAK] 291 EXPORT VADC0_G3_2_IRQHandler [WEAK] 292 EXPORT VADC0_G3_3_IRQHandler [WEAK] 293 EXPORT DSD0_0_IRQHandler [WEAK] 294 EXPORT DSD0_1_IRQHandler [WEAK] 295 EXPORT DSD0_2_IRQHandler [WEAK] 296 EXPORT DSD0_3_IRQHandler [WEAK] 297 EXPORT DSD0_4_IRQHandler [WEAK] 298 EXPORT DSD0_5_IRQHandler [WEAK] 299 EXPORT DSD0_6_IRQHandler [WEAK] 300 EXPORT DSD0_7_IRQHandler [WEAK] 301 EXPORT DAC0_0_IRQHandler [WEAK] 302 EXPORT DAC0_1_IRQHandler [WEAK] 303 EXPORT CCU40_0_IRQHandler [WEAK] 304 EXPORT CCU40_1_IRQHandler [WEAK] 305 EXPORT CCU40_2_IRQHandler [WEAK] 306 EXPORT CCU40_3_IRQHandler [WEAK] 307 EXPORT CCU41_0_IRQHandler [WEAK] 308 EXPORT CCU41_1_IRQHandler [WEAK] 309 EXPORT CCU41_2_IRQHandler [WEAK] 310 EXPORT CCU41_3_IRQHandler [WEAK] 311 EXPORT CCU42_0_IRQHandler [WEAK] 312 EXPORT CCU42_1_IRQHandler [WEAK] 313 EXPORT CCU42_2_IRQHandler [WEAK] 314 EXPORT CCU42_3_IRQHandler [WEAK] 315 EXPORT CCU43_0_IRQHandler [WEAK] 316 EXPORT CCU43_1_IRQHandler [WEAK] 317 EXPORT CCU43_2_IRQHandler [WEAK] 318 EXPORT CCU43_3_IRQHandler [WEAK] 319 EXPORT CCU80_0_IRQHandler [WEAK] 320 EXPORT CCU80_1_IRQHandler [WEAK] 321 EXPORT CCU80_2_IRQHandler [WEAK] 322 EXPORT CCU80_3_IRQHandler [WEAK] 323 EXPORT CCU81_0_IRQHandler [WEAK] 324 EXPORT CCU81_1_IRQHandler [WEAK] 325 EXPORT CCU81_2_IRQHandler [WEAK] 326 EXPORT CCU81_3_IRQHandler [WEAK] 327 EXPORT POSIF0_0_IRQHandler [WEAK] 328 EXPORT POSIF0_1_IRQHandler [WEAK] 329 EXPORT POSIF1_0_IRQHandler [WEAK] 330 EXPORT POSIF1_1_IRQHandler [WEAK] 331 EXPORT CAN0_0_IRQHandler [WEAK] 332 EXPORT CAN0_1_IRQHandler [WEAK] 333 EXPORT CAN0_2_IRQHandler [WEAK] 334 EXPORT CAN0_3_IRQHandler [WEAK] 335 EXPORT CAN0_4_IRQHandler [WEAK] 336 EXPORT CAN0_5_IRQHandler [WEAK] 337 EXPORT CAN0_6_IRQHandler [WEAK] 338 EXPORT CAN0_7_IRQHandler [WEAK] 339 EXPORT USIC0_0_IRQHandler [WEAK] 340 EXPORT USIC0_1_IRQHandler [WEAK] 341 EXPORT USIC0_2_IRQHandler [WEAK] 342 EXPORT USIC0_3_IRQHandler [WEAK] 343 EXPORT USIC0_4_IRQHandler [WEAK] 344 EXPORT USIC0_5_IRQHandler [WEAK] 345 EXPORT USIC1_0_IRQHandler [WEAK] 346 EXPORT USIC1_1_IRQHandler [WEAK] 347 EXPORT USIC1_2_IRQHandler [WEAK] 348 EXPORT USIC1_3_IRQHandler [WEAK] 349 EXPORT USIC1_4_IRQHandler [WEAK] 350 EXPORT USIC1_5_IRQHandler [WEAK] 351 EXPORT USIC2_0_IRQHandler [WEAK] 352 EXPORT USIC2_1_IRQHandler [WEAK] 353 EXPORT USIC2_2_IRQHandler [WEAK] 354 EXPORT USIC2_3_IRQHandler [WEAK] 355 EXPORT USIC2_4_IRQHandler [WEAK] 356 EXPORT USIC2_5_IRQHandler [WEAK] 357 EXPORT LEDTS0_0_IRQHandler [WEAK] 358 EXPORT FCE0_0_IRQHandler [WEAK] 359 EXPORT GPDMA0_0_IRQHandler [WEAK] 360 EXPORT SDMMC0_0_IRQHandler [WEAK] 361 EXPORT USB0_0_IRQHandler [WEAK] 362 EXPORT ETH0_0_IRQHandler [WEAK] 363 EXPORT GPDMA1_0_IRQHandler [WEAK] 364 365NMI_Handler 366HardFault_Handler 367MemManage_Handler 368BusFault_Handler 369UsageFault_Handler 370SVC_Handler 371DebugMon_Handler 372PendSV_Handler 373SysTick_Handler 374SCU_0_IRQHandler 375ERU0_0_IRQHandler 376ERU0_1_IRQHandler 377ERU0_2_IRQHandler 378ERU0_3_IRQHandler 379ERU1_0_IRQHandler 380ERU1_1_IRQHandler 381ERU1_2_IRQHandler 382ERU1_3_IRQHandler 383PMU0_0_IRQHandler 384VADC0_C0_0_IRQHandler 385VADC0_C0_1_IRQHandler 386VADC0_C0_2_IRQHandler 387VADC0_C0_3_IRQHandler 388VADC0_G0_0_IRQHandler 389VADC0_G0_1_IRQHandler 390VADC0_G0_2_IRQHandler 391VADC0_G0_3_IRQHandler 392VADC0_G1_0_IRQHandler 393VADC0_G1_1_IRQHandler 394VADC0_G1_2_IRQHandler 395VADC0_G1_3_IRQHandler 396VADC0_G2_0_IRQHandler 397VADC0_G2_1_IRQHandler 398VADC0_G2_2_IRQHandler 399VADC0_G2_3_IRQHandler 400VADC0_G3_0_IRQHandler 401VADC0_G3_1_IRQHandler 402VADC0_G3_2_IRQHandler 403VADC0_G3_3_IRQHandler 404DSD0_0_IRQHandler 405DSD0_1_IRQHandler 406DSD0_2_IRQHandler 407DSD0_3_IRQHandler 408DSD0_4_IRQHandler 409DSD0_5_IRQHandler 410DSD0_6_IRQHandler 411DSD0_7_IRQHandler 412DAC0_0_IRQHandler 413DAC0_1_IRQHandler 414CCU40_0_IRQHandler 415CCU40_1_IRQHandler 416CCU40_2_IRQHandler 417CCU40_3_IRQHandler 418CCU41_0_IRQHandler 419CCU41_1_IRQHandler 420CCU41_2_IRQHandler 421CCU41_3_IRQHandler 422CCU42_0_IRQHandler 423CCU42_1_IRQHandler 424CCU42_2_IRQHandler 425CCU42_3_IRQHandler 426CCU43_0_IRQHandler 427CCU43_1_IRQHandler 428CCU43_2_IRQHandler 429CCU43_3_IRQHandler 430CCU80_0_IRQHandler 431CCU80_1_IRQHandler 432CCU80_2_IRQHandler 433CCU80_3_IRQHandler 434CCU81_0_IRQHandler 435CCU81_1_IRQHandler 436CCU81_2_IRQHandler 437CCU81_3_IRQHandler 438POSIF0_0_IRQHandler 439POSIF0_1_IRQHandler 440POSIF1_0_IRQHandler 441POSIF1_1_IRQHandler 442CAN0_0_IRQHandler 443CAN0_1_IRQHandler 444CAN0_2_IRQHandler 445CAN0_3_IRQHandler 446CAN0_4_IRQHandler 447CAN0_5_IRQHandler 448CAN0_6_IRQHandler 449CAN0_7_IRQHandler 450USIC0_0_IRQHandler 451USIC0_1_IRQHandler 452USIC0_2_IRQHandler 453USIC0_3_IRQHandler 454USIC0_4_IRQHandler 455USIC0_5_IRQHandler 456USIC1_0_IRQHandler 457USIC1_1_IRQHandler 458USIC1_2_IRQHandler 459USIC1_3_IRQHandler 460USIC1_4_IRQHandler 461USIC1_5_IRQHandler 462USIC2_0_IRQHandler 463USIC2_1_IRQHandler 464USIC2_2_IRQHandler 465USIC2_3_IRQHandler 466USIC2_4_IRQHandler 467USIC2_5_IRQHandler 468LEDTS0_0_IRQHandler 469FCE0_0_IRQHandler 470GPDMA0_0_IRQHandler 471SDMMC0_0_IRQHandler 472USB0_0_IRQHandler 473ETH0_0_IRQHandler 474GPDMA1_0_IRQHandler 475 476 B . 477 478 ENDP 479 480 IF :DEF:ENABLE_PMU_CM_001_WORKAROUND 481 482 MACRO 483 Insert_ExceptionHandlerVeneer $Handler_Func 484$Handler_Func._Veneer\ 485 PROC 486 EXPORT $Handler_Func._Veneer [WEAK] 487 LDR R0, =$Handler_Func 488 PUSH {LR} ;/* Breaks AAPCS */ 489 SUB SP,#4 ;/* Restores AAPCS */ 490 BLX R0 491 ADD SP,#4 492 POP {PC} 493 ALIGN 494 LTORG 495 ENDP 496 MEND 497 498 Insert_ExceptionHandlerVeneer NMI_Handler 499 Insert_ExceptionHandlerVeneer HardFault_Handler 500 Insert_ExceptionHandlerVeneer MemManage_Handler 501 Insert_ExceptionHandlerVeneer BusFault_Handler 502 Insert_ExceptionHandlerVeneer UsageFault_Handler 503 Insert_ExceptionHandlerVeneer SVC_Handler 504 Insert_ExceptionHandlerVeneer DebugMon_Handler 505 Insert_ExceptionHandlerVeneer PendSV_Handler 506 Insert_ExceptionHandlerVeneer SysTick_Handler 507 508 Insert_ExceptionHandlerVeneer SCU_0_IRQHandler 509 Insert_ExceptionHandlerVeneer ERU0_0_IRQHandler 510 Insert_ExceptionHandlerVeneer ERU0_1_IRQHandler 511 Insert_ExceptionHandlerVeneer ERU0_2_IRQHandler 512 Insert_ExceptionHandlerVeneer ERU0_3_IRQHandler 513 Insert_ExceptionHandlerVeneer ERU1_0_IRQHandler 514 Insert_ExceptionHandlerVeneer ERU1_1_IRQHandler 515 Insert_ExceptionHandlerVeneer ERU1_2_IRQHandler 516 Insert_ExceptionHandlerVeneer ERU1_3_IRQHandler 517 Insert_ExceptionHandlerVeneer PMU0_0_IRQHandler 518 Insert_ExceptionHandlerVeneer VADC0_C0_0_IRQHandler 519 Insert_ExceptionHandlerVeneer VADC0_C0_1_IRQHandler 520 Insert_ExceptionHandlerVeneer VADC0_C0_2_IRQHandler 521 Insert_ExceptionHandlerVeneer VADC0_C0_3_IRQHandler 522 Insert_ExceptionHandlerVeneer VADC0_G0_0_IRQHandler 523 Insert_ExceptionHandlerVeneer VADC0_G0_1_IRQHandler 524 Insert_ExceptionHandlerVeneer VADC0_G0_2_IRQHandler 525 Insert_ExceptionHandlerVeneer VADC0_G0_3_IRQHandler 526 Insert_ExceptionHandlerVeneer VADC0_G1_0_IRQHandler 527 Insert_ExceptionHandlerVeneer VADC0_G1_1_IRQHandler 528 Insert_ExceptionHandlerVeneer VADC0_G1_2_IRQHandler 529 Insert_ExceptionHandlerVeneer VADC0_G1_3_IRQHandler 530 Insert_ExceptionHandlerVeneer VADC0_G2_0_IRQHandler 531 Insert_ExceptionHandlerVeneer VADC0_G2_1_IRQHandler 532 Insert_ExceptionHandlerVeneer VADC0_G2_2_IRQHandler 533 Insert_ExceptionHandlerVeneer VADC0_G2_3_IRQHandler 534 Insert_ExceptionHandlerVeneer VADC0_G3_0_IRQHandler 535 Insert_ExceptionHandlerVeneer VADC0_G3_1_IRQHandler 536 Insert_ExceptionHandlerVeneer VADC0_G3_2_IRQHandler 537 Insert_ExceptionHandlerVeneer VADC0_G3_3_IRQHandler 538 Insert_ExceptionHandlerVeneer DSD0_0_IRQHandler 539 Insert_ExceptionHandlerVeneer DSD0_1_IRQHandler 540 Insert_ExceptionHandlerVeneer DSD0_2_IRQHandler 541 Insert_ExceptionHandlerVeneer DSD0_3_IRQHandler 542 Insert_ExceptionHandlerVeneer DSD0_4_IRQHandler 543 Insert_ExceptionHandlerVeneer DSD0_5_IRQHandler 544 Insert_ExceptionHandlerVeneer DSD0_6_IRQHandler 545 Insert_ExceptionHandlerVeneer DSD0_7_IRQHandler 546 Insert_ExceptionHandlerVeneer DAC0_0_IRQHandler 547 Insert_ExceptionHandlerVeneer DAC0_1_IRQHandler 548 Insert_ExceptionHandlerVeneer CCU40_0_IRQHandler 549 Insert_ExceptionHandlerVeneer CCU40_1_IRQHandler 550 Insert_ExceptionHandlerVeneer CCU40_2_IRQHandler 551 Insert_ExceptionHandlerVeneer CCU40_3_IRQHandler 552 Insert_ExceptionHandlerVeneer CCU41_0_IRQHandler 553 Insert_ExceptionHandlerVeneer CCU41_1_IRQHandler 554 Insert_ExceptionHandlerVeneer CCU41_2_IRQHandler 555 Insert_ExceptionHandlerVeneer CCU41_3_IRQHandler 556 Insert_ExceptionHandlerVeneer CCU42_0_IRQHandler 557 Insert_ExceptionHandlerVeneer CCU42_1_IRQHandler 558 Insert_ExceptionHandlerVeneer CCU42_2_IRQHandler 559 Insert_ExceptionHandlerVeneer CCU42_3_IRQHandler 560 Insert_ExceptionHandlerVeneer CCU43_0_IRQHandler 561 Insert_ExceptionHandlerVeneer CCU43_1_IRQHandler 562 Insert_ExceptionHandlerVeneer CCU43_2_IRQHandler 563 Insert_ExceptionHandlerVeneer CCU43_3_IRQHandler 564 Insert_ExceptionHandlerVeneer CCU80_0_IRQHandler 565 Insert_ExceptionHandlerVeneer CCU80_1_IRQHandler 566 Insert_ExceptionHandlerVeneer CCU80_2_IRQHandler 567 Insert_ExceptionHandlerVeneer CCU80_3_IRQHandler 568 Insert_ExceptionHandlerVeneer CCU81_0_IRQHandler 569 Insert_ExceptionHandlerVeneer CCU81_1_IRQHandler 570 Insert_ExceptionHandlerVeneer CCU81_2_IRQHandler 571 Insert_ExceptionHandlerVeneer CCU81_3_IRQHandler 572 Insert_ExceptionHandlerVeneer POSIF0_0_IRQHandler 573 Insert_ExceptionHandlerVeneer POSIF0_1_IRQHandler 574 Insert_ExceptionHandlerVeneer POSIF1_0_IRQHandler 575 Insert_ExceptionHandlerVeneer POSIF1_1_IRQHandler 576 Insert_ExceptionHandlerVeneer CAN0_0_IRQHandler 577 Insert_ExceptionHandlerVeneer CAN0_1_IRQHandler 578 Insert_ExceptionHandlerVeneer CAN0_2_IRQHandler 579 Insert_ExceptionHandlerVeneer CAN0_3_IRQHandler 580 Insert_ExceptionHandlerVeneer CAN0_4_IRQHandler 581 Insert_ExceptionHandlerVeneer CAN0_5_IRQHandler 582 Insert_ExceptionHandlerVeneer CAN0_6_IRQHandler 583 Insert_ExceptionHandlerVeneer CAN0_7_IRQHandler 584 Insert_ExceptionHandlerVeneer USIC0_0_IRQHandler 585 Insert_ExceptionHandlerVeneer USIC0_1_IRQHandler 586 Insert_ExceptionHandlerVeneer USIC0_2_IRQHandler 587 Insert_ExceptionHandlerVeneer USIC0_3_IRQHandler 588 Insert_ExceptionHandlerVeneer USIC0_4_IRQHandler 589 Insert_ExceptionHandlerVeneer USIC0_5_IRQHandler 590 Insert_ExceptionHandlerVeneer USIC1_0_IRQHandler 591 Insert_ExceptionHandlerVeneer USIC1_1_IRQHandler 592 Insert_ExceptionHandlerVeneer USIC1_2_IRQHandler 593 Insert_ExceptionHandlerVeneer USIC1_3_IRQHandler 594 Insert_ExceptionHandlerVeneer USIC1_4_IRQHandler 595 Insert_ExceptionHandlerVeneer USIC1_5_IRQHandler 596 Insert_ExceptionHandlerVeneer USIC2_0_IRQHandler 597 Insert_ExceptionHandlerVeneer USIC2_1_IRQHandler 598 Insert_ExceptionHandlerVeneer USIC2_2_IRQHandler 599 Insert_ExceptionHandlerVeneer USIC2_3_IRQHandler 600 Insert_ExceptionHandlerVeneer USIC2_4_IRQHandler 601 Insert_ExceptionHandlerVeneer USIC2_5_IRQHandler 602 Insert_ExceptionHandlerVeneer LEDTS0_0_IRQHandler 603 Insert_ExceptionHandlerVeneer FCE0_0_IRQHandler 604 Insert_ExceptionHandlerVeneer GPDMA0_0_IRQHandler 605 Insert_ExceptionHandlerVeneer SDMMC0_0_IRQHandler 606 Insert_ExceptionHandlerVeneer USB0_0_IRQHandler 607 Insert_ExceptionHandlerVeneer ETH0_0_IRQHandler 608 Insert_ExceptionHandlerVeneer GPDMA1_0_IRQHandler 609 ENDIF 610 611 ALIGN 612 613; User Initial Stack & Heap 614 615 IF :DEF:__MICROLIB 616 617 EXPORT __initial_sp 618 EXPORT __heap_base 619 EXPORT __heap_limit 620 621 ELSE 622 623 IMPORT __use_two_region_memory 624 EXPORT __user_initial_stackheap 625__user_initial_stackheap 626 627 LDR R0, = Heap_Mem 628 LDR R1, =(Stack_Mem + Stack_Size) 629 LDR R2, = (Heap_Mem + Heap_Size) 630 LDR R3, = Stack_Mem 631 BX LR 632 633 ALIGN 634 635 ENDIF 636 637 638 END 639