mirror of
https://github.com/micropython/micropython.git
synced 2025-12-13 08:20:13 +01:00
Some checks failed
JavaScript code lint and formatting with Biome / eslint (push) Has been cancelled
Check code formatting / code-formatting (push) Has been cancelled
Check spelling with codespell / codespell (push) Has been cancelled
Build docs / build (push) Has been cancelled
Check examples / embedding (push) Has been cancelled
Package mpremote / build (push) Has been cancelled
.mpy file format and tools / test (push) Has been cancelled
Build ports metadata / build (push) Has been cancelled
alif port / build_alif (alif_ae3_build) (push) Has been cancelled
cc3200 port / build (push) Has been cancelled
esp32 port / build_idf (esp32_build_cmod_spiram_s2) (push) Has been cancelled
esp32 port / build_idf (esp32_build_s3_c3) (push) Has been cancelled
esp8266 port / build (push) Has been cancelled
mimxrt port / build (push) Has been cancelled
nrf port / build (push) Has been cancelled
powerpc port / build (push) Has been cancelled
qemu port / build_and_test_arm (bigendian) (push) Has been cancelled
qemu port / build_and_test_arm (sabrelite) (push) Has been cancelled
qemu port / build_and_test_arm (thumb) (push) Has been cancelled
qemu port / build_and_test_rv32 (push) Has been cancelled
renesas-ra port / build_renesas_ra_board (push) Has been cancelled
rp2 port / build (push) Has been cancelled
samd port / build (push) Has been cancelled
stm32 port / build_stm32 (stm32_misc_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_nucleo_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_pyb_build) (push) Has been cancelled
unix port / minimal (push) Has been cancelled
unix port / reproducible (push) Has been cancelled
unix port / standard (push) Has been cancelled
unix port / standard_v2 (push) Has been cancelled
unix port / coverage (push) Has been cancelled
unix port / coverage_32bit (push) Has been cancelled
unix port / nanbox (push) Has been cancelled
unix port / float (push) Has been cancelled
unix port / stackless_clang (push) Has been cancelled
unix port / float_clang (push) Has been cancelled
unix port / settrace (push) Has been cancelled
unix port / settrace_stackless (push) Has been cancelled
unix port / macos (push) Has been cancelled
unix port / qemu_mips (push) Has been cancelled
unix port / qemu_arm (push) Has been cancelled
unix port / qemu_riscv64 (push) Has been cancelled
unix port / sanitize_undefined (push) Has been cancelled
webassembly port / build (push) Has been cancelled
windows port / build-vs (Debug, x64, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Debug, x64, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Debug, x86, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Debug, x86, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x64, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x64, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x86, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x86, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, x86, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x86, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, dev) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, standard) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, dev) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, standard) (push) Has been cancelled
windows port / cross-build-on-linux (push) Has been cancelled
zephyr port / build (push) Has been cancelled
Python code lint and formatting with ruff / ruff (push) Has been cancelled
Signed-off-by: Damien George <damien@micropython.org>
131 lines
3.4 KiB
Makefile
131 lines
3.4 KiB
Makefile
BOARD ?= ALIF_ENSEMBLE
|
|
BOARD_DIR ?= boards/$(BOARD)
|
|
BUILD ?= build-$(BOARD)
|
|
MCU_CORE ?= M55_HP
|
|
GIT_SUBMODULES += lib/tinyusb lib/alif_ensemble-cmsis-dfp lib/alif-security-toolkit
|
|
PORT ?= /dev/ttyACM0
|
|
|
|
ALIF_TOOLS ?= ../../lib/alif-security-toolkit/toolkit
|
|
|
|
JLINK_CMD_PREFIX = \
|
|
ExitOnError 1\n\
|
|
Device $(JLINK_DEV)\n\
|
|
SelectInterface SWD\n\
|
|
Speed auto\n\
|
|
Connect\n\
|
|
Reset\n\
|
|
ShowHWStatus\n
|
|
|
|
JLINK_CMD_SUFFIX = \
|
|
Reset\n\
|
|
Exit
|
|
|
|
ALIF_TOC_CONFIG = alif_cfg.json
|
|
ALIF_TOC_BIN = $(BUILD)/firmware.toc.bin
|
|
ALIF_TOC_APPS = $(BUILD)/$(ALIF_TOC_CONFIG)
|
|
ALIF_TOC_CFLAGS += -DTOC_CFG_FILE=$(ALIF_TOOLKIT_CFG_FILE)
|
|
|
|
ifeq ($(MCU_CORE),M55_HP)
|
|
|
|
ALIF_TOC_CFLAGS += -DTOC_CORE_M55_HP_APP=1
|
|
ALIF_TOC_APPS += $(BUILD)/M55_HP/firmware.bin
|
|
JLINK_CMD = '\
|
|
$(JLINK_CMD_PREFIX)\
|
|
LoadFile "$(BUILD)/M55_HP/firmware.bin",0x80020000\n\
|
|
$(JLINK_CMD_SUFFIX)'
|
|
|
|
else ifeq ($(MCU_CORE),M55_HE)
|
|
|
|
ALIF_TOC_CFLAGS += -DTOC_CORE_M55_HE_APP=1
|
|
ALIF_TOC_APPS += $(BUILD)/M55_HE/firmware.bin
|
|
JLINK_CMD = '\
|
|
$(JLINK_CMD_PREFIX)\
|
|
LoadFile "$(BUILD)/M55_HE/firmware.bin",0x80320000\n\
|
|
$(JLINK_CMD_SUFFIX)'
|
|
|
|
else ifeq ($(MCU_CORE),M55_DUAL)
|
|
|
|
ALIF_TOC_CFLAGS += -DTOC_CORE_M55_HP_APP=1
|
|
ALIF_TOC_CFLAGS += -DTOC_CORE_M55_HE_APP=1
|
|
ALIF_TOC_APPS += $(BUILD)/M55_HP/firmware.bin $(BUILD)/M55_HE/firmware.bin
|
|
JLINK_CMD = '\
|
|
$(JLINK_CMD_PREFIX)\
|
|
LoadFile "$(BUILD)/M55_HP/firmware.bin",0x80020000\n\
|
|
LoadFile "$(BUILD)/M55_HE/firmware.bin",0x80320000\n\
|
|
$(JLINK_CMD_SUFFIX)'
|
|
|
|
else
|
|
$(error Invalid MCU core specified))
|
|
endif
|
|
|
|
include ../../py/mkenv.mk
|
|
include mpconfigport.mk
|
|
include $(BOARD_DIR)/mpconfigboard.mk
|
|
|
|
# include py core make definitions
|
|
include $(TOP)/py/py.mk
|
|
include $(TOP)/extmod/extmod.mk
|
|
|
|
################################################################################
|
|
# Main targets
|
|
|
|
.PHONY: all
|
|
all: $(BUILD)/firmware.zip
|
|
|
|
# Force make commands to run the targets every time
|
|
# regardless of whether firmware.toc.bin already exists
|
|
# to detect changes in the source files and rebuild.
|
|
.PHONY: $(BUILD)/M55_HE/firmware.bin
|
|
.PHONY: $(BUILD)/M55_HP/firmware.bin
|
|
|
|
$(BUILD):
|
|
$(MKDIR) -p $@
|
|
|
|
$(BUILD)/M55_HP/firmware.bin:
|
|
make -f alif.mk BUILD=$(BUILD)/M55_HP MCU_CORE=M55_HP MICROPY_PY_OPENAMP_MODE=0
|
|
|
|
$(BUILD)/M55_HE/firmware.bin:
|
|
make -f alif.mk BUILD=$(BUILD)/M55_HE MCU_CORE=M55_HE MICROPY_PY_OPENAMP_MODE=1
|
|
|
|
$(BUILD)/$(ALIF_TOC_CONFIG): mcu/$(ALIF_TOC_CONFIG).in | $(BUILD)
|
|
$(ECHO) "Preprocess toc config $@"
|
|
$(Q)$(CPP) -P -E $(ALIF_TOC_CFLAGS) - < mcu/$(ALIF_TOC_CONFIG).in > $@
|
|
|
|
$(ALIF_TOC_BIN): $(ALIF_TOC_APPS)
|
|
$(Q)python $(ALIF_TOOLS)/app-gen-toc.py \
|
|
--filename $(abspath $(BUILD)/$(ALIF_TOC_CONFIG)) \
|
|
--output-dir $(BUILD) \
|
|
--firmware-dir $(BUILD) \
|
|
--output $@
|
|
|
|
$(BUILD)/firmware.zip: $(ALIF_TOC_BIN) $(ALIF_TOC_APPS)
|
|
$(ECHO) "Create $@"
|
|
$(Q)$(ZIP) -q - $(BUILD)/application_package.ds $^ > $@
|
|
|
|
.PHONY: deploy
|
|
deploy: $(ALIF_TOC_BIN)
|
|
$(ECHO) "Writing $< to the board"
|
|
$(Q)python $(ALIF_TOOLS)/app-write-mram.py \
|
|
--cfg-part $(ALIF_TOOLKIT_CFG_PART) \
|
|
--port $(PORT) \
|
|
--pad \
|
|
--images file:$(BUILD)/application_package.ds
|
|
|
|
.PHONY: deploy-jlink
|
|
deploy-jlink: $(ALIF_TOC_APPS)
|
|
$(Q)echo -e $(JLINK_CMD) | $(JLINK_EXE)
|
|
|
|
.PHONY: maintenance
|
|
maintenance:
|
|
$(Q)python $(ALIF_TOOLS)/maintenance.py \
|
|
--cfg-part $(ALIF_TOOLKIT_CFG_PART) \
|
|
--port $(PORT)
|
|
|
|
.PHONY: update-system-package
|
|
update-system-package:
|
|
$(Q)python $(ALIF_TOOLS)/updateSystemPackage.py \
|
|
--cfg-part $(ALIF_TOOLKIT_CFG_PART) \
|
|
--port $(PORT)
|
|
|
|
include $(TOP)/py/mkrules.mk
|