/*************************************************************************
|
> File Name: rkimage.h
|
> Author: jkand.huang
|
> Mail: jkand.huang@rock-chips.com
|
> Created Time: Tue 30 Oct 2018 09:53:49 AM CST
|
************************************************************************/
|
|
#ifndef _RKIMAGE_H
|
#define _RKIMAGE_H
|
|
|
#define SHA_DIGEST_SIZE 20
|
#define PART_NAME 32
|
#define RELATIVE_PATH 64
|
#define MAX_PARTS 20
|
#define MAX_MACHINE_MODEL 64
|
#define MAX_MANUFACTURER 60
|
#define MAX_PACKAGE_FILES 16
|
#define RKIMAGE_TAG 0x46414B52
|
#define IMAGE_RESERVED_SIZE 61
|
|
typedef struct tagRKIMAGE_ITEM
|
{
|
char name[PART_NAME];
|
char file[RELATIVE_PATH];
|
unsigned int offset;
|
unsigned int flash_offset;
|
unsigned int usespace;
|
unsigned int size;
|
}RKIMAGE_ITEM;
|
|
|
typedef struct tagRKIMAGE_HDR
|
{
|
unsigned int tag;
|
unsigned int size;
|
char machine_model[MAX_MACHINE_MODEL];
|
char manufacturer[MAX_MANUFACTURER];
|
unsigned int version;
|
int item_count;
|
RKIMAGE_ITEM item[MAX_PACKAGE_FILES];
|
}RKIMAGE_HDR;
|
|
void display_RKIMAGE_HDR(RKIMAGE_HDR* hdr);
|
void adjustFileOffset(RKIMAGE_HDR* hdr, int offset);
|
int CheckImageFile(const char* path, RKIMAGE_HDR* hdr);
|
#endif
|