W80x 的 fls 固件如果添加其他资源文件 (bin 形式) 到指定位置上?

发布于 2022-04-20 09: 39: 48

W80x 的 fls 固件如果添加其他资源文件 (bin 形式) 到指定位置上? 如标题所示

查看更多

关注者
0
被浏览
2. 3k
3 个回答
ZYQ
ZYQ 2022-04-20
我已不再支持 W80X 任何相关问题的回复, 请大家不要私信, 有问题找 isme 谢谢

你可以研究下 tools/w800 目录下的 wm_tool. c 文件, 这个就是 fls 文件生成的流程

大信
大信 认证专家 2022-04-20
硬件开发, 软件开发, 系统开发, 工程架构, 方案设计

可以按 img 的规范 (见下面的结构体) , 做一个 image 的头, 64 个字节, 这里面定义好其它资源文件的烧写地址, 长度. 然后计算 CRC, 把资源文件打成一个满足规范的 img 文件, 然后用命令合成新的 fls 文件
cat w800. fls resource. img " new_w800. fls
烧写这个新的文件, 即可把你的资源数据刷写到需要的地址空间上去.

img 文件头的格式:
typedef struct {

unsigned int   magic_no; 
unsigned short img_type; 
unsigned short zip_type; 
unsigned int   run_img_addr; 
unsigned int   run_img_len; 
unsigned int   img_header_addr; 
unsigned int   upgrade_img_addr; 
unsigned int   run_org_checksum; 
unsigned int   upd_no; 
unsigned char  ver[WM_TOOL_IMAGE_VERSION_LEN]; 
unsigned int   reserved0; 
unsigned int   reserved1; 
unsigned int   next_boot;     
unsigned int   hd_checksum; 

}

只需要填写 magic_no, run_img_addr, run_img_len, hd_checksum 这几个字段即可. 其它填 0

abcd
abcd 认证专家 2022-05-09
我只是个路过的老年人~

如果使用的是 W806 可以参考这个, 如果使用的是 W800 或者 W801 的 SDK, 也可以参考这个修改, 如果不是用的 CDK 编译就不是修改 aft_build_project. sh 文件, 得修改 tools/w800/rules. mk 文件.

撰写答案

请登录后再发布答案, 点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览