rt10xx use bootloader bin for self-update
- add flash pyocd with bin file target - should fix action ci for self-update
This commit is contained in:
parent
752e52fec1
commit
c67d93c310
10 changed files with 34 additions and 27 deletions
|
|
@ -62,7 +62,11 @@ SELF_ASFLAGS = $(ASFLAGS)
|
|||
|
||||
include ../self_update.mk
|
||||
|
||||
# required for uf2 conversion
|
||||
# self-update uf2 file
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).uf2: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex
|
||||
@echo CREATE $@
|
||||
$(PYTHON3) $(TOP)/lib/uf2/utils/uf2conv.py -f $(UF2_FAMILY_ID) -c -o $@ $^
|
||||
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).elf
|
||||
@echo CREATE $@
|
||||
@$(OBJCOPY) -O ihex $^ $@
|
||||
|
|
|
|||
|
|
@ -41,6 +41,8 @@ endif
|
|||
BUILD = _build/$(BOARD)
|
||||
BIN = _bin/$(BOARD)
|
||||
|
||||
OUTNAME = tinyuf2-$(BOARD)
|
||||
|
||||
#-------------- Source files and compiler flags --------------
|
||||
|
||||
# PORT is directory name containing the Makefile
|
||||
|
|
|
|||
|
|
@ -58,22 +58,19 @@ INC += \
|
|||
|
||||
include ../rules.mk
|
||||
|
||||
#-------------- Self-update --------------
|
||||
SELF_CFLAGS = $(CFLAGS) -DTINYUF2_SELF_UPDATE
|
||||
SELF_LDFLAGS = $(LDFLAGS)
|
||||
SELF_LD_FILES ?= $(PORT_DIR)/linker/$(MCU)_nor.ld $(PORT_DIR)/linker/self_update_memory.ld $(PORT_DIR)/linker/common.ld
|
||||
SELF_ASFLAGS = $(ASFLAGS)
|
||||
# Flash binary to correct bootloader address
|
||||
flash-pyocd-imxrt: $(BUILD)/$(OUTNAME).bin
|
||||
pyocd flash -t $(PYOCD_TARGET) -a 0x60000400 $<
|
||||
pyocd reset -t $(PYOCD_TARGET)
|
||||
|
||||
#-------------- Self-update --------------
|
||||
# RT10xx run entire bootloader from SRAM and
|
||||
# can directly flash the bootloader region
|
||||
# without using self-update app as other port
|
||||
#--------------------------------------------
|
||||
include ../self_update.mk
|
||||
|
||||
# required for uf2 conversion
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).elf
|
||||
# self-update uf2 file
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).uf2: $(BUILD)/$(OUTNAME).bin $(SELF_OBJ_DIRS)
|
||||
@echo CREATE $@
|
||||
@$(OBJCOPY) -O ihex -R .flash_config -R .ivt $^ $@
|
||||
|
||||
# required for self-update elf compile
|
||||
$(SELF_BUILD_OBJ)/self_update/$(OUTNAME).c: $(SELF_BUILD_OBJ)/self_update/$(OUTNAME)-textonly.bin
|
||||
$(PYTHON3) $(TOP)/lib/uf2/utils/uf2conv.py --carray $^ -o $@
|
||||
|
||||
$(SELF_BUILD_OBJ)/self_update/$(OUTNAME)-textonly.bin: $(BUILD)/$(OUTNAME).elf
|
||||
@$(OBJCOPY) -O binary -R .flash_config -R .ivt $^ $@
|
||||
$(PYTHON3) $(TOP)/lib/uf2/utils/uf2conv.py -f $(UF2_FAMILY_ID) -b 0x60000400 -c -o $@ $<
|
||||
|
|
|
|||
|
|
@ -8,5 +8,5 @@ JLINK_DEVICE = MIMXRT1011DAE5A
|
|||
PYOCD_TARGET = mimxrt1010
|
||||
|
||||
# flash using pyocd
|
||||
flash: flash-pyocd
|
||||
flash: flash-pyocd-imxrt
|
||||
erase: erase-pyocd
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ JLINK_DEVICE = MIMXRT1021DAG5A
|
|||
PYOCD_TARGET = mimxrt1020
|
||||
|
||||
# flash using pyocd
|
||||
flash: flash-pyocd
|
||||
flash: flash-pyocd-imxrt
|
||||
erase: erase-pyocd
|
||||
|
||||
# flash: flash-jlink
|
||||
|
|
|
|||
|
|
@ -8,5 +8,5 @@ JLINK_DEVICE = MIMXRT1062xxx6A
|
|||
PYOCD_TARGET = mimxrt1060
|
||||
|
||||
# flash using pyocd
|
||||
flash: flash-pyocd
|
||||
flash: flash-pyocd-imxrt
|
||||
erase: erase-pyocd
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@
|
|||
# Common make rules for all
|
||||
# ---------------------------------------
|
||||
|
||||
OUTNAME = tinyuf2-$(BOARD)
|
||||
|
||||
PYTHON3 ?= python3
|
||||
MKDIR = mkdir
|
||||
SED = sed
|
||||
|
|
|
|||
|
|
@ -13,12 +13,10 @@ $(SELF_OBJ): | $(SELF_OBJ_DIRS)
|
|||
$(SELF_OBJ_DIRS):
|
||||
@$(MKDIR) -p $@
|
||||
|
||||
# self-update uf2 target is defined by port Makefile
|
||||
self-update: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).uf2
|
||||
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).uf2: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex
|
||||
@echo CREATE $@
|
||||
$(PYTHON3) $(TOP)/lib/uf2/utils/uf2conv.py -f $(UF2_FAMILY_ID) -c -o $@ $^
|
||||
|
||||
# self-update elf require self_update/$(OUTPNAME0.c which is defined by port Makefile
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).elf: $(SELF_OBJ)
|
||||
@echo LINK $@
|
||||
@$(CC) -o $@ $(SELF_LDFLAGS) $(addprefix $(LD_SCRIPT_FLAG), $(SELF_LD_FILES)) $^ -Wl,--start-group $(LIBS) -Wl,--end-group
|
||||
|
|
|
|||
|
|
@ -66,7 +66,11 @@ SELF_ASFLAGS = $(ASFLAGS)
|
|||
|
||||
include ../self_update.mk
|
||||
|
||||
# required for uf2 conversion
|
||||
# self-update uf2 file
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).uf2: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex
|
||||
@echo CREATE $@
|
||||
$(PYTHON3) $(TOP)/lib/uf2/utils/uf2conv.py -f $(UF2_FAMILY_ID) -c -o $@ $^
|
||||
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).elf
|
||||
@echo CREATE $@
|
||||
@$(OBJCOPY) -O ihex $^ $@
|
||||
|
|
|
|||
|
|
@ -46,7 +46,11 @@ SELF_ASFLAGS = $(ASFLAGS)
|
|||
|
||||
include ../self_update.mk
|
||||
|
||||
# required for uf2 conversion
|
||||
# self-update uf2 file
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).uf2: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex
|
||||
@echo CREATE $@
|
||||
$(PYTHON3) $(TOP)/lib/uf2/utils/uf2conv.py -f $(UF2_FAMILY_ID) -c -o $@ $^
|
||||
|
||||
$(SELF_BUILD_OBJ)/$(SELF_OUTNAME).hex: $(SELF_BUILD_OBJ)/$(SELF_OUTNAME).elf
|
||||
@echo CREATE $@
|
||||
@$(OBJCOPY) -O ihex $^ $@
|
||||
|
|
|
|||
Loading…
Reference in a new issue