可以按 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
問 W80x的fls固件如果添加其他資源文件(bin形式)到指定位置上?