Загрузка данных


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}"