mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-01-18 12:52:44 +01:00
135a37a4d1
In order to flash AVR devices, avrdude needs the ability to reset them: Those using a bootloader will only enter it after a reset, and those programmed via ISP also need a reset to enter ISP mode. Sadly, avrdude has no option to reset the board. But running it without commands will read and print the boards identification and fuse settings. For this, as reset is needed. This commit uses this side-effect reset to implement make reset for all AVR based boards
24 lines
987 B
Makefile
24 lines
987 B
Makefile
FLASHER = avrdude
|
|
DIST_PATH = $(RIOTBOARD)/$(BOARD)/dist
|
|
DEBUGSERVER_PORT = 4242
|
|
DEBUGSERVER = $(DIST_PATH)/debug_srv.sh
|
|
DEBUGSERVER_INTERFACE ?=
|
|
DEBUGSERVER_FLAGS = "-g -j usb $(DEBUGSERVER_INTERFACE) :$(DEBUGSERVER_PORT)"
|
|
DEBUGGER_FLAGS = "-x $(RIOTBOARD)/$(BOARD)/dist/gdb.conf $(ELFFILE)"
|
|
DEBUGGER = $(DIST_PATH)/debug.sh $(DEBUGSERVER_FLAGS) $(DIST_PATH) $(DEBUGSERVER_PORT)
|
|
|
|
PROGRAMMER_FLAGS = -p $(subst atmega,m,$(CPU))
|
|
|
|
# Set flasher port only for programmers that require it
|
|
ifneq (,$(filter $(PROGRAMMER),arduino avr109 buspirate stk500v1 stk500v2 wiring))
|
|
# make the flasher port configurable (e.g. with atmelice the port is usb)
|
|
# defaults to terminal's serial port if not configured
|
|
PROGRAMMER_FLAGS += -P $(PROG_DEV)
|
|
endif
|
|
PROGRAMMER_FLAGS += $(FFLAGS_EXTRA)
|
|
|
|
# don't force to flash HEXFILE, but set it as default
|
|
FLASHFILE ?= $(HEXFILE)
|
|
FFLAGS += -c $(PROGRAMMER) $(PROGRAMMER_FLAGS) -U flash:w:$(FLASHFILE)
|
|
RESET ?= $(FLASHER) -c $(PROGRAMMER) $(PROGRAMMER_FLAGS)
|