initial commit
This commit is contained in:
40
app/app_ota/makeimage.h
Executable file
40
app/app_ota/makeimage.h
Executable file
@@ -0,0 +1,40 @@
|
||||
#ifndef _FIRMWARE_PACK_H_
|
||||
#define _FIRMWARE_PACK_H_
|
||||
|
||||
/*
|
||||
* 功能:
|
||||
* 因为固件都在V831这边,所以由V831来做升级的总管,控制升级流程
|
||||
* 1 从MT7682接收固件包, 写到V831的flash上面
|
||||
* 2 接收完毕,CRC正确,设置升级标志位,各个芯片要支持单独升级/单独设置升级标志/版本号
|
||||
* 3 触发V831的升级,升级完成,版本号与升级版本一致,清除V831的升级标志
|
||||
* 4 触发MT7682升级,升级完获取版本号,版本号与升级版本一致,清除MT7682升级标志
|
||||
* 5 类似方式触发BYD/华大升级
|
||||
*/
|
||||
|
||||
/*
|
||||
* 每一个模块升级完都要单独更新升级标志
|
||||
*/
|
||||
|
||||
enum FIRMWARE_ID {
|
||||
MAIN=0,
|
||||
SOUND,
|
||||
WIFI, //必须放在最后面, 因为写到flash以后, 就触发重启升级机制
|
||||
MCU2,
|
||||
CHIP_MAX
|
||||
};
|
||||
|
||||
#define IMG_MAGIC 0x20A3BF9D
|
||||
struct chipFWInfo {
|
||||
unsigned int magic;
|
||||
unsigned short chipID; //FIRMWARE_ID
|
||||
unsigned short version; //待升级的版本号
|
||||
unsigned int offset; //在固件包当中的偏移地址
|
||||
unsigned int length; //固件大小
|
||||
unsigned int crc; //crc32
|
||||
};
|
||||
|
||||
struct FWPackHeader{
|
||||
struct chipFWInfo FWInfo[CHIP_MAX];
|
||||
unsigned char reserved[128 - sizeof(struct chipFWInfo) * CHIP_MAX];
|
||||
};
|
||||
#endif
|
||||
Reference in New Issue
Block a user