请勿将编译完的刷在幽兰上,目前会刷失败。
准备环境
在幽兰上运行:
sudo apt install device-tree-compiler build-essential gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu make python3 python3-dev libssl-dev python3-pyelftools python3-setuptools swig git libgnutls28-dev
获取代码仓库
使用 git 将主线 U-Boot 代码库克隆到目录 u-boot 中:
git clone https://source.denx.de/u-boot/u-boot.git
下载rkbin代码
然后,继续使用 git 将 rockchip 固件二进制文件仓库克隆到目录 rkbin 中,前面下载的u-boot代码目录和这个rkbin是同级目录:
git clone https://github.com/rockchip-linux/rkbin.git
设置环境变量
接下来,我们需要设置两个环境变量: ROCKCHIP_TPL 用于指定 DRAM 初始化二进制文件, BL31 用于指定 ARM 可信固件二进制文件。
export ROCKCHIP_TPL="$(ls ../rkbin/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v*.bin | sort | tail -n1)"
export BL31="$(ls ../rkbin/bin/rk35/rk3588_bl31_v*.elf | sort | tail -n1)"
编译
在设置了环境变量的 u-boot 目录中,运行以下命令:
make CROSS_COMPILE=aarch64-linux-gnu- rk3588-rk3588_defconfig
make CROSS_COMPILE=aarch64-linux-gnu- -j$(nproc)
如果出现:
Define FASTBOOT buffer address (FASTBOOT_BUF_ADDR) [] (NEW)
就输入0x800800
这将生成 u-boot-rockchip.bin
文件,该文件是您刚刚编译好的 SPL+U-Boot 组合镜像
作者:zuoyingying 创建时间:2025-01-10 18:00
最后编辑:zuoyingying 更新时间:2025-01-20 10:44
最后编辑:zuoyingying 更新时间:2025-01-20 10:44