Rockchip烧写工具使用


环境:Windows

烧写环境设置

1、设置烧写工具打开时默认分区配置
路径:tools\windows\RKDevTool\RKDevTool_Release

原理:运行烧写工具会调用config.ini配置文件里面的DEFAULT_IMAGE_CONFIG(指定启动时加载的镜像配置,默认为config.cfg)
修改启动文件配置:
在这里插入图片描述
2、镜像汇总
运行脚本./mkfirmware.sh,连接在rockdev里
连接到Windows烧写工具配置中…\rockdev\Image*下
ln -s /home/linkh/linux/rk356x/rk356x_src/rockdev Image
在这里插入图片描述
3、根据生成parameter文件调整烧写工具的地址导出,替换config.cfg
在这里插入图片描述
4、烧写时发现没有rootfs镜像,在mkfirmware.sh最后添加

if [ -f $TOP_DIR/debian/linaro-rootfs.img ]
then
        echo -n "create linaro-rootfs.img..."
        ln -rsf $TOP_DIR/debian/linaro-rootfs.img $ROCKDEV/rootfs.img
        echo "done."
else
        echo "warning: $TOP_DIR/debian/linaro-rootfs.img  not found!"
fi   

注:烧写包烧写的镜像是写到emmc中,启动的时候uboot会从emmc读取启动

制作固件update.img

1、指定windows/RKDevTool/rockdev对应的打包工具,调整package-file里要打包的镜像
在这里插入图片描述
2、在windows环境下运行mkupdate.bat打包固件update.img
在这里插入图片描述

解压固件update.img

解包后的文件会保存在工具下的 output 目录中


环境:Linux

烧写工具

linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/upgrade_tool

烧写分区镜像
镜像分区存放位置:linux/Linux_Pack_Firmware/rockdev/Image

sudo upgrade_tool ul MiniLoaderAll.bin
sudo upgrade_tool di -p parameter.txt
sudo upgrade_tool di -u uboot.img
sudo upgrade_tool di -t trust.img
sudo upgrade_tool di -misc misc.img
sudo upgrade_tool di -r recovery.img
sudo upgrade_tool di -b zboot.img
sudo upgrade_tool di -rootfs rootfs.img
sudo upgrade_tool di -oem oem.img
sudo upgrade_tool di -userdata userdata.img
sudo upgrade_tool rd

制作固件update.img

制作固件位置:linux/Linux_Pack_Firmware/rockdev/
在这里插入图片描述
运行命令./mkupdate.sh
在这里插入图片描述

烧写统一固件 update.img

sudo upgrade_tool uf update.img

如果因 flash 问题导致升级时出错,可以尝试擦除 flash

sudo upgrade_tool ef update.img

解压固件update.img

cd tools/linux/RK_Tool/
make
cd tools/linux/Linux_Pack_Firmware/rockdev/
mkdir output
../../RK_Tool/img_unpack update.img output
cd output/
mkdir update
../afptool -unpack update.img update

详细截图log
在这里插入图片描述
在这里插入图片描述


知识点解析

update.img结构

编译出来的RK 固件 release_update.img(默认名字为update.img,重名为release_update.img) 包含引导加载程序 loader.img 和实际的固件数据update.img
update.img 是打包工具读取 package-file 索引文件从而将多个映像文件打包而成固件 。

解包与打包流程

解包是从 release_update.img 中提取 update.img,然后解开里面的所有映像文件。
重新打包时,则是相反的过程。它将由 package-file 描述的所有映像文件合成到 update.img 中,该文件将与 bootloader 一起打包以创建最终的 release_update.img


烧写文档资料参考

Linux开发烧写工具使用命令文档

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bazinga bingo

您的鼓励就是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值