Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| boards:nms-uq7-komdiv-mk:user-guide [2026/07/13 10:45] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | boards:nms-uq7-komdiv-mk:user-guide [2026/07/22 14:46] (текущий) – [Сборка образа системы] Артем Слепов | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ====== Руководство пользователя ====== | ||
| + | |||
| + | Страница содержит руководство по подготовке программной части, сборке rootfs и ядра Linux для модуля **Q7_KOMDIV_MK**. | ||
| + | |||
| + | ===== Общая информация ===== | ||
| + | |||
| + | **Q7_KOMDIV_MK** используется как вычислительный модуль в составе встраиваемых и серверных систем. Для работы модуля требуется подготовить загрузчик, | ||
| + | |||
| + | В рамках данной страницы используется следующее окружение: | ||
| + | {{tablelayout? | ||
| + | ^ Компонент | ||
| + | | Хостовая ОС | Ubuntu 24.04 | | ||
| + | | Rootfs | ||
| + | | Ядро Linux | k5500vk018-linux | ||
| + | | Архитектура | ||
| + | | Сборка rootfs | ||
| + | |||
| + | ===== Состав программной части Q7_KOMDIV_MK ===== | ||
| + | |||
| + | Для работы модуля требуется три основных компонента: | ||
| + | |||
| + | ^ Компонент ^ Описание ^ Доступ к исходну кода ^ Место прошивки ^ | ||
| + | | Загрузчик | Barebox | Приватный репозиторий с доступом по токену | SPI FLASH 4MB на модуле | | ||
| + | | Ядро Linux | Linux с поддержкой k5500vk018 | Приватный репозиторий с доступом по токену | eMMC 4GB на модуле/ | ||
| + | | Rootfs | Buildroot 2025.02.7 + buildroot-external-inmys | Публичный GitHub Inmys | eMMC 4GB на модуле/ | ||
| + | |||
| + | <note important> | ||
| + | |||
| + | Для получения токена обратитесь на почту info@inmys.ru</ | ||
| + | ===== Подготовка окружения ===== | ||
| + | |||
| + | Сборка выполняется на **Ubuntu 24.04**. | ||
| + | |||
| + | Перед началом работы необходимо обновить список пакетов и установить кросс-компилятор для MIPS (требуется для сборки barebox): | ||
| + | |||
| + | < | ||
| + | sudo apt update | ||
| + | sudo apt install -y cpp-mips64el-linux-gnuabi64 | ||
| + | </ | ||
| + | |||
| + | Также предполагается, | ||
| + | |||
| + | ===== Сборка BareBox ===== | ||
| + | < | ||
| + | < | ||
| + | git clone gitlab.inmys.online ... | ||
| + | make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- srisa_defconfig | ||
| + | |||
| + | make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- -j24 | ||
| + | </ | ||
| + | |||
| + | Результат сборки находится по пути '' | ||
| + | ===== Сборка образа системы ===== | ||
| + | |||
| + | Введите логин и токен вместо '' | ||
| + | |||
| + | < | ||
| + | LOGIN=" | ||
| + | </ | ||
| + | |||
| + | Выполните следующие команды: | ||
| + | < | ||
| + | mkdir -p container | ||
| + | cd container | ||
| + | wget https:// | ||
| + | sudo docker build -t komdiv-sdk . | ||
| + | cd .. | ||
| + | wget https:// | ||
| + | tar -xf buildroot-2025.02.7.tar.gz | ||
| + | git clone https:// | ||
| + | sudo docker run -it -e USER=$USER -e USERID=$UID -v $(pwd):/BR -v " | ||
| + | </ | ||
| + | |||
| + | В Docker-контейнере выполнить: | ||
| + | < | ||
| + | make BR2_EXTERNAL=$PWD/ | ||
| + | cd output | ||
| + | export FORCE_UNSAFE_CONFIGURE=1 | ||
| + | make -j12 | ||
| + | </ | ||
| + | |||
| + | После завершения сборки необходимо выйти из контейнера сочетанием клавиш '' | ||
| + | |||
| + | Результаты сборки находятся в директории '' | ||
| + | |||
| + | ===== Прошивка загрузчика в SPI-флешку ===== | ||
| + | |||
| + | Осуществляется программатором FT2232H-56Q Mini Module с установленным переходником FT2232H-56Q Mini Module_Adapter | ||
| + | |||
| + | Необходимо подключить программатор FT2232H-56Q Mini Module к ПК | ||
| + | и подключить прищепку к плате, красным проводом вверх. Правильное положение прищепки достигается, | ||
| + | | {{ : | ||
| + | |||
| + | ==== Linux (Пример для Ubuntu 24.04) ==== | ||
| + | |||
| + | Установка зависимостей: | ||
| + | < | ||
| + | sudo apt update && sudo apt install flashrom -y | ||
| + | </ | ||
| + | |||
| + | Прошивка производится с помощью скрипта [[https:// | ||
| + | < | ||
| + | chmod +x burn-barebox.sh | ||
| + | ./ | ||
| + | </ | ||
| + | |||
| + | <hidden Пример успешного вывода> | ||
| + | < | ||
| + | 4+0 records in | ||
| + | 8192+0 records out | ||
| + | 4194304 bytes (4,2 MB, 4,0 MiB) copied, 0,0105851 s, 396 MB/s | ||
| + | 1881+1 records in | ||
| + | 1881+1 records out | ||
| + | 963180 bytes (963 kB, 941 KiB) copied, 0,0058463 s, 165 MB/s | ||
| + | flashrom unknown on Linux 6.14.0-28-generic (x86_64) | ||
| + | flashrom is free software, get the source code at https:// | ||
| + | |||
| + | Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns). | ||
| + | Found Winbond flash chip " | ||
| + | === | ||
| + | This flash part has status UNTESTED for operations: WP | ||
| + | The test status of this chip may have been updated in the latest development | ||
| + | version of flashrom. If you are running the latest development version, | ||
| + | please email a report to flashrom@flashrom.org if any of the above operations | ||
| + | work correctly for you with this flash chip. Please include the flashrom log | ||
| + | file for all operations you tested (see the man page for details), and mention | ||
| + | which mainboard or programmer you tested in the subject line. | ||
| + | Thanks for your help! | ||
| + | Reading old flash chip contents... done. | ||
| + | Erasing and writing flash chip... Erase/write done. | ||
| + | Verifying flash... VERIFIED. | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== Windows ==== | ||
| + | |||
| + | * Скачать и установить flashrom для windows https:// | ||
| + | * Через Zadig заменить драйвер ftdi на winusb. Подоходит вот эта инструкция: | ||
| + | * Открыть через командную строку flashrom.exe с правами администратора | ||
| + | |||
| + | Определение флешки программатором: | ||
| + | < | ||
| + | .\flashrom.exe -p ft2232_spi: | ||
| + | </ | ||
| + | |||
| + | Чтение файла из памяти: | ||
| + | < | ||
| + | .\flashrom.exe --progress -V -c " | ||
| + | </ | ||
| + | |||
| + | Запись файла в память: | ||
| + | < | ||
| + | .\flashrom.exe --progress -V -c " | ||
| + | </ | ||
| + | |||
| + | ===== Подготовка загрузочной флешки ===== | ||
| + | |||
| + | Скачать ресурсы: | ||
| + | |||
| + | Для первого запуска необходимо подготовить загрузочную флешку. Для прошивки флешки необходимо, | ||
| + | |||
| + | Прошивка USB-флешки/ | ||
| + | < | ||
| + | sudo chmod +x burn-boot-usb.sh | ||
| + | sudo ./ | ||
| + | </ | ||
| + | |||
| + | В конце ожидайте вывод: '' | ||
| + | |||
| + | ===== Первый запуск ===== | ||
| + | |||
| + | В Barebox установлен приоритет загрузки на USB или SD-карточку. Поэтому если вставлен внешний накопитель, | ||
| + | |||
| + | * Вставьте флешку в отладочную плату и подайте питание | ||
| + | * Дождитесь конца загрузки и зайдите под root/root | ||
| + | * Установите уникальные MAC-адреса, | ||
| + | < | ||
| + | ./ | ||
| + | |||
| + | echo 'n p 1 +1G n p 2 +1G n p 3 +1G w' | tr ' ' ' | ||
| + | |||
| + | mke2fs / | ||
| + | mke2fs / | ||
| + | mke2fs / | ||
| + | |||
| + | mount / | ||
| + | mount /dev/sdc1 /mnt | ||
| + | |||
| + | cp / | ||
| + | cp / | ||
| + | sync | ||
| + | </ | ||
| + | |||
| + | После того как команды были успешно выполнены, | ||