forked from mirrors/qmk_firmware
Add st-flash
flash target (#9964)
* Add `st-flash` flash target Add support for flashing the firmware via the `st-flash` utility from the STLink Tools package (https://github.com/stlink-org/stlink). * Add `st-flash` to the `qmk flash -b` output
This commit is contained in:
parent
ea43bc8972
commit
d00ac5dfb6
3 changed files with 7 additions and 0 deletions
|
@ -239,3 +239,4 @@ There are a number of DFU commands that you can use to flash firmware to a STM32
|
||||||
* `:dfu-util-split-left` - This flashes the normal firmware, just like the default option (`:dfu-util`). However, this also configures the "Left Side" EEPROM setting for split keyboards.
|
* `:dfu-util-split-left` - This flashes the normal firmware, just like the default option (`:dfu-util`). However, this also configures the "Left Side" EEPROM setting for split keyboards.
|
||||||
* `:dfu-util-split-right` - This flashes the normal firmware, just like the default option (`:dfu-util`). However, this also configures the "Right Side" EEPROM setting for split keyboards.
|
* `:dfu-util-split-right` - This flashes the normal firmware, just like the default option (`:dfu-util`). However, this also configures the "Right Side" EEPROM setting for split keyboards.
|
||||||
* `:st-link-cli` - This allows you to flash the firmware via ST-LINK's CLI utility, rather than dfu-util.
|
* `:st-link-cli` - This allows you to flash the firmware via ST-LINK's CLI utility, rather than dfu-util.
|
||||||
|
* `:st-flash` - This allows you to flash the firmware via the `st-flash` utility from [STLink Tools](https://github.com/stlink-org/stlink), rather than dfu-util.
|
||||||
|
|
|
@ -27,6 +27,7 @@ def print_bootloader_help():
|
||||||
cli.echo('\tdfu-util-split-left')
|
cli.echo('\tdfu-util-split-left')
|
||||||
cli.echo('\tdfu-util-split-right')
|
cli.echo('\tdfu-util-split-right')
|
||||||
cli.echo('\tst-link-cli')
|
cli.echo('\tst-link-cli')
|
||||||
|
cli.echo('\tst-flash')
|
||||||
cli.echo('For more info, visit https://docs.qmk.fm/#/flashing')
|
cli.echo('For more info, visit https://docs.qmk.fm/#/flashing')
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -318,12 +318,14 @@ ifneq ("$(SERIAL)","")
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ST_LINK_ARGS ?=
|
ST_LINK_ARGS ?=
|
||||||
|
ST_FLASH_ARGS ?=
|
||||||
|
|
||||||
# List any extra directories to look for libraries here.
|
# List any extra directories to look for libraries here.
|
||||||
EXTRALIBDIRS = $(RULESPATH)/ld
|
EXTRALIBDIRS = $(RULESPATH)/ld
|
||||||
|
|
||||||
DFU_UTIL ?= dfu-util
|
DFU_UTIL ?= dfu-util
|
||||||
ST_LINK_CLI ?= st-link_cli
|
ST_LINK_CLI ?= st-link_cli
|
||||||
|
ST_FLASH ?= st-flash
|
||||||
|
|
||||||
define EXEC_DFU_UTIL
|
define EXEC_DFU_UTIL
|
||||||
until $(DFU_UTIL) -l | grep -q "Found DFU"; do\
|
until $(DFU_UTIL) -l | grep -q "Found DFU"; do\
|
||||||
|
@ -357,6 +359,9 @@ dfu-util-split-right: dfu-util
|
||||||
st-link-cli: $(BUILD_DIR)/$(TARGET).hex sizeafter
|
st-link-cli: $(BUILD_DIR)/$(TARGET).hex sizeafter
|
||||||
$(ST_LINK_CLI) $(ST_LINK_ARGS) -q -c SWD -p $(BUILD_DIR)/$(TARGET).hex -Rst
|
$(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
|
# Autodetect teensy loader
|
||||||
ifndef TEENSY_LOADER_CLI
|
ifndef TEENSY_LOADER_CLI
|
||||||
|
|
Loading…
Reference in a new issue