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 完成

 

posted @ 2024-07-26 18:50  流水灯  阅读(9)  评论(0编辑  收藏  举报