diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2019-10-24 11:07:52 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2019-10-24 11:16:10 -0400 |
commit | faeaa54925e0a6fa197c48faf6317a86824f64d7 (patch) | |
tree | e8679d9af4998068d5fc721c0fc9d2f1e55145f4 /src/atsam/main.c | |
parent | 632ff9e55adced3f055b0926a32cff0b53a7bd0e (diff) | |
download | kutter-faeaa54925e0a6fa197c48faf6317a86824f64d7.tar.gz kutter-faeaa54925e0a6fa197c48faf6317a86824f64d7.tar.xz kutter-faeaa54925e0a6fa197c48faf6317a86824f64d7.zip |
armcm_boot: Use armcm_main() instead of main() to start board code
The main() function has a special meaning to gcc and using it can
result in different code generation. Use armcm_main() to avoid that.
Also, invoke SystemInit() from the board specific armcm_main() code.
This gives the board code more control over board initialization.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/atsam/main.c')
-rw-r--r-- | src/atsam/main.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/atsam/main.c b/src/atsam/main.c index 580ad770..843b5034 100644 --- a/src/atsam/main.c +++ b/src/atsam/main.c @@ -4,6 +4,7 @@ // // This file may be distributed under the terms of the GNU GPLv3 license. +#include "board/armcm_boot.h" // armcm_main #include "board/irq.h" // irq_disable #include "board/usb_cdc.h" // usb_request_bootloader #include "command.h" // DECL_COMMAND_FLAGS @@ -110,11 +111,11 @@ matrix_init(void) | MATRIX_SCFG_DEFMSTR_TYPE(1)); } -// Main entry point -int -main(void) +// Main entry point - called from armcm_boot.c:ResetHandler() +void +armcm_main(void) { + SystemInit(); matrix_init(); sched_main(); - return 0; } |