Move all the flash logic from tmk_core (#13927)
This commit is contained in:
parent
4e3726bfe1
commit
ab941ce614
7 changed files with 278 additions and 269 deletions
|
@ -325,95 +325,8 @@ MCUFLAGS = -mcpu=$(MCU)
|
|||
|
||||
DEBUG = gdb
|
||||
|
||||
DFU_ARGS ?=
|
||||
ifneq ("$(SERIAL)","")
|
||||
DFU_ARGS += -S $(SERIAL)
|
||||
endif
|
||||
|
||||
ST_LINK_ARGS ?=
|
||||
ST_FLASH_ARGS ?=
|
||||
|
||||
# List any extra directories to look for libraries here.
|
||||
EXTRALIBDIRS = $(RULESPATH)/ld
|
||||
|
||||
DFU_UTIL ?= dfu-util
|
||||
ST_LINK_CLI ?= st-link_cli
|
||||
ST_FLASH ?= st-flash
|
||||
|
||||
define EXEC_DFU_UTIL
|
||||
if ! $(DFU_UTIL) -l | grep -q "Found DFU"; then \
|
||||
printf "$(MSG_BOOTLOADER_NOT_FOUND_QUICK_RETRY)" ;\
|
||||
sleep $(BOOTLOADER_RETRY_TIME) ;\
|
||||
while ! $(DFU_UTIL) -l | grep -q "Found DFU"; do \
|
||||
printf "." ;\
|
||||
sleep $(BOOTLOADER_RETRY_TIME) ;\
|
||||
done ;\
|
||||
printf "\n" ;\
|
||||
fi
|
||||
$(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin
|
||||
endef
|
||||
|
||||
dfu-util: $(BUILD_DIR)/$(TARGET).bin cpfirmware sizeafter
|
||||
$(call EXEC_DFU_UTIL)
|
||||
|
||||
# Legacy alias
|
||||
dfu-util-wait: dfu-util
|
||||
|
||||
# TODO: Remove once ARM has a way to configure EECONFIG_HANDEDNESS
|
||||
# within the emulated eeprom via dfu-util or another tool
|
||||
ifneq (,$(filter $(MAKECMDGOALS),dfu-util-split-left))
|
||||
OPT_DEFS += -DINIT_EE_HANDS_LEFT
|
||||
endif
|
||||
|
||||
ifneq (,$(filter $(MAKECMDGOALS),dfu-util-split-right))
|
||||
OPT_DEFS += -DINIT_EE_HANDS_RIGHT
|
||||
endif
|
||||
|
||||
dfu-util-split-left: dfu-util
|
||||
|
||||
dfu-util-split-right: dfu-util
|
||||
|
||||
|
||||
st-link-cli: $(BUILD_DIR)/$(TARGET).hex sizeafter
|
||||
$(ST_LINK_CLI) $(ST_LINK_ARGS) -q -c SWD -p $(BUILD_DIR)/$(TARGET).hex -Rst
|
||||
|
||||
st-flash: $(BUILD_DIR)/$(TARGET).hex sizeafter
|
||||
$(ST_FLASH) $(ST_FLASH_ARGS) --reset --format ihex write $(BUILD_DIR)/$(TARGET).hex
|
||||
|
||||
|
||||
# Autodetect teensy loader
|
||||
ifndef TEENSY_LOADER_CLI
|
||||
ifneq (, $(shell which teensy-loader-cli 2>/dev/null))
|
||||
TEENSY_LOADER_CLI ?= teensy-loader-cli
|
||||
else
|
||||
TEENSY_LOADER_CLI ?= teensy_loader_cli
|
||||
endif
|
||||
endif
|
||||
|
||||
TEENSY_LOADER_CLI_MCU ?= $(MCU_LDSCRIPT)
|
||||
|
||||
define EXEC_TEENSY
|
||||
$(TEENSY_LOADER_CLI) -mmcu=$(TEENSY_LOADER_CLI_MCU) -w -v $(BUILD_DIR)/$(TARGET).hex
|
||||
endef
|
||||
|
||||
teensy: $(BUILD_DIR)/$(TARGET).hex cpfirmware sizeafter
|
||||
$(call EXEC_TEENSY)
|
||||
|
||||
bin: $(BUILD_DIR)/$(TARGET).bin sizeafter
|
||||
$(COPY) $(BUILD_DIR)/$(TARGET).bin $(TARGET).bin;
|
||||
|
||||
|
||||
flash: $(BUILD_DIR)/$(TARGET).bin cpfirmware sizeafter
|
||||
ifneq ($(strip $(PROGRAM_CMD)),)
|
||||
$(PROGRAM_CMD)
|
||||
else ifeq ($(strip $(BOOTLOADER)),kiibohd)
|
||||
$(call EXEC_DFU_UTIL)
|
||||
else ifeq ($(strip $(MCU_FAMILY)),KINETIS)
|
||||
$(call EXEC_TEENSY)
|
||||
else ifeq ($(strip $(MCU_FAMILY)),MIMXRT1062)
|
||||
$(call EXEC_TEENSY)
|
||||
else ifeq ($(strip $(MCU_FAMILY)),STM32)
|
||||
$(call EXEC_DFU_UTIL)
|
||||
else
|
||||
$(PRINT_OK); $(SILENT) || printf "$(MSG_FLASH_BOOTLOADER)"
|
||||
endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue