INMYS WIKI

Инженерами для инженеров

Инструменты пользователя

Инструменты сайта


boards:nms-uq7-imx8mini:buildsw

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
boards:nms-uq7-imx8mini:buildsw [2022/07/18 15:04] Владимир Андреевboards:nms-uq7-imx8mini:buildsw [2022/09/08 10:03] (текущий) Komlik Ivan
Строка 1: Строка 1:
-===== Сборка программной части для IMX8M_MN ===== +===== Сборка программной части для IMX8M_MN/MM ===== 
-Для сборки загрузчика, ядра и файловой системы, нужно скачать три файла с диска: SDK, firmware, dl.tar.gz, файл образа контейнера и в терминале перейти в каталог с файлами:+Для сборки загрузчика, ядра и файловой системы, нужно скачать три файла с {{https://disk.yandex.ru/d/yM9h7JoW7H-CYw|диска}}: SDK, firmware, dl.tar.gz, файл образа контейнера и в терминале перейти в каталог с файлами:
   * Распаковать sdk <code>tar -xvf sdk_2021.04.24.tar.gz</code>   * Распаковать sdk <code>tar -xvf sdk_2021.04.24.tar.gz</code>
   * Разрешить запуск firmware-imx-8.10.bin <code>chmod +x firmware-imx-8.10.bin</code>   * Разрешить запуск firmware-imx-8.10.bin <code>chmod +x firmware-imx-8.10.bin</code>
Строка 8: Строка 8:
  
 ==== kernel ==== ==== kernel ====
-Для сборки rootfs, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:+Для сборки kernel,dtb, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:
 <code> <code>
 sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/kernel sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/kernel
Строка 18: Строка 18:
  
 ==== bootloader ==== ==== bootloader ====
-Для сборки rootfs, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:+ Для сборки bootloader для загрузки с QSPI, нужно перейти в каталог sdk_2021.04.24 и выполнить команду:
 <code> <code>
 sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/bootloader sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/bootloader
 </code> </code>
-Результат: //bootloader/uboot-imx/flash.bin.fspi//+ 
 +Результат:  
 +  * //bootloader/uboot-imx/flash.bin.fspi// 
 +  
 +Для сборки bootloader для загрузки с sd card, нужно перейти в каталог sdk_2021.04.24 и выполнить команду: 
 +<code> 
 +sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/bootloader flash.bin.sdcard 
 +</code> 
 + 
 +Результат:  
 +  * //bootloader/uboot-imx/flash.bin.sdcard// 
 + 
 +Сделать SDcard загрузочной (установка bootloader на SDcard) 
 +<code> 
 +dd if=bootloader/uboot-imx/flash.bin.sdcard of=/dev/sdX bs=1024 seek=33 
 +</code>
  
 ==== rootfs ==== ==== rootfs ====
Строка 43: Строка 58:
 sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/rootfs sudo docker run -v $(pwd):/BR -t px30_generic make -C /BR/rootfs
 </code> </code>
-Результат: //rootfs/buildroot-2020.11/output/images/rootfs.ext2.gz//+Результат: //rootfs/buildroot-2020.11/output/images/rootfs.ext2//
  
 +==== создание загрузочной sd карты ====
 +понадобятся bootloader/uboot-imx/flash.bin.sdcard rootfs/buildroot-2020.11/output/images/rootfs.ext2 (собранные есть на яндекс диске: https://disk.yandex.ru/d/yM9h7JoW7H-CYw)
 +
 +<code>
 +sudo su
 +cd <...>/sdk_2021.04.24
 +dev=/dev/sdX
 +umount ${dev}*
 +echo 'o n p 1 16384 +2G n p 2 4210688 +1G w'| tr ' ' '\n' | fdisk ${dev}
 +dd if=rootfs/buildroot-2020.11/output/images/rootfs.ext2 of=${dev}1 bs=1M
 +dd if=bootloader/uboot-imx/flash.bin.sdcard of=${dev} bs=1024 seek=33
 +sync
 +</code>
 +Вставить sd карту в отладочную плату, установить jumper "bios_dis" (загружаться с sdcard а не с qspi)
 +подать питание, в u-boot, после "Hit any key to stop autoboot:"
 +ввести
 +<code>
 +setenv mmcdev 1
 +saveenv
 +boot
 +</code>
 +
 +==== Советы howto ====
 +вот так можно собрать cmake проект:
 +<code>
 +BR=<path_to_buildroot>   #/xxx/xxx/buildroot-2020.11
 +cmake -DCMAKE_TOOLCHAIN_FILE=${BR}/output/host/usr/share/buildroot/toolchainfile.cmake .
 +make
 +в toolchainfile.cmake указаны пути к компилятору. библиотекам и includ-ам
 +</code>
boards/nms-uq7-imx8mini/buildsw.1658156660.txt.gz · Последнее изменение: 2022/07/18 15:04 — Владимир Андреев