[U-Boot] [PATCH 3/3] ARM: kwimage: fix v0 format

Prafulla Wadaskar prafulla at marvell.com
Fri Oct 31 05:57:31 CET 2014



> -----Original Message-----
> From: Gerald Kerma [mailto:drEagle at doukki.net]
> Sent: 31 October 2014 05:33
> To: u-boot at lists.denx.de; Prafulla Wadaskar; sr at denx.de
> Cc: albert.u.boot at aribaud.net; luka at openwrt.org; Gerald
> Kerma
> Subject: [PATCH 3/3] ARM: kwimage: fix v0 format
> 
> This patch fix the kwimage tools for version 0
> fileformat used for kirkwood
> Tested on sheevaplug
> 
> Signed-off-by: Gerald Kerma <drEagle at doukki.net>
> ---
>  tools/kwbimage.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/tools/kwbimage.c b/tools/kwbimage.c
> index 1120e9b..7e2fb5e 100644
> --- a/tools/kwbimage.c
> +++ b/tools/kwbimage.c
> @@ -324,7 +324,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;
> @@ -792,8 +792,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);
> @@ -816,7 +816,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;
> 
> @@ -824,7 +825,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;
>  	}
> --

Thanks Gerald.

Regards...
Prafulla . . .

> 1.9.1



More information about the U-Boot mailing list