Перейти к основному содержимому

Выбор источников загрузки Linux

Данное руководство применимо к отладочным модулям Салют-ЭЛ24ОМ1 с установленным Салют-ЭЛ24ПМ2.

warning

Начиная с Buildroot 2025.06 необходимо использовать режим distro. Режим legacy - удален.

Подробнее – далее.

MCom-02 Buildroot 2025.06

Алгоритм загрузки:

  • U-Boot сканирует устройства, перечисленные в переменной окружения boot_targets.
  • U-Boot считывает конфигурационный файл /boot/extlinux/extlinux.conf на первом устройстве, где этот файл доступен.
  • U-Boot загружает ядро из того источника, который указан в конфигурации.

Для выбора источника загрузки нужно указать опцию root в файле /boot/extlinux/extlinux.conf. Утилита tar2dev умеет задавать эту опцию с помощью переменной ROOT при прошивке uSD карты .

Выбор источника с которого будет считываться файл extlinux.conf задается переменной boot_targets:

  • для загрузки с SD-карты установить boot_targets = mmc1;
  • для загрузки с eMMC установить boot_targets = mmc0;
  • для загрузки с USB установить boot_targets = usb;
  • для загрузки по Ethernet (TFTP+NFS) установить boot_targets = pxe.
примечание

Значение переменной boot_targets = mmc1 mmc0 usb pxe говорит о следующем:

Сначала U-Boot попытается найти и прочитать файл /boot/extlinux/extlinux.conf на uSD. Если uSD не установлена или не прошита U-Boot будет искать файл на eMMC, при неудаче будет опрошено USB-устройство, и затем, произойдет попытка загрузиться по TFTP.

Как настраивать boot_targets и переключатель SD/Wi-Fi на плате в зависимости от режима загрузки описано в документации:

Неподдерживаемые релизы

Для загрузки через порт SDMMC1 (то есть, с SD-карты), а также выбора другого дистрибутива необходимо выполнить следующие действия:

  1. Установить джампер XP4 в положение SD-card.
  2. Установить переключатели BOOT (SA1) в положение «011» (загрузка из SPI-флеш).
  3. Подключить разъем XS13 к ПЭВМ с помощью кабеля MiniUSB-USB.
  4. Запустить терминал COM-порта (например PuTTY, minicom).
  5. Подать питание на отладочный модуль.
  6. При появлении сообщения Hit any key to stop autoboot - остановить автозагрузку U-Boot отправкой любого символа в терминал COM-порта.
  7. Установить переменные окружения (командой setenv boot_targets legacy_mmc1, см. таблицу).
  8. Сохранить saveenv.
  9. Запустить загрузку boot.

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

ДистрибутивSDeMMC
buildroot 3.1.4boot_targets legacy_mmc1
bootpartnum 1
rootfstype ext4
rootpartnum 1
bootfile /boot/zImage
boot_targets legacy_mmc0
bootpartnum 1
rootfstype ext4
rootpartnum 1
bootfile /boot/zImage
buildroot 3.1.0boot_targets legacy_mmc1
bootpartnum 1
rootpartnum 2
bootfile zImage
boot_targets legacy_mmc0
bootpartnum 1
rootpartnum 2
bootfile zImage
buildroot 2.9mmcdev 1
bootpartnum 1
rootpartnum 2
bootfile zImage
mmcdev 0
bootpartnum 1
rootpartnum 2
bootfile zImage
AltLinux 2.9mmcdev 1
rootpartnum 1
bootfile /boot/vmlinuz-4.4.111.8-mcom02-alt1
cmdline video=HDMI-A-1:1920x1080
mmcdev 0
rootpartnum 1
bootfile /boot/vmlinuz-4.4.111.8-mcom02-alt1
cmdline video=HDMI-A-1:1920x1080