diff --git a/conf/Makefile.stm32-upload b/conf/Makefile.stm32-upload index d4231f6328..e5a84cfd26 100644 --- a/conf/Makefile.stm32-upload +++ b/conf/Makefile.stm32-upload @@ -59,14 +59,20 @@ else ifeq ($(FLASH_MODE),DFU-UTIL) # # DFU flash mode using dfu-util DFU_ADDR ?= 0x08000000 +# verify if dfu-util version >= 0.7 +DFU_UTIL_VERSION = $(shell dfu-util --version | head -n 1 | awk '{print $$2}') +VERIFY = $(shell echo '$(DFU_UTIL_VERSION)>=0.7' | bc) DFU_SIZE ?= $(shell ls -nl $^ | awk '{print $$5}') upload: $(OBJDIR)/$(TARGET).bin @echo "Using dfu-util at $(DFU_ADDR)" $(Q)dfu-util -d 0483:df11 -c 1 -i 0 -a 0 -s $(DFU_ADDR) -D $^ +ifeq ($(VERIFY),1) + @echo "Reading flashed bin file of size $(DFU_SIZE) for verification" $(Q)rm -f $(OBJDIR)/verify.bla $(Q)dfu-util -d 0483:df11 -c 1 -i 0 -a 0 -s $(DFU_ADDR):$(DFU_SIZE) -U $(OBJDIR)/verify.bla $(Q)diff $^ $(OBJDIR)/verify.bla $(Q)rm -f $(OBJDIR)/verify.bla +endif # # serial flash mode