From 7a3d43acf14ec624be99c7de1b7573d8d95d949a Mon Sep 17 00:00:00 2001 From: Michiel Visser Date: Mon, 24 Jun 2019 23:24:24 +0200 Subject: [PATCH] Use built-in function to do bootloader reset --- keyboards/anne_pro/anne_pro.c | 18 ++++++++++-------- keyboards/anne_pro/anne_pro.h | 3 +-- keyboards/anne_pro/keymaps/default/keymap.c | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/keyboards/anne_pro/anne_pro.c b/keyboards/anne_pro/anne_pro.c index 03be92176f..3f9851a75a 100644 --- a/keyboards/anne_pro/anne_pro.c +++ b/keyboards/anne_pro/anne_pro.c @@ -64,14 +64,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { uartStartSend(&UARTD3, 6, "\x09\x04\x05\x01\x00\x00"); } return false; - case AP_RST: - /* Reset the keyboard, enter DFU when ESC is pressed */ - __disable_irq(); - SCB->VTOR = 0x08000000; - NVIC_SystemReset(); - /* This should not be reached */ - while(1); - return false; default: /* Handle other keycodes normally */ return true; @@ -97,3 +89,13 @@ void keyboard_post_init_kb(void) { matrix_init_user(); } + +/* Instead of doing some magic to get to the bootloader, just press ESC and reset */ +void bootloader_jump(void) { + /* Disable interrupts as changing the vector table can mess them up */ + __disable_irq(); + /* Move the vector table back to the bootloader */ + SCB->VTOR = 0x08000000; + /* Reset the system into the bootloader */ + NVIC_SystemReset(); +} diff --git a/keyboards/anne_pro/anne_pro.h b/keyboards/anne_pro/anne_pro.h index 066cc577e8..4d3c75bd7e 100644 --- a/keyboards/anne_pro/anne_pro.h +++ b/keyboards/anne_pro/anne_pro.h @@ -22,8 +22,7 @@ enum anne_pro_keycodes { APL_RGB = SAFE_RANGE, APL_RAT, APL_BRT, - APL_MOD, - AP_RST + APL_MOD }; /* The fully-featured LAYOUT() that has every single key available in the matrix. */ diff --git a/keyboards/anne_pro/keymaps/default/keymap.c b/keyboards/anne_pro/keymaps/default/keymap.c index bc36330cd8..37cce3d48b 100644 --- a/keyboards/anne_pro/keymaps/default/keymap.c +++ b/keyboards/anne_pro/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, XXXXXXX, _______, _______, _______, _______ ), [2] = LAYOUT( - AP_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,