[conf] slightly easier configuration when using BlackMagicProbe

if FLASH_MODE=JTAG and BMP_PORT set, use jtag via bmp
if FLASH_MODE=SWD use that via bmp, print error if BMP_PORT not set
This commit is contained in:
Felix Ruess
2012-09-18 22:41:29 +02:00
parent 6e5f3adb66
commit 7c5e62611d
+39 -10
View File
@@ -231,15 +231,26 @@ $(AOBJ) : $(OBJDIR)/%.o : %.S
$(Q)test -d $(dir $@) || mkdir -p $(dir $@)
$(Q)$(CC) -c $(AFLAGS) $< -o $@
#
# check which flash mode is configured
#
ifeq ($(FLASH_MODE),DFU)
#
# DFU flash mode
upload: $(OBJDIR)/$(TARGET).bin
@echo "Using stm32 mem dfu loader"
$(PYTHON) $(PAPARAZZI_SRC)/sw/tools/dfu/stm32_mem.py $^
#
# serial flash mode
else ifeq ($(FLASH_MODE),SERIAL)
upload: $(OBJDIR)/$(TARGET).bin
$(LOADER) -p /dev/ttyUSB0 -b 115200 -e -w -v $^
#
# JTAG flash mode
else ifeq ($(FLASH_MODE),JTAG)
# either via normal jtag or BlackMagicProbe
ifeq ($(BMP_PORT),)
# normal jtag via OpenOCD
upload: $(OBJDIR)/$(TARGET).hex
@echo "Assuming luftboot bootloader: $(ASSUMING_LUFTBOOT)"
@echo "Using OOCD = $(OOCD)"
@@ -254,18 +265,13 @@ upload: $(OBJDIR)/$(TARGET).hex
-c reset \
-c shutdown
else
ifndef $(BMP_UPLOAD_SCRIPT)
ifeq ($(BMP_METHOD),JTAG)
BMP_UPLOAD_SCRIPT = $(PAPARAZZI_SRC)/conf/boards/upload_scripts/bmp_jtag_flash.scr
else ifeq ($(BMP_METHOD),SWD)
BMP_UPLOAD_SCRIPT = $(PAPARAZZI_SRC)/conf/boards/upload_scripts/bmp_swd_flash.scr
else
BMP_UPLOAD_SCRIPT = $(PAPARAZZI_SRC)/sw/ext/libopencm3/scripts/black_magic_probe_flash.scr
endif
endif
# jtag via BMP
ifndef $(BMP_UPLOAD_SCRIPT)
BMP_UPLOAD_SCRIPT = $(PAPARAZZI_SRC)/conf/boards/upload_scripts/bmp_jtag_flash.scr
endif
upload: $(OBJDIR)/$(TARGET).elf
@echo "Using Black Magic Probe"
@echo "Using Black Magic Probe with JTAG"
@echo "Using GDB = $(GDB)"
@echo " BMP\t$<"
$(Q)$(GDB) --batch \
@@ -273,6 +279,29 @@ upload: $(OBJDIR)/$(TARGET).elf
-x $(BMP_UPLOAD_SCRIPT) \
$<
endif
#
# SWD flash mode
else ifeq ($(FLASH_MODE),SWD)
# only works if BMP_PORT is defined
ifneq ($(BMP_PORT),)
ifndef $(BMP_UPLOAD_SCRIPT)
BMP_UPLOAD_SCRIPT = $(PAPARAZZI_SRC)/conf/boards/upload_scripts/bmp_swd_flash.scr
endif
upload: $(OBJDIR)/$(TARGET).elf
@echo "Using Black Magic Probe with SWD"
@echo "Using GDB = $(GDB)"
@echo " BMP\t$<"
$(Q)$(GDB) --batch \
-ex 'target extended-remote $(BMP_PORT)' \
-x $(BMP_UPLOAD_SCRIPT) \
$<
else
# print error if BMP_PORT not specified
upload:
@echo "BMP_PORT not specified for SWD flash mode"
endif
#
# no known flash mode
else
upload:
@echo unknown flash_mode $(FLASH_MODE)