Содержание

Описание загрузчика NMS-SM-RK3588-U-Boot

Назначение

NMS-SM-RK3588-U-Boot — это программный компонент, предназначенный для подготовки аппаратной платформы и загрузки основной операционной системы.

Запускается после включения питания или сброса аппаратной платформ, в его задачи входят:

1. Инициализация аппаратуры

2. Загрузка операционной системы

3. Поддержка различных источников загрузки

4. Интерактивная оболочка (CLI)

5. Обновление и отладка

U-boot-2024

Прямая ссылка на Git с системой сборки: https://github.com/inmys/buildroot-external-inmys/tree/nms-sm-rk3588

U-boot для RK3588 можно собрать с помощью Buildroot по инструкции по сборке

U-boot может загружаться либо с SD, либо с eMMC. Приоритет bootrom на EMMC. Приоритет нашего u-boot на SD.

Релиз доступен по ссылке: https://disk.360.yandex.ru/d/WtPLuyHF6YF9fQ

Релиз собран с поддержкой:

Прошивать на SDcard или eMMC так:

dd if=u-boot-rockchip.bin of=/dev/XXX seek=64

U-boot переходит к загрузке ОС командой

bootflow scan

Команда ожидает extlinux.conf файл носителях, которые определены в переменной окружения:

boot_targets=mmc1 mmc0 nvme scsi usb pxe dhcp spi

Таким образом, если нужно переопределить порядок загрузки, небходимо изменить порядок носителей в переменной окружения boot_targets.

Например, чтобы загружать Linux с SATA:

setenv boot_targets "scsi mmc1 mmc0 nvme usb pxe dhcp spi"
saveenv

Файл extlinux.conf

Пример конфигурационного файла для загрузки Buildroot-сборки:

TIMEOUT 3
DEFAULT main
#MENU TITLE Boot menu

label main
        kernel /Image
        fdt /rk3588-inmys-smarc-evm.dtb
        initrd /rootfs.cpio.gz
	append earlycon=uart8250,mmio32,0xfeb50000 console=ttyS2,1500000 root=PARTUUID=31474154-01 rootwait