# MULLE_SERIAL is used to select which specific Mulle board we are compiling for. ifdef MULLE_SERIAL CFLAGS += -DMULLE_SERIAL=$(MULLE_SERIAL) endif # Default debug adapter choice is to use the Mulle programmer board DEBUG_ADAPTER ?= mulle # Host OS name OS := $(shell uname) # Fall back to PROGRAMMER_SERIAL for backwards compatibility DEBUG_ADAPTER_ID ?= $(PROGRAMMER_SERIAL) ifeq ($(PORT),) # try to find tty name by serial number, only works on Linux currently. ifeq ($(OS),Linux) ifneq ($(DEBUG_ADAPTER_ID),) PORT := $(firstword $(shell $(RIOTTOOLS)/usb-serial/find-tty.sh '^$(DEBUG_ADAPTER_ID)$$')) else # find-tty.sh will return the first USB tty if no serial is given. PORT := $(firstword $(shell $(RIOTTOOLS)/usb-serial/find-tty.sh)) endif else ifeq ($(OS),Darwin) ifneq ($(DEBUG_ADAPTER_ID),) PORT := /dev/tty.usbserial-$(DEBUG_ADAPTER_ID)B else PORT := $(firstword $(sort $(wildcard /dev/tty.usbserial*))) endif endif endif ifeq ($(PORT),) # fall back to a sensible default PORT := /dev/ttyUSB0 endif # 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) export OPENOCD_PRE_VERIFY_CMDS += \ -c 'load_image $(RIOTCPU)/$(CPU)/dist/wdog-disable.bin 0x20000000 bin' \ -c 'resume 0x20000000' export PRE_FLASH_CHECK_SCRIPT = $(RIOTCPU)/$(CPU)/dist/check-fcfield.sh # this board uses openocd include $(RIOTMAKE)/tools/openocd.inc.mk # setup serial terminal include $(RIOTMAKE)/tools/serial.inc.mk