X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fstmf0%2Fao_arch.h;h=1450545a10c015d9d33fd2c75f95d5f68eb57f07;hp=47ac72787aa1801bbd3f56dc891efa0c8402ce44;hb=cb756983a26595a5d2f317a6693f9a670665c86a;hpb=16c3f541e80d77f4adc1a69f15e82c23d7947138 diff --git a/src/stmf0/ao_arch.h b/src/stmf0/ao_arch.h index 47ac7278..1450545a 100644 --- a/src/stmf0/ao_arch.h +++ b/src/stmf0/ao_arch.h @@ -41,9 +41,11 @@ #define __interrupt(n) #define __at(n) -#define ao_arch_reboot() \ - (stm_scb.aircr = ((STM_SCB_AIRCR_VECTKEY_KEY << STM_SCB_AIRCR_VECTKEY) | \ - (1 << STM_SCB_AIRCR_SYSRESETREQ))) +static inline void ao_arch_reboot(void) { + stm_flash.cr = (1 << STM_FLASH_CR_OBL_LAUNCH); + stm_scb.aircr = ((STM_SCB_AIRCR_VECTKEY_KEY << STM_SCB_AIRCR_VECTKEY) | + (1 << STM_SCB_AIRCR_SYSRESETREQ)); +} #define ao_arch_nop() asm("nop")