tools/kwbimage: fix v1 header verification
authorBaruch Siach <baruch@tkos.co.il>
Tue, 4 Jul 2017 17:23:40 +0000 (20:23 +0300)
committerStefan Roese <sr@denx.de>
Wed, 12 Jul 2017 04:57:55 +0000 (06:57 +0200)
commitdb7cd4ed33d6724937c747a7339810b77d6989da
tree4bfe8c408df50fc8b345726871dd31bc5b8a45fe
parent37d108b64fabc625ae829bc6ee419c163d523c3b
tools/kwbimage: fix v1 header verification

The verify_header callback in kwbimage.c only verifies v0 headers checksum.
Running 'mkimage -l' on a v1 image gives the following misleading output:

GP Header: Size ae000000 LoadAddr 34160600

Implement support for v1 headers. For that, factor out the header checksum code
to a separate main_hdr_checksum_ok() routine. This routine relies on the fact
that the checksum field offset is the same in both v0 and v1 headers. With this
patch applied 'mkimage -l' correctly identifies the image:

Image Type:   MVEBU Boot from sdio Image
Image version:1
Data Size:    398904 Bytes = 389.55 KiB = 0.38 MiB
Load Address: 007fffc0
Entry Point:  00800000

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
tools/kwbimage.c