Сборка образа для Broadcom
Данный раздел содержит инструкции по использованию U-Boot в SoC Broadcom 7445 и 7260 в качестве загрузчика третьего порядка, запускаемого загрузчиком BOLT компании Broadcom. BOLT загружает U-Boot как двоичный ELF-файл.
Запуск
Чтобы указать U-Boot, какой последовательный порт использовать для консоли, установите параметр stdout-path
в узле /chosen
дерева устройств, сгенерированного BOLT. Например:
BOLT> dt add prop chosen stdout-path s serial0:115200n8
Запишите двоичный файл $LFA/bootloader.bin
в память платы, затем вызовите его из BOLT. Например:
BOLT> boot -bsu -elf flash0.u-boot1
Предполагается, что I-кеш и D-кеш уже включены при входе в U-Boot.
Запись образа системы
Создание образа с базовой ОС
С помощью dd
создайте образ нужного вам размера (не меньше объёма, занимаемого собранной системой LFA, расположенной в $LFA_SYS
).
dd if=/dev/zero bs=1M count=512 of=rootfs.img
Здесь размер образа составляет 512 МБ. В зависимости от требований и объёма собранной системы установите вместо 512 своё значение.
Создайте файловую систему внутри образа:
mkfs.ext4 -L BOOT \
-O ^metadata_csum -F \
-b 4096 \
-E stride=2,stripe-width=1024 \
-L rootfs rootfs.img
Копирование файлов
Смонтируйте полученный образ и скопируйте в неё файлы нашей системы (саму систему, ядро, Devicetree и сценарий загрузки):
mkdir -pv /tmp/lfa_rootfs
sudo mount -v rootfs.img /tmp/lfa_rootfs
sudo cp -rfv $LFA_SYS/* /tmp/lfa_rootfs
sync
Все действия здесь выполняются от имени пользователя
lfa
. Поскольку здесь используется программаsudo
, вам нужно добавить пользователяlfa
в группуwheel
илиsudo
.
После копирования файлов размонтируйте образ:
sudo umount /tmp/lfa_rootfs
Теперь вам остаётся записать образ на SD- или иной носитель, с которого может загружаться компьютер.
Смотрите также: