Uboot启动流程
功能
Uboot一般有环境变量操作,内存操作,信息查询,网络操作 ,EMMC 和 SD 卡操作,FAT 格式文件系统操作,EXT 格式文件系统操作,系统引导等功能。
裸机启动
RK3399上电后,会从0xffff0000获取romcode并运行;先读取SDRAM(DDR)初始化代码到内部SRAM,然后初始化DDR,再将emmc上的代码(剩下的用户代码)复制到DDR运行;跟imx6ul差不多,把初初始化ddr的代码放在程序镜像的头部;或者像jz2440是在通过romcode把flash里前4k程序先放进sram执行
使用boot_merger将rk3399_ddr_800MHz_v1.09.bin、rk3399_usbplug_v1.09.bin和自己的裸机文件rk3399.bin合并出新文件即可。
spl+atf+uboot
1.DDR相关的rk3399_ddr_800MHz_v1.09.bin、USB相关的rk3399_usbplug_v1.09.bin、miniloader(瑞芯微修改的一个bootloader,可以理解成spl)相关的rk3399_miniloader_v1.09.bin。boot_merger将这三个bin文件最后合并成rk3399_loader_v1.09.109.bin
2.使用trust_merger,参数为RK3399TRUST.ini,生成trust.img;
3.使用loaderimage将u-boot.bin变成uboot.img;
spl启动
uboot启动