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

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


rk3568:uboot

Ванильный U-Boot для плат на базе RK3568

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

export BL31=../rkbin/bin/rk35/rk3568_bl31_v1.44.elf
export TEE=../rkbin/tee.elf
export ROCKCHIP_TPL=../rkbin/bin/rk35/rk3568_ddr_1560MHz_v1.21.bin
export CROSS_COMPILE=aarch64-linux-gnu-

Назначение переменных следующее:

  • BL31 - двоичный загрузчик от RockChip'а, который будет загружать U-Boot с рабочего накопителя
  • TEE - не обязательная перемененная, указывающая на ELF файл с OP-TEE см rkbin чтобы узнать как сделать ELF из поставляемого RockChip'ом BINа
  • ROCKCHIP_TPL - базовый двоичный загрузчик от RockChip'а, инициализирующий DDR память (ну еще консоль) см rkbin
  • CROSS_COMPILE - используемый для сборки кросс-компилятор

На выходе получаем u-boot-rockchip.bin, который необходимо записать на SD-карту или eMMC со смещением в 64 сектора, например с использованием rkdevelop. Например, с помощью такого скрипта

#!/bin/bash

echo Bootloader
./../rkbin/tools/rkdeveloptool db ./../rkbin/rk356x_spl_loader_v1.21.113.bin
echo U-Boot image
sleep 1
./../rkbin/tools/rkdeveloptool wl 64 u-boot-rockchip.bin
echo Reset board
sleep 1
./../rkbin/tools/rkdeveloptool rd

Обратите внимание, чип должен быть переведен в MaskRom режим (см bootmode), и в этом режиме используется предварительно созданный SPL загрузчик (см rkbin]).

rk3568/uboot.txt · Последнее изменение: 2024/05/02 07:46 — Alex A. Mihaylov