From 4145d6bec052608b0b023cb85f2f7f9e51521482 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Sun, 31 Dec 2017 17:24:46 +1100 Subject: Update DMBS to the latest version. --- LUFA/Build/DMBS/DMBS/avrdude.mk | 47 +++++++++++++++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 6 deletions(-) (limited to 'LUFA/Build/DMBS/DMBS/avrdude.mk') diff --git a/LUFA/Build/DMBS/DMBS/avrdude.mk b/LUFA/Build/DMBS/DMBS/avrdude.mk index c4bac8fd0..7b5f64ac1 100644 --- a/LUFA/Build/DMBS/DMBS/avrdude.mk +++ b/LUFA/Build/DMBS/DMBS/avrdude.mk @@ -7,23 +7,28 @@ # DMBS_BUILD_MODULES += AVRDUDE -DMBS_BUILD_TARGETS += avrdude avrdude-ee +DMBS_BUILD_TARGETS += avrdude-lfuse avrdude-hfuse avrdude-efuse avrdude-lock avrdude-fuses +DMBS_BUILD_TARGETS += avrdude avrdude-ee avrdude-all avrdude-all-ee DMBS_BUILD_MANDATORY_VARS += MCU TARGET -DMBS_BUILD_OPTIONAL_VARS += AVRDUDE_PROGRAMMER AVRDUDE_PORT AVRDUDE_FLAGS AVRDUDE_MEMORY +DMBS_BUILD_OPTIONAL_VARS += AVRDUDE_PROGRAMMER AVRDUDE_PORT AVRDUDE_FLAGS AVRDUDE_MEMORY AVRDUDE_BAUD +DMBS_BUILD_OPTIONAL_VARS += AVRDUDE_LFUSE AVRDUDE_HFUSE AVRDUDE_EUSE AVRDUDE_LOCK DMBS_BUILD_PROVIDED_VARS += DMBS_BUILD_PROVIDED_MACROS += -# Conditionally import the CORE module of DMBS if it is not already imported +# Import the CORE module of DMBS DMBS_MODULE_PATH := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST)))) -ifeq ($(findstring CORE, $(DMBS_BUILD_MODULES)),) - include $(DMBS_MODULE_PATH)/core.mk -endif +include $(DMBS_MODULE_PATH)/core.mk # Default values of optionally user-supplied variables AVRDUDE_PROGRAMMER ?= jtagicemkii AVRDUDE_PORT ?= usb AVRDUDE_FLAGS ?= AVRDUDE_MEMORY ?= flash +AVRDUDE_LFUSE ?= +AVRDUDE_HFUSE ?= +AVRDUDE_EFUSE ?= +AVRDUDE_LOCK ?= +AVRDUDE_BAUD ?= # Sanity check user supplied values $(foreach MANDATORY_VAR, $(DMBS_BUILD_MANDATORY_VARS), $(call ERROR_IF_UNSET, $(MANDATORY_VAR))) @@ -37,6 +42,9 @@ MSG_AVRDUDE_CMD := ' [AVRDUDE] :' # Construct base avrdude command flags BASE_AVRDUDE_FLAGS := -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) +ifneq ($(AVRDUDE_BAUD),) + BASE_AVRDUDE_FLAGS += -b $(AVRDUDE_BAUD) +endif # Programs in the target FLASH memory using AVRDUDE avrdude: $(TARGET).hex $(MAKEFILE_LIST) @@ -48,5 +56,32 @@ avrdude-ee: $(TARGET).eep $(MAKEFILE_LIST) @echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" EEPROM using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\" avrdude $(BASE_AVRDUDE_FLAGS) -U eeprom:w:$< $(AVRDUDE_FLAGS) +# Programs in the target fuses using AVRDUDE +avrdude-lfuse: $(MAKEFILE_LIST) + @echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" low fuse using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\" + $(call ERROR_IF_EMPTY, AVRDUDE_LFUSE) + avrdude $(BASE_AVRDUDE_FLAGS) -Ulfuse:w:$(AVRDUDE_LFUSE):m $(AVRDUDE_FLAGS) + +avrdude-hfuse: $(MAKEFILE_LIST) + @echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" high fuse using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\" + $(call ERROR_IF_EMPTY, AVRDUDE_HFUSE) + avrdude $(BASE_AVRDUDE_FLAGS) -Uhfuse:w:$(AVRDUDE_HFUSE):m $(AVRDUDE_FLAGS) + +avrdude-efuse: $(MAKEFILE_LIST) + @echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" extended fuse using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\" + $(call ERROR_IF_EMPTY, AVRDUDE_EFUSE) + avrdude $(BASE_AVRDUDE_FLAGS) -Uefuse:w:$(AVRDUDE_EFUSE):m $(AVRDUDE_FLAGS) + +avrdude-lock: $(MAKEFILE_LIST) + @echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" lock bits using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\" + $(call ERROR_IF_EMPTY, AVRDUDE_LOCK) + avrdude $(BASE_AVRDUDE_FLAGS) -Ulock:w:$(AVRDUDE_LOCK):m $(AVRDUDE_FLAGS) + +avrdude-fuses: avrdude-lfuse avrdude-hfuse avrdude-efuse avrdude-lock + +avrdude-all: avrdude avrdude-fuses + +avrdude-all-ee: avrdude avrdude-ee avrdude-fuses + # Phony build targets for this module .PHONY: $(DMBS_BUILD_TARGETS) -- cgit v1.2.3