1
0
tmk_keyboard/tmk_core/common/chibios/bootloader.c
2015-09-08 16:07:34 +01:00

17 lines
441 B
C

#include "bootloader.h"
#include "ch.h"
#ifdef BOOTLOADER_ADDRESS
#define SYMVAL(sym) (uint32_t)(((uint8_t *)&(sym)) - ((uint8_t *)0))
extern uint32_t __ram0_end__;
void bootloader_jump(void) {
*((unsigned long *)(SYMVAL(__ram0_end__) - 4)) = 0xDEADBEEF; // set magic flag => reset handler will jump into boot loader
NVIC_SystemReset();
}
#else /* BOOTLOADER_ADDRESS */
void bootloader_jump(void) {}
#endif /* BOOTLOADER_ADDRESS */