img_upgrade.h

来自「AMLOGIC DPF source code」· C头文件 代码 · 共 77 行

H
77
字号
#ifndef __AW_IMG_UPGRADE_H_
#define __AW_IMG_UPGRADE_H_

#include "chipsupport/flashchips.h"
//#define UPGRADE_ADDR 0x2280000+0xf0000
#define UPGRADE_READ_BLOCK 0x400

typedef struct
{
	unsigned int signature;
	unsigned short header_version;
	unsigned short header_length;
	unsigned int imageChecksum;
	unsigned short chipID;
	unsigned short flags;
	unsigned int platformID;
	unsigned int reserve[2];
	char swVersion[16];
	char swBuildDate[16];
	unsigned int header_CRC32;
}AML_ImageHeader;

typedef int (*IMG_CHECK_FUN)(AML_ImageHeader *head) ;

typedef enum
{
	UPGRADE_INIT = 0,
	UPGRADE_USE_FIXED_MEM,
	UPGRADE_READING,
	UPGRADE_CHECK_OK,
	UPGRADE_ERASING,
	UPGRADING,
	UPGRADE_FINISHED,
	
	UPGRADE_ERROR,
	OPEN_FILE_ERROR,
	CRCERROR,
	CHECKSUMERROR,
	MEMORY_MALLOC_ERROR,
	MEMORY_NOT_ENOUGH,
	VERIFY_BUF_ERROR,
	GENERIC_ERROR,
	CHECK_PLATFORM_ERROR
}upgrade_process_t;

typedef struct
{
	unsigned char       *addr ;
	unsigned       buf_num;
	unsigned       buf[10] ;
	unsigned       buf_size[10];
	const char          *filename ;
	int                 size ;
	upgrade_process_t   process ;
	unsigned char       percent ;
    PAPPTASKARG         app;            /* application handle */
	FlashDevice         device;
	int                 writing;        // burn flash bytes 
	unsigned char       interrupt;      // for close interrupt in burn flash.
	IMG_CHECK_FUN       check;
}upgrade_t;

int img_upgrade_process(upgrade_t *upgrade_arg, PAPPTASKARG app) ;

extern void AWTXTStopAll() ;

extern unsigned char *AWTXTGetFixedMem() ;

//int img_upgrade_prepare(upgrade_t *upgrade_arg, char *filename) ;

//int AWUpgradeCheckHeader(char *filename, int *addr, int *length) ;
//
//void AWUpgradeProcess(int addr, int length) ;
//
//void AWSysDetectUpgrade() ;

#endif //__AW_IMG_UPGRADE_H_

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?