diff --git a/builddefs/bootloader.mk b/builddefs/bootloader.mk index 470febc346..56ef7ff5d8 100644 --- a/builddefs/bootloader.mk +++ b/builddefs/bootloader.mk @@ -38,9 +38,18 @@ # RISC-V: # gd32v-dfu GD32V USB DFU in ROM # +# If you need to provide your own implementation, you can set inside `rules.mk` +# `BOOTLOADER = custom` -- you'll need to provide your own implementations. See +# the respective file under `platforms//bootloaders/custom.c` to see +# which functions may be overridden. +# # BOOTLOADER_SIZE can still be defined manually, but it's recommended # you add any possible configuration to this list +ifeq ($(strip $(BOOTLOADER)), custom) + OPT_DEFS += -DBOOTLOADER_CUSTOM + BOOTLOADER_TYPE = custom +endif ifeq ($(strip $(BOOTLOADER)), atmel-dfu) OPT_DEFS += -DBOOTLOADER_ATMEL_DFU OPT_DEFS += -DBOOTLOADER_DFU @@ -195,5 +204,5 @@ ifeq ($(strip $(BOOTLOADER)), md-boot) endif ifeq ($(strip $(BOOTLOADER_TYPE)),) - BOOTLOADER_TYPE = none + $(error No bootloader specified. Please set an appropriate 'BOOTLOADER' in your keyboard's 'rules.mk' file) endif diff --git a/platforms/avr/bootloaders/none.c b/platforms/avr/bootloaders/custom.c similarity index 100% rename from platforms/avr/bootloaders/none.c rename to platforms/avr/bootloaders/custom.c diff --git a/platforms/chibios/bootloaders/none.c b/platforms/chibios/bootloaders/custom.c similarity index 88% rename from platforms/chibios/bootloaders/none.c rename to platforms/chibios/bootloaders/custom.c index 8379d35abf..bba9fc4637 100644 --- a/platforms/chibios/bootloaders/none.c +++ b/platforms/chibios/bootloaders/custom.c @@ -16,8 +16,6 @@ #include "bootloader.h" -#pragma message "Unknown bootloader set, you may not be able to enter bootloader using software reset" - __attribute__((weak)) void bootloader_jump(void) {} __attribute__((weak)) void enter_bootloader_mode_if_requested(void) {}