linuxOS_AP05/external/update_engine/rkimage.h
2025-06-02 13:59:07 +08:00

48 lines
1.2 KiB
C

/*************************************************************************
> 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