# Add board selector (USB serial) to OpenOCD options if specified. # Use /dist/tools/usb-serial/list-ttys.sh to find out serial number. # Usage: SERIAL="0200..." BOARD="pba-d-01-kw2x" make flash ifneq (,$(SERIAL)) # Trigger adapter selection on SERIAL in 'openocd-adapters' DEBUG_ADAPTER_ID ?= $(SERIAL) SERIAL_TTY = $(firstword $(shell $(RIOTTOOLS)/usb-serial/find-tty.sh $(SERIAL))) ifeq (,$(SERIAL_TTY)) $(error Did not find a device with serial $(SERIAL)) endif PORT_LINUX := $(SERIAL_TTY) endif # this board uses openocd PROGRAMMER ?= openocd PROGRAMMERS_SUPPORTED += openocd # We need special handling of the watchdog if we want to speed up the flash # verification by using the MCU to compute the image checksum after flashing. # wdog-disable.bin is a precompiled binary which will disable the watchdog and # return control to the debugger (OpenOCD) OPENOCD_PRE_VERIFY_CMDS += \ -c 'load_image $(RIOTCPU)/$(CPU)/dist/wdog-disable.bin 0x20000000 bin' \ -c 'resume 0x20000000' OPENOCD_PRE_FLASH_CHECK_SCRIPT = $(RIOTCPU)/$(CPU)/dist/check-fcfield.sh OPENOCD_DEBUG_ADAPTER ?= dap # The board can become un-flashable after some firmware, use connect_assert_srst # to always be able to flash or reset the board. OPENOCD_RESET_USE_CONNECT_ASSERT_SRST ?= 1