Commit Graph

6 Commits (eee607b51a871cd5e0e8ce80e3514a012817f57b)

Author SHA1 Message Date
ccli8 156e8a012a Remove superfluous MOVT in mbed_start_application/start_new_application 2018-06-15 13:30:56 +01:00
ccli8 a77e4072b2 Fix mbed_start_application on Cortex-M23
1. M23 doesn't support ICTR and supports up to 240 external interrupts.
2. Fix reset of SHPR
3. Fix inline assembly compile error with ARMC6
2018-06-15 13:30:56 +01:00
ccli8 4f9de80311 Fix start_new_application compile error on Cortex-M23
With "mov r2, #0", compile OK with GCC_ARM, but failed with ARMC6.
With "ldr r2, =0", compile OK with ARMC6, but failed with GCC_ARM.
Finally, with "movw r2, #0"/"movt r2, #0", compile OK with both ARMC6 and GCC_ARM.
2018-06-15 13:30:56 +01:00
ccli8 88259ac42f Support mbed_start_application for Cortex-M23 2018-06-15 13:30:56 +01:00
Russ Butler 29ad5bb09b Fix ISR powerdown in mbed_application.c
Fix a calculation error in in powerdown_nvic preventing the last
group of 32 interrupts from getting powered down. The ARMv7m reference
manual states "the total number of interrupt lines is up
to (32*(INTLINESNUM+1)).".

Also rename isr_count to isr_groups_32 for clarity, since this is
actually the number of 32 interrupt groups.
2017-08-22 10:54:18 -05:00
Russ Butler 36cbae6420 Add a function to transfer control to another app
Add the function mbed_start_application() which allows a bootloader to
transfer control to an application.
2017-02-18 19:48:14 -06:00