rockchip --- 更新固件
参考资料
Rockchip_Developer_Guide_Linux_Recovery_CN.pdf
使用电脑上位机更新固件
uboot 运行过程,会判断 boot mode 是 normal 还是 loader,如果是 normal 则正常加载 kernel 运行,如果是 loader,则等待从 usb 获取固件
上位机点击切换到 loader,会发送指令给设备,让设备改写 boot mode 标志,关机再重启,进入 uboot,读取 boot mode 标志
OTA 更新固件
收到固件后,需要执行 update 指令触发更新固件,所以 buildroot package 需要选中 rktoolkit,生成 update 可执行程序
device/rockchip/.chips/rk3308/package-file 指定哪些分区文件整合到 update.img,如果此文件不存在,可以 make edit-package-file 生成,不生成直接 make 或 make updateimg,也会生成 package-file,但不会放在这个路径下
执行完 update ota /userdata/update.img 指令,会先更新 recovery 分区,并修改 misc 分区,然后重启,uboot 判断 boot mode 是 recovery (misc),执行 recovery 的 kernel,更新 flash 后重启,进入 uboot 判断 boot mode 是 normal,运行 normal 的kernel,OTA 完成
标签:
rockchip
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2023-07-26 QEMU 加载 uboot kernel 实例