在升级的时候,需要升级三个文件,肯定有疑问为什么是这三个,preloader->fip->sysupgrade。而这三个又的启动过程又是怎么关联在一起的,下面一起分析下启动流程。
1、MT7981 启动顺序
mt7981是arm内核,所以都是arm提供的ATF那一套启动流程:
- BL1 (Boot ROM):芯片上电后执行 ROM 代码,加载 BL2 到 SRAM。
- BL2/Preloader:初始化 DDR、存储控制器,加载 BL31 和 BL33 到内存,并验证其签名。
- BL31:启动后驻留 EL3,注册 SMC 处理服务,并跳转至 BL33(U-Boot)。
- U-Boot (BL33):加载内核镜像(如 Linux),传递设备树参数,最终移交控制权至操作系统。
全流程:ROM Code → BL2 (Preloader) → FIP (BL31 + U-Boot) → Kernel
2、bl2代码如何运行bl31代码
bl2和bl31的代码都属于ATF,位于package/boot/arm-trusted-firmware-mediatek
模块。
有好几种启动模式可以选择,比如nor、nand、emmc等,openwrt-