提交 26f195c7 编写于 作者: G Gerald Kerma 提交者: Tom Rini

ARM: kwimage: fix v0 format

This patch fix the kwimage tools for version 0 fileformat used for kirkwood
Tested on sheevaplug
Signed-off-by: NGerald Kerma <drEagle@doukki.net>
Tested-by: NStefan Roese <sr@denx.de>
Reviewed-by: NStefan Roese <sr@denx.de>
Acked-By: NPrafulla Wadaskar <prafulla@marvell.com>
上级 336be762
......@@ -325,7 +325,7 @@ static void *image_create_v0(size_t *imagesz, struct image_tool_params *params,
main_hdr = image;
/* Fill in the main header */
main_hdr->blocksize = payloadsz + sizeof(uint32_t);
main_hdr->blocksize = payloadsz + sizeof(uint32_t) - headersz;
main_hdr->srcaddr = headersz;
main_hdr->ext = has_ext;
main_hdr->destaddr = params->addr;
......@@ -811,8 +811,8 @@ static void kwbimage_print_header(const void *ptr)
printf("Image Type: MVEBU Boot from %s Image\n",
image_boot_mode_name(mhdr->blockid));
printf("Data Size: ");
printf("Image version:%d\n", image_version((void *)ptr));
printf("Data Size: ");
genimg_print_size(mhdr->blocksize - sizeof(uint32_t));
printf("Load Address: %08x\n", mhdr->destaddr);
printf("Entry Point: %08x\n", mhdr->execaddr);
......@@ -835,7 +835,8 @@ static int kwbimage_verify_header(unsigned char *ptr, int image_size,
main_hdr = (void *)ptr;
checksum = image_checksum8(ptr,
sizeof(struct main_hdr_v0));
sizeof(struct main_hdr_v0)
- sizeof(uint8_t));
if (checksum != main_hdr->checksum)
return -FDT_ERR_BADSTRUCTURE;
......@@ -843,7 +844,8 @@ static int kwbimage_verify_header(unsigned char *ptr, int image_size,
if (image_version((void *)ptr) == 0) {
ext_hdr = (void *)ptr + sizeof(struct main_hdr_v0);
checksum = image_checksum8(ext_hdr,
sizeof(struct ext_hdr_v0));
sizeof(struct ext_hdr_v0)
- sizeof(uint8_t));
if (checksum != ext_hdr->checksum)
return -FDT_ERR_BADSTRUCTURE;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册