Baikal-M: различия между версиями

Материал из ALT Linux Wiki
(UART 1.8 Вольт!)
(Плата TF307, Simply Linux 9.1 (потому что работает из коробки))
Строка 1: Строка 1:
{{Stub}}
{{Stub}}
На данный момент страничка описывает выпуск [[Альт Рабочая станция 9|ALT Workstation 9.1]] для системной платы MBM1.0(mITX) на основе процессора "Байкал-М" (модель ВЕ-М1000) производства "Байкал Электроникс".
На данный момент страничка описывает выпуск [[Simply_Linux_9#9.1|Simply Linux 9.1]] для системной платы [https://edelweiss-tech.ru/product/komplektuyushchie-edelveys/platy-edelveys/plata-na-baykal-m/ TF-307] на основе процессора [https://www.baikalelectronics.ru/products/238/ BE-M1000] производства [https://www.baikalelectronics.ru/ "Байкал Электроникс"].
 
== Поддерживаемые устройства ==
 
* Системная плата [https://edelweiss-tech.ru/product/komplektuyushchie-edelveys/platy-edelveys/plata-na-baykal-m/ TF307-MB-S-D] и устройства на ее основе


== Перед началом установки ==
== Перед началом установки ==


''' На плате должен быть прошит firmware из SDK-M версий 4.4, 4.3, или 4.2. С более старыми версиями прошивки эту инструкцию использовать не следует.'''
''' На плате должен быть прошит firmware из SDK-M версий 4.4. или 5.1. С более старыми версиями прошивки эту инструкцию использовать не следует.'''
Окирпичить плату вряд ли выйдет, но времени и нервов потратите много.
Окирпичить плату вряд ли выйдет, но времени и нервов потратите много.


На глазок версию прошивки можно определить так:
=== Определение версии прошивки ===
* Если секунд через 20 после включения отображается большой (во весь экран) логотип Байкал Электроникс, значит, это прошивка из SDK-M-4.2 или новее
 
* Если почти сразу после включения отображается сначала маленький, а потом большой логотип Байкал Электроникс -- это SDK-M-4.3
На глазок версию прошивки можно определить так.
* Если под логотипом отображается версия, то это она и есть
Почти сразу после включения отображается маленький логотип Байкал Электроникс.
Затем секунд через 20 отображается большой (во весь экран) логотип Байкал Электроникс, а под ним -- номер версии прошивки.
 
* Если номер версии не отображается, то прошивка старая (SDK-M 4.3 или старее)
* Если маленький логотип не отображается, то прошивка старая (SDK-M 4.2 или старее)
* Если во время загрузки на экране ничего нет, это слишком старая прошивка
* Если во время загрузки на экране ничего нет, это слишком старая прошивка


Точно определить версию прошивки, к сожалению, можно только с помощью UART консоли.


== Установка ==
== Установка ==


Установочный ISO доступен здесь: https://mirror.yandex.ru/altlinux/p9/images/simply/aarch64/slinux-9.1-aarch64.iso


Установочный ISO доступен здесь: https://mirror.yandex.ru/altlinux/p9/images/workstation/aarch64/alt-workstation-baikalm-9.1-aarch64.iso
Его нужно записать на внешний USB накопитель, sd карту, либо жесткий диск.
Его нужно записать на внешний USB накопитель, sd карту, либо жесткий диск.


Строка 24: Строка 31:
* '''ВНИМАНИЕ! РИСК СТЕРЕТЬ НЕ ТЕ ДАННЫЕ! ТРИЖДЫ ПРОВЕРЬТЕ, ЧТО ПИШЕТЕ НА НУЖНЫЙ НОСИТЕЛЬ!'''
* '''ВНИМАНИЕ! РИСК СТЕРЕТЬ НЕ ТЕ ДАННЫЕ! ТРИЖДЫ ПРОВЕРЬТЕ, ЧТО ПИШЕТЕ НА НУЖНЫЙ НОСИТЕЛЬ!'''


<code>dd if=alt-workstation-baikalm-9.1-aarch64.iso of=/dev/disk/by-id/XYZ bs=1M conv=fsync</code>
<code>dd if=slinux-9.1-aarch64.iso of=/dev/disk/by-id/XYZ bs=1M conv=fsync</code>


Затем нужно подключить носитель к плате и загрузиться с него. Если на Байкал-М еще не установлена ОС,
Затем нужно подключить носитель к плате и загрузиться с него. Если на Байкал-М еще не установлена ОС,
Строка 30: Строка 37:
нужно нажать Escape во время инициализации UEFI (когда вверху появится надпись "Press ESC for boot options"),
нужно нажать Escape во время инициализации UEFI (когда вверху появится надпись "Press ESC for boot options"),
и выбрать загрузку с нужного устройства вручную.
и выбрать загрузку с нужного устройства вручную.
=== Загрузка на платах с прошивкой из SDK-M 4.4 ===
Если система не грузится (kernel panic) или установка не стартует,
или зависает во время установки, передайте ядру параметры<br><code>modprobe.blacklist=pcie_baikal,panfrost,cpufreq_dt</code>


=== EFI system partition ===
=== EFI system partition ===
Строка 43: Строка 45:
== Известные проблемы ==
== Известные проблемы ==


* При установке на платы с прошивкой из SDK-M 4.4 может возникнуть kernel panic при инициализации драйвера PCIe. Для обхода проблемы достаточно передать ядру параметр <br><code>modprobe.blacklist=pcie_baikal</code>
* Частотные искажения при воспроизведении звука на встроенный аналоговый выход. На HDMI звук воспроизводится нормально.
* При установке на платы с прошивкой из SDK-M 4.4 не стартует Xorg. Чтобы запустился, достаточно в добавить в blacklist модуль panfrost.
* PS/2 клавиатуры и мыши не поддерживаются.
* Аппаратное ускорение 3d рендеринга (с помощью GPU Mali T628) недоступно. Бинарные драйверы от Байкал Электроникс не поддерживают X11. Предоставляемое API недостаточно даже для запуска простейших wayland composer (например, weston версии 5.0), не говоря уже о полноценных окружениях (GNOME 3, KDE 5).
* Аппаратное декодирование видео недоступно. Бинарные драйверы от Байкал Электроникс намертво привязаны к определенным версиям системных библиотек (glib2, pcre, libxml, и проч), так что невозможно обеспечить их функционирование в каком-либо дистрибутиве, кроме Debian 10
* Аппаратное декодирование видео недоступно. Бинарные драйверы от Байкал Электроникс намертво привязаны к определенным версиям системных библиотек (glib2, pcre, libxml, и проч), так что невозможно обеспечить их функционирование в каком-либо дистрибутиве, кроме Debian 10
* Время и дата не сохраняются на плате DBM. После перезагрузки/включения -- всегда 26 марта 2020 года 16:20. Наличие или отсутствие батарейки не влияет. На плате MBM1.0 зависит от версии firmware.


== Подключение UART консоли к mITX плате ==
== Подключение UART консоли к плате TF307 ==


Иногда бывает, что при загрузке система виснет, и на экране ничего не отображается.
Иногда бывает, что при загрузке система виснет, и на экране ничего не отображается.

Версия от 12:42, 10 мая 2021

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

На данный момент страничка описывает выпуск Simply Linux 9.1 для системной платы TF-307 на основе процессора BE-M1000 производства "Байкал Электроникс".

Поддерживаемые устройства

  • Системная плата TF307-MB-S-D и устройства на ее основе

Перед началом установки

На плате должен быть прошит firmware из SDK-M версий 4.4. или 5.1. С более старыми версиями прошивки эту инструкцию использовать не следует. Окирпичить плату вряд ли выйдет, но времени и нервов потратите много.

Определение версии прошивки

На глазок версию прошивки можно определить так. Почти сразу после включения отображается маленький логотип Байкал Электроникс. Затем секунд через 20 отображается большой (во весь экран) логотип Байкал Электроникс, а под ним -- номер версии прошивки.

  • Если номер версии не отображается, то прошивка старая (SDK-M 4.3 или старее)
  • Если маленький логотип не отображается, то прошивка старая (SDK-M 4.2 или старее)
  • Если во время загрузки на экране ничего нет, это слишком старая прошивка


Установка

Установочный ISO доступен здесь: https://mirror.yandex.ru/altlinux/p9/images/simply/aarch64/slinux-9.1-aarch64.iso

Его нужно записать на внешний USB накопитель, sd карту, либо жесткий диск.

  • ВНИМАНИЕ! ВСЕ ДАННЫЕ, КОТОРЫЕ НАХОДЯТСЯ НА НОСИТЕЛЕ, БУДУТ БЕЗВОЗВРАТНО СТЕРТЫ!
  • ВНИМАНИЕ! РИСК СТЕРЕТЬ НЕ ТЕ ДАННЫЕ! ТРИЖДЫ ПРОВЕРЬТЕ, ЧТО ПИШЕТЕ НА НУЖНЫЙ НОСИТЕЛЬ!

dd if=slinux-9.1-aarch64.iso of=/dev/disk/by-id/XYZ bs=1M conv=fsync

Затем нужно подключить носитель к плате и загрузиться с него. Если на Байкал-М еще не установлена ОС, то загрузка со съемного носителя происходит по умолчанию. Если по какой-то причине загрузка не началась, нужно нажать Escape во время инициализации UEFI (когда вверху появится надпись "Press ESC for boot options"), и выбрать загрузку с нужного устройства вручную.

EFI system partition

При разбиении диска вручную не забудьте создать EFI system partition, отформатировать его в файловую систему fat, и назначить точку монтирования /boot/efi

Известные проблемы

  • Частотные искажения при воспроизведении звука на встроенный аналоговый выход. На HDMI звук воспроизводится нормально.
  • PS/2 клавиатуры и мыши не поддерживаются.
  • Аппаратное декодирование видео недоступно. Бинарные драйверы от Байкал Электроникс намертво привязаны к определенным версиям системных библиотек (glib2, pcre, libxml, и проч), так что невозможно обеспечить их функционирование в каком-либо дистрибутиве, кроме Debian 10

Подключение UART консоли к плате TF307

Иногда бывает, что при загрузке система виснет, и на экране ничего не отображается. Вот в этих случаях и поможет UART консоль.

Требуется

  • Утилита picocom
  • UART -> USB адаптер, рассчитаный на уровень сигналов 1.8 Вольт.
    ВНИМАНИЕ! Использование адаптеров на 3.3 Вольт ПРИВОДИТ К ПОЛОМКЕ ПЛАТЫ!

Автор успешно использовал адаптеры, которые определяются как

  ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]
  ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC

Подключение UART->USB адаптера к плате

  • Разъём обозначен XP8
  • PIN 1 обозначен точкой
  • PIN 13 UART_TX (TX on BM)
  • PIN 14 GND
  • PIN 15 UART_RX (RX on BM)

Pаспиновка относительно ключа - разрыва пластиковой рамки разъёма:

------------ ключ------------
19 17 15 13 11 09 07 05 03 01
20 18 16 14 12 10 08 06 04 02
-----------------------------

Использование UART консоли

После подключения адаптера к плате следует подать питание на плату, но не включать ее. Далее нужно

  1. Подключить USB разъем адаптера к компьютеру. При успешном подключении в системе появится устройство /dev/ttyUSB0 (если не подключены другие USB serial устройства)
  2. Подключиться к устройству /dev/ttyUSB0 с помощью программы picocom:
    picocom -b115200 /dev/ttyUSB0
  3. Включить плату, дождаться меню загрузчика grub
  4. Прервать автоматическую загрузку и войти в режим редактирования. Для этого достаточно нажать кнопку c.
  5. В конце строки linux /boot/vmlinuz-XYZ ... дописать
    console=ttyS0,115200n8 earlycon=uart8250,mmio32,0x20230000 ignore_loglevel
  6. Продолжить загрузку -- нажать кнопку F10.

После этого в picocom появятся подробные сообщения ядра.

Обновление прошивки на DBM плате

Требуются

  • Утилита dfu-util версии 0.9 или новее
  • микро-USB шнур

Порядок действий

  1. Подключить плату к сети питания. Не включать. Подается дежурное напряжение.
  2. Подключить плату к хост компьютеру (микро-USB разъем XS2, ближайший к Ethernet разъемам)
  3. Прошить файл dbm.scp.flash.bin:
    sudo dfu-util -D ./baikal/prebuilts/dbm.scp.flash.bin -a 0 -s 0x08000000
  4. Прошить файл dbm.flash.img:
    sudo dfu-util -D ./baikal/prebuilts/dbm.flash.img -a 1 -s 0x0A000000
  5. Физически отключить питание платы (отсоединить шнур) на 30 -- 60 секунд.

После прошивки

В процессе прошивки настройки UEFI обнуляются. В связи с этим плата будет загружаться в EFI shell. Для запуска GRUB нужно дать команду
fs0:\EFI\altlinux\grubaa64.efi
Для того, чтобы GRUB запускался автоматически, после загрузки ОС следует выполнить команду
sudo efibootmgr -c --label altlinux --loader \\EFI\\altlinux\\grubaa64.efi