本帖最后由 maskmoo 于 2024-7-21 00:01 编辑
【正点原子i.MX93开发板】PC与开发板文件传输测试
【正点原子i.MX93开发板】出厂Linux系统源码编译实践
在前面文件传输和源码编译的基础上,这次将编译生成的镜像固件替换到开发板系统上更新,进行调试验证。
对于不同的镜像、文件,需要拷贝到开发板文件系统对应的路径也不同,这里列举常用的镜像、文件在开发板上的路径。
1 flash.bin(U-Boot)更新
对BootLoader进行更新主要有两种方法,分别是使用UUU脚本更新和使用dd指令更新。我这里使用的dd命令进行更新。
更新前确认系统启动的Uboot版本信息
然后将先前编译好的flash.bin文件拷贝到开发板home目录下,准备进行 flash.bin 烧写。
烧录前要执行下面的指令,先使能 emmc 启动分区。
echo 0 > /sys/block/mmcblk0boot0/force_ro
当前目录下的 flash.bin 烧写至 emmc的启动分区
dd if=flash.bin of=/dev/mmcblk0boot0
烧写完成后,关闭烧写的启动分区
echo 1 > /sys/block/mmcblk0boot0/force_ro
最后执行以下指令使能启动分区
mmc bootpart enable 1 1 /dev/mmcblk0
重启开发板查看 U-Boot 的打印信息,从打印的编译实践信息可以看到flash.bin已经成功更新。
2 内核镜像/设备树/内核模块更新
在调试验证阶段,只需要将需要验证的镜像文件替换到对应的路径下即可。对应文件在系统的路径为/run/media/mmcblk0p1。
更新前确认系统内核启动的版本信息
更新内核镜像
重启开发板观察内核启动信息,通过编译实践可以确认内核已经成功更新。
驱动模块路径位于系统的/lib/modules/6.1.55,同样进行替换即可。
如果最终确认完镜像功能后,可以将对应的镜像文件替换到基础资料\08、系统镜像\ATK-DLIMX93 出厂系统固件烧录包\boot,使用正点原子提供的 alientek-
imx93-emmc.uuu或alientek-imx93-sd.uuu进行烧写。针对这部分具体操作可以参照【正点原子】DLIMX93开发板资料(A盘)-基础资料\10、用户手册\06【正点原子】ATK-DLIMX93固件更新参考文档V1.0.pdf。
3 更新文件系统
文件系统的更新如果直接在运行中的系统上操作可能会遇到诸多问题,可能存在文件系统的一致性和数据损坏的风险。为了安全和有效地打包整个文件系统,原子的文档中提供了从TF卡启动和UUU工具烧录更新两种方式,目前笔者暂时没有文件系统更新需求,所以这部分没有具体实操,有更新需求的小伙伴可以参照【正点原子】DLIMX93开发板资料(A盘)-基础资料\10、用户手册\06【正点原子】ATK-DLIMX93固件更新参考文档V1.0.pdf 文档的第5章。