~ruther/qmk_firmware

41beecfc1847bd0039c508753a212fa18f207e3f — Drashna Jaelre 6 years ago 29f6845
Add DFU Suffix for ARM boards (#5763)

* Add DFU Suffix for ARM boards

* Blindly flash DFU SUFFIX ARGS for now

* Fix commented out check

* Fix DFU Suffix Argument check

Thank you jack!

* Update Travis CI Scripts to include dfu-util

So we can get dfu-suffix as well

* Manually add dfu-suffix package

* Use external repo for newer version of dfu-util

One that includes dfu-suffix

* Update .travis.yml

* Silence unnecessary output from dfu-suffix
M .travis.yml => .travis.yml +4 -0
@@ 13,10 13,14 @@ env:
  - MAKEFLAGS="-j3 --output-sync"
before_install:
  - wget http://ww1.microchip.com/downloads/en/DeviceDoc/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz || wget http://qmk.fm/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
  # Need DFU > .5 for dfu-suffix
  - sudo add-apt-repository --yes ppa:tormodvolden/ppa
  - sudo apt-get update -qq
install:
  - tar -zxf avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
  - export PATH="$PATH:$TRAVIS_BUILD_DIR/avr8-gnu-toolchain-linux_x86_64/bin"
  - npm install -g moxygen
  - sudo apt-get -y --force-yes install dfu-util
before_script:
  - avr-gcc --version
script:

M keyboards/candybar/rules.mk => keyboards/candybar/rules.mk +1 -0
@@ 31,6 31,7 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/clueboard/60/rules.mk => keyboards/clueboard/60/rules.mk +1 -0
@@ 35,6 35,7 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/clueboard/66/rev4/rules.mk => keyboards/clueboard/66/rev4/rules.mk +1 -0
@@ 13,6 13,7 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/clueboard/66_hotswap/gen1/rules.mk => keyboards/clueboard/66_hotswap/gen1/rules.mk +1 -0
@@ 37,6 37,7 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# LED Configuration
LED_MATRIX_ENABLE = IS31FL3731

M keyboards/dztech/dz40rgb/rules.mk => keyboards/dztech/dz40rgb/rules.mk +1 -0
@@ 40,6 40,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/dztech/dz60rgb/rules.mk => keyboards/dztech/dz60rgb/rules.mk +1 -0
@@ 35,6 35,7 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483


BACKLIGHT_ENABLE = no

M keyboards/ergodox_infinity/rules.mk => keyboards/ergodox_infinity/rules.mk +1 -0
@@ 59,6 59,7 @@ OPT_DEFS += -DCORTEX_VTOR_INIT=0x00002000
#

DFU_ARGS = -d 1c11:b007
DFU_SUFFIX_ARGS = -p b007 -v 1c11

BOOTMAGIC_ENABLE = no  # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE  = yes # Mouse keys(+4700)

M keyboards/hs60/v2/keymaps/ansi_via/rules.mk => keyboards/hs60/v2/keymaps/ansi_via/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/keymaps/default_via/rules.mk => keyboards/hs60/v2/keymaps/default_via/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/keymaps/goatmaster/rules.mk => keyboards/hs60/v2/keymaps/goatmaster/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/keymaps/hhkb_via/rules.mk => keyboards/hs60/v2/keymaps/hhkb_via/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/keymaps/iso_andys8/rules.mk => keyboards/hs60/v2/keymaps/iso_andys8/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/keymaps/stanrc85/rules.mk => keyboards/hs60/v2/keymaps/stanrc85/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/keymaps/win_osx_dual/rules.mk => keyboards/hs60/v2/keymaps/win_osx_dual/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/hs60/v2/rules.mk => keyboards/hs60/v2/rules.mk +1 -0
@@ 45,6 45,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/infinity60/rules.mk => keyboards/infinity60/rules.mk +1 -0
@@ 58,6 58,7 @@ OPT_DEFS = -DCORTEX_VTOR_INIT=0x00001000
#

DFU_ARGS = -d 1c11:b007
DFU_SUFFIX_ARGS = -p b007 -v 1c11

BOOTMAGIC_ENABLE = no	# Virtual DIP switch configuration
## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.)

M keyboards/k_type/rules.mk => keyboards/k_type/rules.mk +1 -0
@@ 57,6 57,7 @@ ARMV = 7
OPT_DEFS =

DFU_ARGS = -d 1c11:b007
DFU_SUFFIX_ARGS = -p b007 -v 1c11

# Build Options
#   comment out to disable the options.

M keyboards/vinta/rules.mk => keyboards/vinta/rules.mk +1 -0
@@ 33,6 33,7 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p DF11 -v 0483

# Build Options
#   comment out to disable the options.

M keyboards/whitefox/rules.mk => keyboards/whitefox/rules.mk +1 -0
@@ 55,6 55,7 @@ ARMV = 7
OPT_DEFS =

DFU_ARGS = -d 1c11:b007
DFU_SUFFIX_ARGS = -p b007 -v 1c11

# Build Options
#   comment out to disable the options.

M quantum/mcu_selection.mk => quantum/mcu_selection.mk +1 -0
@@ 34,6 34,7 @@ ifneq ($(findstring STM32F303, $(MCU)),)

  # Options to pass to dfu-util when flashing
  DFU_ARGS ?= -d 0483:df11 -a 0 -s 0x08000000:leave
  DFU_SUFFIX_ARGS = -p DF11 -v 0483
endif

ifneq (,$(filter $(MCU),atmega32u4 at90usb1286))

M quantum/stm32/proton_c.mk => quantum/stm32/proton_c.mk +1 -0
@@ 42,3 42,4 @@ OPT_DEFS =

# Options to pass to dfu-util when flashing
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave
DFU_SUFFIX_ARGS = -p df11 -v 0483

M tmk_core/chibios.mk => tmk_core/chibios.mk +5 -0
@@ 201,6 201,7 @@ DFU_ARGS ?=
ifneq ("$(SERIAL)","")
	DFU_ARGS += -S $(SERIAL)
endif
DFU_SUFFIX_ARGS ?=

ST_LINK_ARGS ?=



@@ 208,6 209,7 @@ ST_LINK_ARGS ?=
EXTRALIBDIRS = $(RULESPATH)/ld

DFU_UTIL ?= dfu-util
DFU_SUFFIX ?= dfu-suffix
ST_LINK_CLI ?= st-link_cli

# Generate a .qmk for the QMK-FF


@@ 259,4 261,7 @@ st-link-cli: $(BUILD_DIR)/$(TARGET).hex sizeafter
	$(ST_LINK_CLI) $(ST_LINK_ARGS) -q -c SWD -p $(BUILD_DIR)/$(TARGET).hex -Rst

bin: $(BUILD_DIR)/$(TARGET).bin sizeafter
	if [ ! -z "$(DFU_SUFFIX_ARGS)" ]; then \
		$(DFU_SUFFIX) $(DFU_SUFFIX_ARGS) -a $(BUILD_DIR)/$(TARGET).bin 1>/dev/null ;\
	fi
	$(COPY) $(BUILD_DIR)/$(TARGET).bin $(TARGET).bin;