nes-proj/arch/platform/openmote-cc2538/Makefile.openmote-cc2538

48 lines
1.5 KiB
Makefile

# openmote-cc2538 platform makefile
### Allow the OpenMote-CC2538 platform to support different CC2538 chip revisions
ifeq ($(findstring REV_A1,$(BOARD_REVISION)),REV_A1)
CFLAGS+=-DCC2538_DEV_CONF=CC2538_DEV_CC2538SF23
endif
ifndef CONTIKI
$(error CONTIKI not defined! You must specify where CONTIKI resides!)
endif
### Configure the build for the board and pull in board-specific sources
CONTIKI_TARGET_DIRS += . dev
PLATFORM_ROOT_DIR = $(ARCH_PATH)/platform/$(TARGET)
### Include
CONTIKI_TARGET_SOURCEFILES += platform.c board.c
CONTIKI_TARGET_SOURCEFILES += leds-arch.c board-buttons.c openmote-sensors.c
CONTIKI_TARGET_SOURCEFILES += antenna.c adxl346.c max44009.c sht21.c tps62730.c
CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES)
### Define the CPU directory
CONTIKI_CPU=$(ARCH_PATH)/cpu/cc2538
include $(CONTIKI_CPU)/Makefile.cc2538
MODULES += os/storage/cfs
PYTHON = python
BSL_FLAGS += -e --bootloader-invert-lines -w -v -b 450000
ifdef PORT
BSL_FLAGS += -p $(PORT)
endif
BSL = $(CONTIKI)/tools/cc2538-bsl/cc2538-bsl.py
%.upload: $(OUT_BIN) $(OUT_ELF)
ifeq ($(wildcard $(BSL)), )
@echo "ERROR: Could not find the cc2538-bsl script. Did you run 'git submodule update --init' ?"
else
$(eval BSL_ADDRESS_ARG := -a $(shell $(OBJDUMP) -h \
$(BUILD_DIR_BOARD)/$*.elf | grep -B1 LOAD | \
grep -Ev 'LOAD|\-\-' | awk '{print "0x" $$5}' | \
sort -g | head -1))
$(PYTHON) $(BSL) $(BSL_FLAGS) $(BSL_ADDRESS_ARG) $<
endif