参考博客
PC 环境: ubuntu 18.04 虚拟机
1. 下载最新u-boot 源码
cd /tmp/
wget http://ftp.denx.de/pub/u-boot/u-boot-2019.07-rc4.tar.bz2
tar -xjvf u-boot-2019.07-rc4.tar.bz2
2. 安装交叉编译工具链
# ubuntu 18.04下的安装
sudo apt-get install gcc-aarch64-linux-gnu
#查看版本
aarch64-linux-gnu-gcc --version
3. 运行raspberry的编译配置
#导出环境变量
export ARCH=arm
export CROSS_COMPILE=aarch64-linux-gnu-
4. 编译
#安装解析配置文件需要的工具
sudo apt-get install bison
sudo apt-get install flex
# 生成.config文件
cd u-boot-2019.07-rc4
make rpi_3_defconfig V=1
# 安装 menuconfig 需要用到的工具
sudo apt-get install libncurses5-dev
make menuconfig
make -j4
5. 配置sd卡
将编译生成的 u-boot.bin 拷贝至SD卡/boot下,并重命名为kernel8.img
6. 配置串口
在SD卡中的/boot/config.txt中增加一行enable_uart=1使能串口
7. 烧录验证
插入SD卡,连接串口,波特率默认为115200。上电后看到uboot的输出便移植成功了。