019b6f67b2029030a664a2d7ef545b08ace8bedb

Author
Joel Challis <git@zvecr.com>
Committer
GitHub <noreply@github.com>
Date

Message

Remove keyboard level `QK_BOOT` implementations (#24231)

Diff

  1diff --git a/keyboards/capsunlocked/cu75/cu75.c b/keyboards/capsunlocked/cu75/cu75.c
  2index 42d5f4e29079d18baa57f8581444c4890db7b7d3..155b8958fc4308b3141ad0686720acb4a4c84607 100644
  3--- a/keyboards/capsunlocked/cu75/cu75.c
  4+++ b/keyboards/capsunlocked/cu75/cu75.c
  5@@ -54,17 +54,19 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
  6     if (click_toggle && record->event.pressed){
  7         click(click_hz, click_time);
  8     }
  9-    if (keycode == QK_BOOT) {
 10-        reset_keyboard_kb();
 11-    }
 12     return process_record_user(keycode, record);
 13 }
 14 
 15-void reset_keyboard_kb(void){
 16+bool shutdown_kb(bool jump_to_bootloader) {
 17 #ifdef WATCHDOG_ENABLE
 18+    // Unconditionally run so shutdown_user can't mess up watchdog
 19     MCUSR = 0;
 20     wdt_disable();
 21     wdt_reset();
 22 #endif
 23-    reset_keyboard();
 24+
 25+    if (!shutdown_user(jump_to_bootloader)) {
 26+        return false;
 27+    }
 28+    return true;
 29 }
 30diff --git a/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c b/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c
 31deleted file mode 100644
 32index ee8d8b2e7307dba8b0b735cd09c768b3fa4db523..0000000000000000000000000000000000000000
 33--- a/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c
 34+++ /dev/null
 35@@ -1,19 +0,0 @@
 36-#include "lfk65_hs.h"
 37-#include <avr/wdt.h>
 38-
 39-bool process_record_kb(uint16_t keycode, keyrecord_t* record)
 40-{
 41-    if (keycode == QK_BOOT) {
 42-        reset_keyboard_kb();
 43-    }
 44-    return process_record_user(keycode, record);
 45-}
 46-
 47-void reset_keyboard_kb(void){
 48-#ifdef WATCHDOG_ENABLE
 49-    MCUSR = 0;
 50-    wdt_disable();
 51-    wdt_reset();
 52-#endif
 53-    reset_keyboard();
 54-}
 55diff --git a/keyboards/lfkeyboards/lfk78/lfk78.c b/keyboards/lfkeyboards/lfk78/lfk78.c
 56index 3f6cb61263bf5c9dbe6bf508b0e12ddb376ac824..6fe282bb0b594966e3fea37e2f6c04642ef8df30 100644
 57--- a/keyboards/lfkeyboards/lfk78/lfk78.c
 58+++ b/keyboards/lfkeyboards/lfk78/lfk78.c
 59@@ -43,20 +43,19 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record) {
 60     if (click_toggle && record->event.pressed) {
 61         clicking_notes(click_hz, click_time);
 62     }
 63-
 64-    if (keycode == QK_BOOT) {
 65-        reset_keyboard_kb();
 66-    }
 67-
 68     return process_record_user(keycode, record);
 69 }
 70 
 71-void reset_keyboard_kb(void) {
 72+bool shutdown_kb(bool jump_to_bootloader) {
 73 #ifdef WATCHDOG_ENABLE
 74+    // Unconditionally run so shutdown_user can't mess up watchdog
 75     MCUSR = 0;
 76     wdt_disable();
 77     wdt_reset();
 78 #endif
 79 
 80-    reset_keyboard();
 81+    if (!shutdown_user(jump_to_bootloader)) {
 82+        return false;
 83+    }
 84+    return true;
 85 }
 86diff --git a/keyboards/lfkeyboards/lfk87/lfk87.c b/keyboards/lfkeyboards/lfk87/lfk87.c
 87index e6288eb6c139e57c9266860d6514eec639da0598..ff0a0381145ffdcb04a085515805a655051b01b0 100644
 88--- a/keyboards/lfkeyboards/lfk87/lfk87.c
 89+++ b/keyboards/lfkeyboards/lfk87/lfk87.c
 90@@ -45,17 +45,19 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
 91     if (click_toggle && record->event.pressed){
 92         clicking_notes(click_hz, click_time);
 93     }
 94-    if (keycode == QK_BOOT) {
 95-        reset_keyboard_kb();
 96-    }
 97     return process_record_user(keycode, record);
 98 }
 99 
100-void reset_keyboard_kb(void){
101+bool shutdown_kb(bool jump_to_bootloader) {
102 #ifdef WATCHDOG_ENABLE
103+    // Unconditionally run so shutdown_user can't mess up watchdog
104     MCUSR = 0;
105     wdt_disable();
106     wdt_reset();
107 #endif
108-    reset_keyboard();
109+
110+    if (!shutdown_user(jump_to_bootloader)) {
111+        return false;
112+    }
113+    return true;
114 }
115diff --git a/keyboards/lfkeyboards/mini1800/mini1800.c b/keyboards/lfkeyboards/mini1800/mini1800.c
116index 96dc56c03c32b786595ba3b83106e27c8c5e7b4a..1d07ea7b0d2c7c4c21599a9c7f73056f600b4b28 100644
117--- a/keyboards/lfkeyboards/mini1800/mini1800.c
118+++ b/keyboards/lfkeyboards/mini1800/mini1800.c
119@@ -47,17 +47,19 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
120     if (click_toggle && record->event.pressed){
121         click(click_hz, click_time);
122     }
123-    if (keycode == QK_BOOT) {
124-        reset_keyboard_kb();
125-    }
126     return process_record_user(keycode, record);
127 }
128 
129-void reset_keyboard_kb(void){
130+bool shutdown_kb(bool jump_to_bootloader) {
131 #ifdef WATCHDOG_ENABLE
132+    // Unconditionally run so shutdown_user can't mess up watchdog
133     MCUSR = 0;
134     wdt_disable();
135     wdt_reset();
136 #endif
137-    reset_keyboard();
138+
139+    if (!shutdown_user(jump_to_bootloader)) {
140+        return false;
141+    }
142+    return true;
143 }
144diff --git a/keyboards/lfkeyboards/smk65/revb/revb.c b/keyboards/lfkeyboards/smk65/revb/revb.c
145index c183ae1b0207a16223595f32531f570ae66d31a3..970a4d3a10bee85c7dac26f38a9e79414fef574e 100644
146--- a/keyboards/lfkeyboards/smk65/revb/revb.c
147+++ b/keyboards/lfkeyboards/smk65/revb/revb.c
148@@ -61,17 +61,19 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
149     if (click_toggle && record->event.pressed){
150         click(click_hz, click_time);
151     }
152-    if (keycode == QK_BOOT) {
153-        reset_keyboard_kb();
154-    }
155     return process_record_user(keycode, record);
156 }
157 
158-void reset_keyboard_kb(void){
159+bool shutdown_kb(bool jump_to_bootloader) {
160 #ifdef WATCHDOG_ENABLE
161+    // Unconditionally run so shutdown_user can't mess up watchdog
162     MCUSR = 0;
163     wdt_disable();
164     wdt_reset();
165 #endif
166-    reset_keyboard();
167+
168+    if (!shutdown_user(jump_to_bootloader)) {
169+        return false;
170+    }
171+    return true;
172 }
173diff --git a/keyboards/nullbitsco/tidbit/tidbit.c b/keyboards/nullbitsco/tidbit/tidbit.c
174index 15bc0f6a7ac2893461a0e5322c07a8a35a495496..0ccdda01d8f61f32f2d8ae5c57ba7d4678d5089c 100644
175--- a/keyboards/nullbitsco/tidbit/tidbit.c
176+++ b/keyboards/nullbitsco/tidbit/tidbit.c
177@@ -92,22 +92,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
178         numlock_set = true;
179     }
180 
181-    switch (keycode) {
182-        case QK_BOOT:
183-            if (record->event.pressed) {
184-                set_bitc_LED(LED_DIM);
185-                rgblight_disable_noeeprom();
186-                #ifdef OLED_ENABLE
187-                oled_off();
188-                #endif
189-                bootloader_jump();  // jump to bootloader
190-            }
191-            return false;
192-
193-        default:
194-            break;
195-    }
196-
197     return true;
198 }
199 
200@@ -121,3 +105,16 @@ void matrix_scan_kb(void) {
201     matrix_scan_remote_kb();
202     matrix_scan_user();
203 }
204+
205+bool shutdown_kb(bool jump_to_bootloader) {
206+    if (!shutdown_user(jump_to_bootloader)) {
207+        return false;
208+    }
209+
210+    set_bitc_LED(LED_DIM);
211+    rgblight_disable_noeeprom();
212+#ifdef OLED_ENABLE
213+    oled_off();
214+#endif
215+    return true;
216+}
217diff --git a/keyboards/snes_macropad/snes_macropad.c b/keyboards/snes_macropad/snes_macropad.c
218index 74fa434fb2aa5a56388398a19f5fe9fb1db33c83..97e942e0267c0fc57d4106b5b4872a2e4cdc099a 100644
219--- a/keyboards/snes_macropad/snes_macropad.c
220+++ b/keyboards/snes_macropad/snes_macropad.c
221@@ -92,9 +92,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
222     if (record->event.pressed) {
223         set_keylog(keycode, record);
224     }
225-    if (keycode == QK_BOOT) {
226-        setupForFlashing();
227-    }
228     return process_record_user(keycode, record);
229 }
230 
231@@ -104,3 +101,11 @@ void keyboard_post_init_kb(void) {
232     rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_SWIRL);
233     keyboard_post_init_user();
234 }
235+
236+bool shutdown_kb(bool jump_to_bootloader) {
237+    if (!shutdown_user(jump_to_bootloader)) {
238+        return false;
239+    }
240+    setupForFlashing();
241+    return true;
242+}
243diff --git a/keyboards/woodkeys/meira/meira.c b/keyboards/woodkeys/meira/meira.c
244index 2141c171c885fb93d6962ca9ead2785eaf86206a..6cb7affcb367bd5a2655070d27d38bfb4d36b016 100644
245--- a/keyboards/woodkeys/meira/meira.c
246+++ b/keyboards/woodkeys/meira/meira.c
247@@ -15,11 +15,7 @@
248  */
249 #include "meira.h"
250 
251-void matrix_init_kb(void)
252-{
253-    debug_enable=true;
254-    print("meira matrix_init_kb\n");
255-
256+void matrix_init_kb(void) {
257 #ifdef WATCHDOG_ENABLE
258     // This is done after turning the layer LED red, if we're caught in a loop
259     // we should get a flashing red light
260@@ -37,21 +33,16 @@ void housekeeping_task_kb(void) {
261 #endif
262 }
263 
264-bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
265-    // Test code that turns on the switch led for the key that is pressed
266-    // set_backlight_by_keymap(record->event.key.col, record->event.key.row);
267-    if (keycode == QK_BOOT) {
268-        reset_keyboard_kb();
269-    }
270-    return process_record_user(keycode, record);
271-}
272-
273-void reset_keyboard_kb(void){
274+bool shutdown_kb(bool jump_to_bootloader) {
275 #ifdef WATCHDOG_ENABLE
276+    // Unconditionally run so shutdown_user can't mess up watchdog
277     MCUSR = 0;
278     wdt_disable();
279     wdt_reset();
280 #endif
281-    xprintf("programming!\n");
282-    reset_keyboard();
283+
284+    if (!shutdown_user(jump_to_bootloader)) {
285+        return false;
286+    }
287+    return true;
288 }