Rockchip Linux 平台支持两种启动方案,Recovery 模式和Linux A/B 模式:
- Recovery 模式,设备上有一个单独的分区(recovery)用于升级操作。
- Linux A/B 模式,设备上有两套固件,可切换使用。
两种启动方案的对比如下:
| 升级方案 | 代码路径 | 是否支持Recovey启动模式升级 | 是否支持A/B启动模式升级 | 是否需要misc分区支持 |
|---|---|---|---|---|
| updateEngine | external/recovery/update_engine | 支持 | 支持 | 需要 |
| rkupdate | external/rkupdate | 支持 | 不支持 | 需要 |
文章目录
一、Recovery 模式
1.1 概述
Recovery 模式是在设备上多一个Recovery分区,该分区由kernel+resource+ramdisk 组成,主要用于升级操
作。u-boot会根据misc分区存放的字段来判断将要引导的系统是Normal 系统还是
Recovery 系统。由于系统的独立性,所以Recovery模式能保证升级的完整性,即升级过程被中断,如异
常掉电,升级仍然能继续执行
优点:
- 能保证升级的完整性
缺点:
- 系统多了一个分区,该分区仅用于升级
- 升级过程必须重启进入recovery模式,不能在Normal系统直接进行升级
1.2 配置与编译
Buildroot:recovery 配置文件选择如下:
BR2_PACKAGE_RECOVERY=y #开启升级相关功能
BR2_PACKAGE_RECOVERY_USE_UPDATEENGINE
本文介绍了Rockchip Linux平台的Recovery模式和A/B模式,详细阐述了Recovery模式的配置、编译、系统升级及日志查看,以及A/B模式的升级流程。同时讲解了misc分区的作用和updateEngine工具的使用,包括其参数说明和自定义分区升级的方法。
订阅专栏 解锁全文
867






