tools: mtk_image: use uint32_t for ghf header magic and version

This patch converts magic and version fields of ghf common header
to one field with the type of uint32_t to make this header flexible
for futher updates.

Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
This commit is contained in:
Weijie Gao
2023-07-19 17:17:45 +08:00
committed by Tom Rini
parent 93eb707c28
commit 2bff97ad5a
2 changed files with 9 additions and 7 deletions

View File

@@ -542,11 +542,13 @@ static void put_brom_layout_header(struct brom_layout_header *hdr, int type)
hdr->type = cpu_to_le32(type); hdr->type = cpu_to_le32(type);
} }
static void put_ghf_common_header(struct gfh_common_header *gfh, int size, static void put_ghf_common_header(struct gfh_common_header *gfh, uint16_t size,
int type, int ver) uint16_t type, uint8_t ver)
{ {
memcpy(gfh->magic, GFH_HEADER_MAGIC, sizeof(gfh->magic)); uint32_t magic_version = GFH_HEADER_MAGIC |
gfh->version = ver; (uint32_t)ver << GFH_HEADER_VERSION_SHIFT;
gfh->magic_version = cpu_to_le32(magic_version);
gfh->size = cpu_to_le16(size); gfh->size = cpu_to_le16(size);
gfh->type = cpu_to_le16(type); gfh->type = cpu_to_le16(type);
} }

View File

@@ -63,13 +63,13 @@ struct gen_device_header {
/* BootROM header definitions */ /* BootROM header definitions */
struct gfh_common_header { struct gfh_common_header {
uint8_t magic[3]; uint32_t magic_version;
uint8_t version;
uint16_t size; uint16_t size;
uint16_t type; uint16_t type;
}; };
#define GFH_HEADER_MAGIC "MMM" #define GFH_HEADER_MAGIC 0x4D4D4D
#define GFH_HEADER_VERSION_SHIFT 24
#define GFH_TYPE_FILE_INFO 0 #define GFH_TYPE_FILE_INFO 0
#define GFH_TYPE_BL_INFO 1 #define GFH_TYPE_BL_INFO 1