Image type is not supplied to `mkimage -l`. For this reason, we cannot use imagetool_verify_print_header_by_type. Instead, this patch uses imagetool_verify_print_header to look through all header types to find one where image validation succeeds.
This patch fixes failures in test/image/test-imagetools.sh Signed-off-by: Jordan Hand <jorh...@microsoft.com> Tested-by: Alex Kiernan <alex.kier...@gmail.com> Tested-by: Vagrant Cascadian <vagr...@debian.org> --- Changes in v2: - Fix patch formatting to move commit message above the cut tools/mkimage.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/tools/mkimage.c b/tools/mkimage.c index 2899adff81..76c3406d37 100644 --- a/tools/mkimage.c +++ b/tools/mkimage.c @@ -403,14 +403,21 @@ int main(int argc, char **argv) exit (EXIT_FAILURE); } - /* - * scan through mkimage registry for all supported image types - * and verify the input image file header for match - * Print the image information for matched image type - * Returns the error code if not matched - */ - retval = imagetool_verify_print_header_by_type(ptr, &sbuf, - tparams, ¶ms); + if (params.fflag) { + /* + * Verifies the header format based on the expected header for + * image type in tparams + */ + retval = imagetool_verify_print_header_by_type(ptr, &sbuf, + tparams, ¶ms); + } else { + /** + * When listing the image, we are not given the image type. Simply check all + * image types to find one that matches our header + */ + retval = imagetool_verify_print_header(ptr, &sbuf, + tparams, ¶ms); + } (void) munmap((void *)ptr, sbuf.st_size); (void) close (ifd); -- 2.17.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot