RK3568开发板OTA晋级
OTA(Over-The-。Ai。r)晋级作为一种无丢失的体系晋级方法,可以长途将新功能布置到产品上,极大地提高了设备的可维护性和可扩展性。除了经过网络直接下载OTA晋级包外,咱们还可以经过将晋级包下载到。SD。卡或U盘后,再对设备进行本地晋级。
本文将依据。飞凌嵌入式。RK3568开发板,详细介绍OTA晋级的流程,特别是本地晋级程序recovery的履行流程及技术细节。
一、制造recovery.img。
首要,咱们需求制造recovery镜像。recovery相关的源码坐落buildroot/output/OK3568-recovery/build/recovery-develop目录下。
源码修正与编译。
假如修正过该目录下的源码文件,需求履行以下操作:
进入源码目录:forlinxubuntu:~/OK3568-。linux。-source$ source envsetup.sh。
挑选某一渠道的recovery装备,输入96(详细数字或许因渠道而异)。
铲除编译产品偏从头编译recovery:forlinxubuntu:~/OK3568-linux-source$ make recovery-dirclean && make recovery。
铲除rkupdate编译产品偏从头编译:forlinxubuntu:~/OK3568-linux-source$ make rkupdate-dirclean && make rkupdate。
假如没有修正过源码文件,则直接履行以下操作:
编译生成recovery.img:forlinxubuntu:~/OK3568-linux-source$ ./build.sh recovery。
将生成的固件复制至rockdev/目录下:forlinxubuntu:~/OK3568-linux-source$ ./mkfirmware.sh。
烧写recovery.img。
将生成的recovery.img文件烧写到设备的指定分区。详细操作通常是经过设备分区表,勾选对应的recovery分区(如分区9),挑选recovery.img途径,然后点击履行烧写操作。
二、制造晋级镜像。
为了验证晋级是否成功,咱们需求对boot.img文件进行修正。boot.img文件寄存有设备树和内核,咱们可以经过修正设备树来完成晋级作用。
修正设备树文件。
修正/OK3568-linux-source/kernel/arch/。arm。64/boot/dts/。rockchip。/OK3568-C-common.dtsi文件,对forlinx_control节点进行如下修正,以默许只翻开。HDMI。输出,封闭MI。PI。和LVDS输出:
/ { model =“Forlinx OK3568-C Board"; compa。ti。ble ="forlinx,ok3568","rockchip,rk3568-evb1-。ddr。4-V10","rockchip,rk3568"; forlinx control { status ="okay"; video-hdmi ="hdmi"; video-mipi-edp ="off"; video-lvds-rgb ="off"; };
修正package-file文件。
依据晋级需求修正/OK3568-linux-source/tools/linux/Linux_Pack_Firmware/rockdev/package-file文件。
本例中以更新boot.img为例,所以将其他.img文件注释掉。用户可以依据实践产品更新需求对该文件进行调整。
从头编译内核。
修正完设备树后,需求从头编译内核以生成新的boot.img文件。
三、晋级操作。
SD卡或U盘晋级。
将SD卡或U盘默许挂载到RK3568开发板的/run/media目录下。将update.img镜像文件复制到开发板的/userdata目录下。重启开发板后,体系将主动检测该目录下的晋级包并进行晋级。
FTP服务器晋级。
在RK3568开发板端履行相应指令,将FTP服务器上的晋级包文件复制到开发板进行晋级。
下载完成后,运用update ota /userdata/update.img指令进行晋级。
晋级过程中设备将会进入recovery形式,并进行主动晋级。晋级成功后,设备将进入正常体系(normal体系)。
四、验证测验成果。
烧写默许出厂镜像文件。
将RK3568开发板上电,串口终端按住空格键进入uboot选屏界面。烧写默许出厂镜像文件后,调查现象:默许敞开HDMI、MIPI和LVDS三个输出。
烧写晋级包镜像文件。
烧写晋级包镜像文件后,调查现象:只要HDMI显现敞开,其他两个输出被封闭。这验证了晋级操作的成功性。
五、注意事项。
打包update.img固件。
晋级固件可以全分区打包,也可以部分晋级。经过修正package-file文件,可以去掉不需求晋级的分区,然后减小晋级包(update.img)的巨细。
假如package-file中包括了recovery.img,它不会在recovery形式中晋级。为了防备晋级过程中掉电导致其他分区无法正常晋级的问题,recovery.img的晋级放在normal体系下履行。履行update指令时,会先检测update.img晋级包中是否包括recovery.img,若有则晋级recovery分区,再进入recovery形式晋级其他分区固件。
misc分区。
misc分区不主张打包进update.img中。即便打包进去,在晋级程序中加载判别到后也会疏忽该分区。即便晋级了misc分区,晋级成功后recovery程序仍会清空misc分区中所有的指令及参数,然后到达预期作用。
userdata分区。
若将update.img晋级包放置在flash中的userdata分区,则需求确保package-file中不包括userdata.img被打包进去,以避免文件体系的损坏和分区mount不成功的问题。
若从SD卡或U盘晋级时,可以打包userdata.img,然后对userdata分区进行晋级。晋级完成后,会对userdata分区从头进行resize操作。
经过以上过程和注意事项,咱们可以成功地在OK3568-C开发板上完成OTA晋级操作,并验证晋级作用。期望本文可以对我们在OTA晋级方面的项目开发有所协助。
审阅修改 黄宇。
内容来源:https://sh.tanphatexpress.com.vn/app-1/soi kèo c1 hôm nay,http://chatbotjud.saude.mg.gov.br/app-1/rato-garimpeiro-sortudo
(责任编辑:最新热点)