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

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


boards:nms-uq7-komdiv-mk:user-guide

Различия

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

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

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
boards:nms-uq7-komdiv-mk:user-guide [2026/08/03 09:15] Артем Слеповboards:nms-uq7-komdiv-mk:user-guide [2026/08/06 12:50] (текущий) – [Первый запуск] Илья Ковальчук
Строка 1: Строка 1:
-====== Руководство пользователя ======+Руководство пользователя
  
 Страница содержит руководство по подготовке программной части, сборке rootfs и ядра Linux для модуля **Q7_KOMDIV_MK**. Страница содержит руководство по подготовке программной части, сборке rootfs и ядра Linux для модуля **Q7_KOMDIV_MK**.
Строка 6: Строка 6:
 Скачать примеры бинарников для запуска Linux:  https://disk.360.yandex.ru/d/11mHF4DiqqxNxQ Скачать примеры бинарников для запуска Linux:  https://disk.360.yandex.ru/d/11mHF4DiqqxNxQ
 </note> </note>
-===== Общая информация =====+ 
 + 
 +## Общая информация
  
 **Q7_KOMDIV_MK** используется как вычислительный модуль в составе встраиваемых и серверных систем. Для работы модуля требуется подготовить загрузчик, ядро Linux и корневую файловую систему. **Q7_KOMDIV_MK** используется как вычислительный модуль в составе встраиваемых и серверных систем. Для работы модуля требуется подготовить загрузчик, ядро Linux и корневую файловую систему.
Строка 19: Строка 21:
 | Сборка rootfs  | через Docker-контейнер komdiv-sdk               | | Сборка rootfs  | через Docker-контейнер komdiv-sdk               |
  
-===== Состав программной части Q7_KOMDIV_MK =====+ 
 +## Комплектация отладочного комплекта 
 + 
 +В комплекте с модулем ''Q7_KOMDIV_MK'' предоставляются: 
 + 
 +{{ komdiv-evm-pack.jpg?480 }} 
 +  * кабель USB Type-C для подключения отладочной консоли; 
 +  * прищепка DIP8-SOIC8 для прошивки загрузчика Barebox в модуль; 
 +  * переходник для подключения прищепки к [FT2232H-56Q Mini Module](https://www.chipdip.ru/product/ft4232h-56q-mini-mdl-ftdi-8052788321); 
 +  * радиатор охлаждения** ; 
 +  * блок питания 12V. 
 + 
 +<note>**SoC выполнен по технологии 65 нм. Температура 65C под нагрузкой при комнатной температуре 25C без радиатора считается штатной.  
 +Необходимо учитывать в конечном изделии тепловыделение модуля 4 Вт. 
 +Для отладки предложен алюминевый радиатор 28x28x11 mm с теплопроводящим клеем.</note> 
 + 
 + 
 +## Состав программной части Q7_KOMDIV_MK
  
 Для работы модуля требуется три основных компонента: Для работы модуля требуется три основных компонента:
Строка 30: Строка 49:
 <note important>На данный момент исходный код распространяется через репозитории с приватным доступом.  <note important>На данный момент исходный код распространяется через репозитории с приватным доступом. 
  
-Для получения токена обратитесь на почту info@inmys.ru</note> +Для получения токена обратитесь на почту **info@inmys.ru**</note> 
-===== Подготовка окружения =====+ 
 + 
 +## Подготовка окружения
  
 Сборка выполняется на **Ubuntu 24.04**. Сборка выполняется на **Ubuntu 24.04**.
Строка 37: Строка 58:
 Перед началом работы необходимо обновить список пакетов и установить кросс-компилятор для MIPS (требуется для сборки barebox): Перед началом работы необходимо обновить список пакетов и установить кросс-компилятор для MIPS (требуется для сборки barebox):
  
-<code>+``` bash
 sudo apt update sudo apt update
 sudo apt install -y cpp-mips64el-linux-gnuabi64 sudo apt install -y cpp-mips64el-linux-gnuabi64
-</code>+```
  
 Также предполагается, что на хостовой машине установлен Docker. Также предполагается, что на хостовой машине установлен Docker.
  
-===== Сборка BareBox =====+ 
 +## Сборка BareBox 
 Введите высланные логин и токен с info@inmys.ru вместо ''XXXXX'' и ''YYYYY'' и выполните команды: Введите высланные логин и токен с info@inmys.ru вместо ''XXXXX'' и ''YYYYY'' и выполните команды:
-<code>+``` bash
 git clone https://XXXXX:YYYYY@gitlab.inmys.online/srisa/k5500vk018-barebox.git git clone https://XXXXX:YYYYY@gitlab.inmys.online/srisa/k5500vk018-barebox.git
 +
 +cd k5500vk018-barebox
  
 make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- srisa_k64s_defconfig make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- srisa_k64s_defconfig
  
 make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- -j24 make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- -j24
-</code>+```
  
 Результат сборки находится по пути ''images/barebox-rbm_c1k5500vk018-el.img'' Результат сборки находится по пути ''images/barebox-rbm_c1k5500vk018-el.img''
-===== Сборка образа системы =====+ 
 + 
 +## Сборка образа системы
  
 Введите высланные логин и токен с info@inmys.ru вместо ''XXXXX'' и ''YYYYY'' и выполните команду: Введите высланные логин и токен с info@inmys.ru вместо ''XXXXX'' и ''YYYYY'' и выполните команду:
  
-<code>+``` bash
 LOGIN="XXXXX"; TOKEN="YYYYY"; printf "machine gitlab.inmys.online\nlogin %s\npassword %s\n" "$LOGIN" "$TOKEN" > .gitlab.netrc LOGIN="XXXXX"; TOKEN="YYYYY"; printf "machine gitlab.inmys.online\nlogin %s\npassword %s\n" "$LOGIN" "$TOKEN" > .gitlab.netrc
-</code>+```
  
 Выполните следующие команды: Выполните следующие команды:
-<code>+``` bash
 mkdir -p container mkdir -p container
 cd container  cd container 
Строка 74: Строка 101:
 git clone https://github.com/inmys/buildroot-external-inmys.git  -b nms-q7-k5500vk018 git clone https://github.com/inmys/buildroot-external-inmys.git  -b nms-q7-k5500vk018
 sudo docker run -it -e USER=$USER -e USERID=$UID -v $(pwd):/BR -v "$(pwd)/.gitlab.netrc:/root/.netrc:ro" --cpus=12 -t komdiv-sdk bash  sudo docker run -it -e USER=$USER -e USERID=$UID -v $(pwd):/BR -v "$(pwd)/.gitlab.netrc:/root/.netrc:ro" --cpus=12 -t komdiv-sdk bash 
-</code>+```
  
 В Docker-контейнере выполнить: В Docker-контейнере выполнить:
-<code>+``` bash
 make BR2_EXTERNAL=$PWD/buildroot-external-inmys -C buildroot-2025.02.7 O=$PWD/output br_defconfig make BR2_EXTERNAL=$PWD/buildroot-external-inmys -C buildroot-2025.02.7 O=$PWD/output br_defconfig
 cd output cd output
 export FORCE_UNSAFE_CONFIGURE=1  export FORCE_UNSAFE_CONFIGURE=1 
 make -j12 make -j12
-</code>+```
  
 После завершения сборки необходимо выйти из контейнера сочетанием клавиш ''Ctrl + D'' После завершения сборки необходимо выйти из контейнера сочетанием клавиш ''Ctrl + D''
Строка 88: Строка 115:
 Результаты сборки находятся в директории ''output/images/'' Результаты сборки находятся в директории ''output/images/''
  
-===== Прошивка загрузчика в SPI-флешку =====+ 
 +## Прошивка загрузчика в SPI-флешку
  
 Осуществляется программатором FT2232H-56Q Mini Module с установленным переходником FT2232H-56Q Mini Module_Adapter Осуществляется программатором FT2232H-56Q Mini Module с установленным переходником FT2232H-56Q Mini Module_Adapter
Строка 97: Строка 125:
 | {{ burn-barebox-1.jpg?480 }} |  {{ burn-barebox-2.jpg?480 }}   | | {{ burn-barebox-1.jpg?480 }} |  {{ burn-barebox-2.jpg?480 }}   |
  
-==== Linux (Пример для Ubuntu 24.04) ====+ 
 +### Linux (Пример для Ubuntu 24.04)
  
 Установка зависимостей: Установка зависимостей:
-<code>+``` bash
 sudo apt update && sudo apt install flashrom -y  sudo apt update && sudo apt install flashrom -y 
-</code>+```
  
-Прошивка производится с помощью скрипта [[https://disk.360.yandex.ru/d/YOFf-XhxbfylWQ|burn-barebox.sh]](скрипт также присутствует в репозитории barebox, в директории images)+Прошивка производится с помощью скрипта [burn-barebox.sh](https://disk.360.yandex.ru/d/YOFf-XhxbfylWQ(скрипт также присутствует в репозитории barebox): 
-<code>+``` bash 
 +# Скачивание 
 +wget https://nextcloud.inmys.online/nextcloud/index.php/s/4Cyp3YZ4w82oTxt/download -O burn-barebox.sh 
 +# Установка
 chmod +x burn-barebox.sh chmod +x burn-barebox.sh
 sudo ./burn-barebox.sh barebox-rbm_c1k5500vk018-el.img  sudo ./burn-barebox.sh barebox-rbm_c1k5500vk018-el.img
-</code> +``` 
-[[https://disk.360.yandex.ru/d/11mHF4DiqqxNxQ|Пример barebox-rbm_c1k5500vk018-el.img.]]+ 
 +[Пример barebox-rbm_c1k5500vk018-el.img.](https://disk.360.yandex.ru/d/11mHF4DiqqxNxQ)
  
 <hidden Пример успешного вывода> <hidden Пример успешного вывода>
-<code>+``` bash
 4+0 records in 4+0 records in
 8192+0 records out 8192+0 records out
Строка 136: Строка 169:
 Erasing and writing flash chip... Erase/write done. Erasing and writing flash chip... Erase/write done.
 Verifying flash... VERIFIED. Verifying flash... VERIFIED.
-</code>+```
 </hidden> </hidden>
  
-==== Windows ====+ 
 +### Windows
  
   * Скачать и установить flashrom для windows https://github.com/therealdreg/flashrom_build_windows_x64   * Скачать и установить flashrom для windows https://github.com/therealdreg/flashrom_build_windows_x64
Строка 146: Строка 180:
  
 Определение флешки программатором:  Определение флешки программатором: 
-<code>+``` bash
 .\flashrom.exe -p ft2232_spi:type=2232H,port=A,divisor=4  .\flashrom.exe -p ft2232_spi:type=2232H,port=A,divisor=4 
-</code>+```
  
 Чтение файла из памяти:  Чтение файла из памяти: 
-<code>+``` bash
 .\flashrom.exe --progress -V -c "W25Q32JV" -p ft2232_spi:type=2232H,port=A,divisor=4 -r filename.bin .\flashrom.exe --progress -V -c "W25Q32JV" -p ft2232_spi:type=2232H,port=A,divisor=4 -r filename.bin
-</code>+```
  
 Запись файла в память:  Запись файла в память: 
-<code>+``` bash
 .\flashrom.exe --progress -V -c "W25Q32JV" -p ft2232_spi:type=2232H,port=A,divisor=4 -w filename.bin .\flashrom.exe --progress -V -c "W25Q32JV" -p ft2232_spi:type=2232H,port=A,divisor=4 -w filename.bin
-</code>+```
  
-===== Подготовка загрузочной флешки ===== 
  
 +## Подготовка загрузочной флешки
 Скачать ресурсы: https://disk.360.yandex.ru/d/11mHF4DiqqxNxQ Скачать ресурсы: https://disk.360.yandex.ru/d/11mHF4DiqqxNxQ
  
Строка 167: Строка 201:
  
 Прошивка USB-флешки/SD-карты Прошивка USB-флешки/SD-карты
-<code>+``` bash
 sudo chmod +x burn-boot-usb.sh sudo chmod +x burn-boot-usb.sh
 sudo ./burn-boot-usb.sh /dev/sdX #где X - буква прошиваемой флешки sudo ./burn-boot-usb.sh /dev/sdX #где X - буква прошиваемой флешки
-</code>+```
  
 В конце ожидайте вывод: ''Флешка подготовлена'' В конце ожидайте вывод: ''Флешка подготовлена''
  
-===== Первый запуск ===== 
  
-<note important>Для работы девайса программатор необхоимо отключить</note>+## Первый запуск 
 +<note important>  
 +1. Для работы девайса программатор необходимо отключить 
 +2. На SD-карте не отрабатывает CD#. SD-карта работает если была вставлена до подачи питания. 
 +</note>
  
 В Barebox установлен приоритет загрузки на USB или SD-карту. Поэтому если вставлен внешний накопитель, то загрузка будет происходить с него. В Barebox установлен приоритет загрузки на USB или SD-карту. Поэтому если вставлен внешний накопитель, то загрузка будет происходить с него.
Строка 183: Строка 220:
   * Дождитесь конца загрузки и зайдите под root/root   * Дождитесь конца загрузки и зайдите под root/root
   * Установите уникальные MAC-адреса, разметьте EMMC и перенесите образ на EMMC следующими командами   * Установите уникальные MAC-адреса, разметьте EMMC и перенесите образ на EMMC следующими командами
 +
 <note>Мак-адреса задаются через переменные окружения barebox (хранятся в SPI-флешке).  <note>Мак-адреса задаются через переменные окружения barebox (хранятся в SPI-флешке). 
 Модули оснащены i2c eeprom с EUI-48. Можно использовать их в качестве уникальных адресов (auto-burn-macs.sh).   Модули оснащены i2c eeprom с EUI-48. Можно использовать их в качестве уникальных адресов (auto-burn-macs.sh).  
 При наличии у заказчика собственных уникальных мак-адресов можно использовать manual-burn-mac.sh</note> При наличии у заказчика собственных уникальных мак-адресов можно использовать manual-burn-mac.sh</note>
-<code> 
-./auto-burn-macs.sh 
  
 +Логин/пароль: root/root
 +
 +``` bash
 +/root/auto-burn-macs.sh
 +
 +umount /dev/mmcblk0* > /dev/null 2>&1
 echo 'n p 1  +1G n p 2  +1G n p 3  +1G w' | tr ' ' '\n' | fdisk -u /dev/mmcblk0 echo 'n p 1  +1G n p 2  +1G n p 3  +1G w' | tr ' ' '\n' | fdisk -u /dev/mmcblk0
  
-mke2fs /dev/mmcblk0p1 +mke2fs -F /dev/mmcblk0p1 
-mke2fs /dev/mmcblk0p2 +mke2fs -F /dev/mmcblk0p2 
-mke2fs /dev/mmcblk0p3+mke2fs -F /dev/mmcblk0p3
  
 mount /dev/mmcblk0p1 /boot mount /dev/mmcblk0p1 /boot
  
-#Уточните в /proc/partions, имя устройства, с которого загрузились и примонтируйте первый раздел+mount "$(blkid /dev/sd* | grep 'LABEL="Q7_BOOT"' | cut -d: -f1)" /mnt one-liner для монтирования boot раздела флешки  
-# SD-карта или USB-флешка будет /dev/sdd или /dev/sdc +
- +
-mount /dev/sdc1 /mnt +
-#или +
-mount /dev/sdd1 /mnt +
- +
  
 cp /mnt/k5500vk018-inmys-q7.dtb /boot cp /mnt/k5500vk018-inmys-q7.dtb /boot
Строка 211: Строка 246:
  
 umount /dev/mmcblk0p1 umount /dev/mmcblk0p1
-umount /dev/sdc1 #/dev/sdd1 +umount "$(blkid /dev/sd* | grep 'LABEL="Q7_BOOT"' | cut -d: -f1)" 
-</code>+```
  
 После того как команды были успешно выполнены, можно выключать питание и работать без флешки. Платформа готова к работе. После того как команды были успешно выполнены, можно выключать питание и работать без флешки. Платформа готова к работе.
 +
 +[Примеры работы с периферией](https://wiki.inmys.ru/boards:nms-uq7-komdiv-mk:peripherial:start)
  
boards/nms-uq7-komdiv-mk/user-guide.1785748517.txt.gz · Последнее изменение: Артем Слепов