diff --git a/keyboards/chavdai40/rev1/config.h b/keyboards/chavdai40/rev1/config.h
index a3dcf84e9a6c..5ce1111bae59 100644
--- a/keyboards/chavdai40/rev1/config.h
+++ b/keyboards/chavdai40/rev1/config.h
@@ -19,6 +19,8 @@
#include "config_common.h"
+#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP FALSE
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0x16D0
#define PRODUCT_ID 0x0F95
@@ -33,7 +35,7 @@
#define MATRIX_ROWS 4
#define MATRIX_COLS 13
-
+
#define MATRIX_ROW_PINS { A0, A15, B5, B6 }
#define MATRIX_COL_PINS { B8, B4, B3, B2, B1, B0, A7, A6, A5, A4, A3, A2, A1 }
#define UNUSED_PINS
diff --git a/keyboards/chavdai40/rev2/config.h b/keyboards/chavdai40/rev2/config.h
index a95f025f420c..e45d2b2db126 100644
--- a/keyboards/chavdai40/rev2/config.h
+++ b/keyboards/chavdai40/rev2/config.h
@@ -19,6 +19,8 @@
#include "config_common.h"
+#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP FALSE
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0x16D0
#define PRODUCT_ID 0x0F95
@@ -33,7 +35,7 @@
#define MATRIX_ROWS 4
#define MATRIX_COLS 13
-
+
#define MATRIX_ROW_PINS { A0, A15, B5, B6 }
#define MATRIX_COL_PINS { B7, B4, B3, A8, B1, B0, A7, A6, A5, A4, A3, A2, A1 }
#define UNUSED_PINS
diff --git a/keyboards/ergodox_stm32/boards/ERGODOX_STM32_BOARD/board.c b/keyboards/ergodox_stm32/boards/ERGODOX_STM32_BOARD/board.c
index 48844e34a6ac..41a603b9517a 100644
--- a/keyboards/ergodox_stm32/boards/ERGODOX_STM32_BOARD/board.c
+++ b/keyboards/ergodox_stm32/boards/ERGODOX_STM32_BOARD/board.c
@@ -46,6 +46,4 @@ void __early_init(void) {
* Board-specific initialization code.
*/
void boardInit(void) {
- AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE;
-
}
diff --git a/keyboards/ergodox_stm32/ergodox_stm32.c b/keyboards/ergodox_stm32/ergodox_stm32.c
index 176fb3f43ada..846c29d7a4b6 100644
--- a/keyboards/ergodox_stm32/ergodox_stm32.c
+++ b/keyboards/ergodox_stm32/ergodox_stm32.c
@@ -12,6 +12,10 @@ extern inline void ergodox_led_all_off(void);
volatile int mcp23017_status = 0x20;
uint8_t i2c_initializied = 0;
+void board_init(void) {
+ AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE;
+}
+
void matrix_init_kb(void)
{
// Init LED Ports
diff --git a/keyboards/jm60/boards/JM60_BOARD/board.c b/keyboards/jm60/boards/JM60_BOARD/board.c
index 48844e34a6ac..41a603b9517a 100644
--- a/keyboards/jm60/boards/JM60_BOARD/board.c
+++ b/keyboards/jm60/boards/JM60_BOARD/board.c
@@ -46,6 +46,4 @@ void __early_init(void) {
* Board-specific initialization code.
*/
void boardInit(void) {
- AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE;
-
}
diff --git a/keyboards/jm60/jm60.c b/keyboards/jm60/jm60.c
index d8fe9cecc11f..f7b434f30e0a 100644
--- a/keyboards/jm60/jm60.c
+++ b/keyboards/jm60/jm60.c
@@ -16,3 +16,7 @@ along with this program. If not, see .
*/
#include "jm60.h"
+
+void board_init(void) {
+ AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE;
+}
diff --git a/keyboards/matrix/m20add/boards/m20add_bd/board.c b/keyboards/matrix/m20add/boards/m20add_bd/board.c
index 95d9045a0ccf..fa5723ec2bdd 100644
--- a/keyboards/matrix/m20add/boards/m20add_bd/board.c
+++ b/keyboards/matrix/m20add/boards/m20add_bd/board.c
@@ -208,8 +208,6 @@ static void stm32_gpio_init(void) {
* else.
*/
void __early_init(void) {
- extern void enter_bootloader_mode_if_requested(void);
- enter_bootloader_mode_if_requested();
stm32_gpio_init();
stm32_clock_init();
diff --git a/keyboards/matrix/m20add/config.h b/keyboards/matrix/m20add/config.h
index 316434649515..f404ef9ccd23 100644
--- a/keyboards/matrix/m20add/config.h
+++ b/keyboards/matrix/m20add/config.h
@@ -5,6 +5,8 @@
#pragma once
+#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0x4D58 // MX
#define PRODUCT_ID 0x20AD // 8XV2.0 Additional
@@ -94,5 +96,3 @@
#define DRIVER_ADDR_1 0b1110100
#define DRIVER_COUNT 1
#define DRIVER_LED_TOTAL RGBLED_NUM
-
-#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP FALSE // disable jump to system bootloader
diff --git a/keyboards/matrix/noah/boards/noah_bd/board.c b/keyboards/matrix/noah/boards/noah_bd/board.c
index 95d9045a0ccf..fa5723ec2bdd 100644
--- a/keyboards/matrix/noah/boards/noah_bd/board.c
+++ b/keyboards/matrix/noah/boards/noah_bd/board.c
@@ -208,8 +208,6 @@ static void stm32_gpio_init(void) {
* else.
*/
void __early_init(void) {
- extern void enter_bootloader_mode_if_requested(void);
- enter_bootloader_mode_if_requested();
stm32_gpio_init();
stm32_clock_init();
diff --git a/keyboards/matrix/noah/config.h b/keyboards/matrix/noah/config.h
index 796e45e2fac1..eac752911f9b 100644
--- a/keyboards/matrix/noah/config.h
+++ b/keyboards/matrix/noah/config.h
@@ -5,6 +5,8 @@
#pragma once
+#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0x4D58 // MX
#define PRODUCT_ID 0x0065 // noah 65
diff --git a/keyboards/polilla/rev1/config.h b/keyboards/polilla/rev1/config.h
index 666588446547..5f0f10d355d2 100644
--- a/keyboards/polilla/rev1/config.h
+++ b/keyboards/polilla/rev1/config.h
@@ -18,6 +18,8 @@ along with this program. If not, see .
#include "config_common.h"
+#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0x6166 // af
#define PRODUCT_ID 0x0010
diff --git a/keyboards/xiaomi/mk02/config.h b/keyboards/xiaomi/mk02/config.h
index 785f44097fa3..a16d03c49386 100644
--- a/keyboards/xiaomi/mk02/config.h
+++ b/keyboards/xiaomi/mk02/config.h
@@ -17,6 +17,8 @@ along with this program. If not, see .
#pragma once
+#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP FALSE
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x0B91
diff --git a/platforms/chibios/GENERIC_STM32_F042X6/board/board.c b/platforms/chibios/GENERIC_STM32_F042X6/board/board.c
index 3c6f54ef5e50..0d7c88756a3f 100644
--- a/platforms/chibios/GENERIC_STM32_F042X6/board/board.c
+++ b/platforms/chibios/GENERIC_STM32_F042X6/board/board.c
@@ -202,16 +202,12 @@ static void stm32_gpio_init(void) {
/* Driver exported functions. */
/*===========================================================================*/
-__attribute__((weak)) void enter_bootloader_mode_if_requested(void) {}
-
/**
* @brief Early initialization code.
* @details GPIO ports and system clocks are initialized before everything
* else.
*/
void __early_init(void) {
- enter_bootloader_mode_if_requested();
-
stm32_gpio_init();
stm32_clock_init();
}