Сборка программной части для IMX8M_MN

Для сборки загрузчика, ядра и файловой системы, нужно скачать три файла с диска: SDK, firmware, dl.tar.gz, файл образа контейнера и в терминале перейти в каталог с файлами:

Распаковать sdk

tar -xvf sdk_2021.04.24.tar.gz

Cкопировать firmware-imx-8.10.bin в папку sdk_2021.04.24/bootloader

cp firmware-imx-8.10.bin sdk_2021.04.24/bootloader

Собрать образ контейнера

sudo docker build -t px30_generic .

kernel

Для сборки rootfs, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:

sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/kernel

Результат:

kernel/linux-imx/arch/arm64/boot/Image

kernel/linux-imx/arch/arm64/boot/dts/freescale/imx8mm-inmys-uq7-evk-lvds.dtb

bootloader

Для сборки rootfs, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:

sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/bootloader

Результат: bootloader/uboot-imx/flash.bin.fspi

rootfs

Для сборки rootfs, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:

sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/rootfs

Начнёт скачиваться buildroot. На некотором моменте загрузка завершится с ошибкой, нужно будет распаковать архив dl:

sudo tar -xvf ../dl.tar.gz -C rootfs/buildroot-2020.11

Выполнить очистку проекта

cd rootfs/buildroot-2020.11/
sudo make clean
cd ../../

Запустить сборку второй раз:

sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/rootfs

Результат: rootfs/buildroot-2020.11/output/images/rootfs.ext2.gz