/**************************************************************************************** | Description: bootloader C startup source file | File Name: cstart.s | |---------------------------------------------------------------------------------------- | C O P Y R I G H T |---------------------------------------------------------------------------------------- | Copyright (c) 2012 by Feaser http://www.feaser.com All rights reserved | |---------------------------------------------------------------------------------------- | L I C E N S E |---------------------------------------------------------------------------------------- | This file is part of OpenBLT. OpenBLT is free software: you can redistribute it and/or | modify it under the terms of the GNU General Public License as published by the Free | Software Foundation, either version 3 of the License, or (at your option) any later | version. | | OpenBLT is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; | without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR | PURPOSE. See the GNU General Public License for more details. | | You have received a copy of the GNU General Public License along with OpenBLT. It | should be located in ".\Doc\license.html". If not, contact Feaser to obtain a copy. | ****************************************************************************************/ MODULE ?cstartup ; Forward declaration of section. SECTION CSTACK:DATA:NOROOT(3) PUBLIC reset_handler EXTERN __cmain EXTERN __vector_table EXTWEAK __iar_init_core EXTWEAK __iar_init_vfp /**************************************************************************************** ** NAME: reset_handler ** PARAMETER: none ** RETURN VALUE: none ** DESCRIPTION: Reset interrupt service routine. Configures the stack, initializes RAM ** and jumps to function main. ** ****************************************************************************************/ SECTION .text:CODE:REORDER(2) THUMB reset_handler: ; Initialize the stack pointer LDR R3, =sfe(CSTACK) MOV SP, R3 BL __iar_init_core BL __iar_init_vfp BL __cmain REQUIRE __vector_table END /************************************ end of cstart.s **********************************/