git clone https://github.com/u-boot/u-boot.git
cd u-boot
make rock5b-rk3588_defconfig
make # 出错后安装缺少的包
apt install swig
apt install python-is-python3 #依然出错
apt install python3-dev 不报错了
依然报错: binman: Filename 'rockchip-tpl' not found in input path
参考 https://u-boot.readthedocs.io/en/latest/board/rockchip/rockchip.html
git clone --depth 1 https://github.com/rockchip-linux/rkbin
cd u-boot
export BL31=../rkbin/bin/rk35/rk3588_bl31_v1.33.elf
export ROCKCHIP_TPL=../rkbin/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.09.bin
make CROSS_COMPILE=aarch64-linux-gnu-
这回报错:
binman: Filename '../rkbin/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.09.bin' not found in input path (.,.,./board/radxa/rock5b-rk3588,arch/arm/dts) (cwd='/root/download/u-boot')
make: *** [Makefile:1115: .binman_stamp] Error 1
去找文件发现:
改为: export ROCKCHIP_TPL=../rkbin/bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.12.bin
重新 make CROSS_COMPILE=aarch64-linux-gnu- -j8
出错:
binman: Filename '../rkbin/bin/rk35/rk3588_bl31_v1.33.elf' not found in input path (.,.,./board/radxa/rock5b-rk3588,arch/arm/dts) (cwd='/root/download/u-boot')
make: *** [Makefile:1115: .binman_stamp] Error 1
改为: export BL31=../rkbin/bin/rk35/rk3588_bl31_v1.40.elf
make依然出错:
Wrote map file './simple-bin.map' to show errors
binman: Node '/binman/simple-bin/fit': subnode 'images/@atf-SEQ': Failed to read ELF file: Python: No module named 'elftools'
make: *** [Makefile:1115: .binman_stamp] Error 1
尝试 apt install python3-pyelftools 成功!
重新 make clean && make CROSS_COMPILE=aarch64-linux-gnu- -j8 无错误,成功
插入我的8gSD卡读卡器到开发板然后 fdisk -l
销毁磁盘数据 dd if=/dev/urandom of=/dev/sda 非常耗时间,谨慎
dd if=u-boot-rockchip.bin of=/dev/sda seek=64
sync
取下原SD卡,拔下读卡器中sd卡插入rock5b开发板SD卡卡槽,开机,串口终端1500000波特率,打印出信息