uboot 开发-Uboot 源码是 v2017.09 版本。目前在该平台上已经支持 RK 所有主流在售芯片。支持
的功能主要有:
支持 RK Android 固件启动;
支持 Android AOSP 固件启动;
支持 Linux Distro 固件启动;
支持 Rockchip miniloader 和 SPL/TPL 两种 Pre-loader 引导;
支持 LVDS、EDP、MIPI、HDMI、CVBS、RGB 等显示设备;
支持 eMMC、Nand Flash、SPI Nand flash、SPI NOR flash、SD 卡、U 盘等存储设备启动;
支持 FAT、EXT2、EXT4 文件系统;
支持 GPT、RK parameter 分区表;
支持开机 LOGO、充电动画、低电管理、电源管理;
支持 I2C、PMIC、CHARGE、FUEL GUAGE、USB、GPIO、PWM、GMAC、eMMC、
NAND、Interrupt 等;
支持 Vendor storage 保存用户的数据和配置;
支持 RockUSB 和 Google Fastboot 两种 USB gadget 烧写 eMMC;
支持 Mass storage、ethernet、HID 等 USB 设备;
支持通过硬件状态动态选择 kernel DTB;
Uboot 默认的配置文件是
/home/topeet/Android12/3588-android12/u-boot/configs/rk3588_defconfig,如果我们要使用图形化
界面配置 uboot,操作方法如下所示:
1 首先将默认的配置文件 rk3588_defconfig 备份,如果之后的操作失误了,可以将备份
的文件覆盖回原来的配置文件。
cp -r configs/rk3588_defconfig configs/rk3588_defconfig_bak
2 然后设置 ARCH=arm64,输入以下命令:
export ARCH=arm64
3 然后输入以下命令,将默认的配置文件覆盖.config
make rk3588_defconfig
4 打开图形化界面配置,输入以下命令:
make menuconfig
5 然后大家可以在图形化界面配置了,配置完毕保存到 configs/rk3588_defconfig 文件,
如下图所示:
6 保存完毕,可以按照单独编译 uboot 小节进行编译。
Uboot 默认的设备树文件是
/home/topeet/Android12/3588-android12/u-boot/arch/arm/dts/rk3588-evb.dts
RK 平台提供串口组合键触发一些事件用于调试、烧写,如果无法触发,请多尝试几次;开
机的时候可以按以下组合键:
ctrl+c:进入 U-Boot 命令行模式;
ctrl+d:进入 loader 烧写模式;
ctrl+b:进入 maskrom 烧写模式
ctrl+f:进入 fastboot 模式;
ctrl+m:打印 bidram/system 信息;
ctrl+i:使能内核 initcall_debug;
ctrl+p:打印 cmdline 信息;
ctrl+s:"Starting kernel..."之后进入 U-Boot 命令行;