IMX_PACKAGE_NAME = "${SOC}-${MCORE_TYPE}-demo-${PV}"
# 1. Расширяем пути поиска файлов. BitBake автоматически заглянет в папку 'files'
FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
# 2. Оставляем оригинальную строку NXP абсолютно нетронутой
SRC_URI:append = ";name=${SOC}"
SCR = "SCR-${SOC}-${MCORE_TYPE}-demo.txt"
MCORE_DEMO_FILE_EXTENSION ?= "bin"
MCORE_DEMO_FILE_EXTENSION:mx7ulp-nxp-bsp = "img"
do_install () {
install -d ${D}${nonarch_base_libdir}/firmware
# 3. Так как файлы не были объявлены в SRC_URI, BitBake не скопировал их в ${S} автоматом.
# Мы явно копируем их из папки поиска напрямую во встроенный do_install:
install -m 0644 ${WORKDIR}/power_mode_switch_ddr_rtos_imx95_cm7.bin ${D}${nonarch_base_libdir}/firmware/
install -m 0644 ${WORKDIR}/bootloader_cm7.bin ${D}${nonarch_base_libdir}/firmware/
# Оригинальный код NXP (подхватит дефолтные прошивки)
if ls ${S}/*.elf > /dev/null 2>&1; then
install -m 0644 ${S}/*.elf ${D}${nonarch_base_libdir}/firmware
fi
install -m 0644 ${S}/*.${MCORE_DEMO_FILE_EXTENSION} ${D}${nonarch_base_libdir}/firmware
}
do_deploy () {
install -d ${DEPLOYDIR}/mcore-demos
# 4. Точно так же деплоим ваши кастомные бинарники из рабочей директории:
install -m 0644 ${WORKDIR}/power_mode_switch_ddr_rtos_imx95_cm7.bin ${DEPLOYDIR}/mcore-demos/
install -m 0644 ${WORKDIR}/bootloader_cm7.bin ${DEPLOYDIR}/mcore-demos/
# Оригинальный код NXP
install -m 0644 ${S}/*.${MCORE_DEMO_FILE_EXTENSION} ${DEPLOYDIR}/mcore-demos/
}
addtask deploy after do_install
PACKAGE_ARCH = "${MACHINE_SOCARCH}"