android: boot: content print is not supported for v3, v4 header version
authorSafae Ouajih <souajih@baylibre.com>
Sun, 5 Feb 2023 23:50:09 +0000 (00:50 +0100)
committerTom Rini <trini@konsulko.com>
Tue, 4 Apr 2023 18:50:46 +0000 (14:50 -0400)
Content print is not supported for version 3 and 4 of boot image header.
Thus, only print that content when v2 is used.

Update android_print_contents() to print an error message
when trying to print boot image header version 3 or 4 content.

Signed-off-by: Safae Ouajih <souajih@baylibre.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Tested-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
boot/image-android.c

index 15a735e..31a5d30 100644 (file)
@@ -477,6 +477,10 @@ bool android_image_get_dtb_by_index(ulong hdr_addr, u32 index, ulong *addr,
  */
 void android_print_contents(const struct andr_boot_img_hdr_v0 *hdr)
 {
+       if (hdr->header_version >= 3) {
+               printf("Content print is not supported for boot image header version > 2");
+               return;
+       }
        const char * const p = IMAGE_INDENT_STRING;
        /* os_version = ver << 11 | lvl */
        u32 os_ver = hdr->os_version >> 11;
@@ -509,7 +513,7 @@ void android_print_contents(const struct andr_boot_img_hdr_v0 *hdr)
                       hdr->header_size);
        }
 
-       if (hdr->header_version >= 2) {
+       if (hdr->header_version == 2) {
                printf("%sdtb size:             %x\n", p, hdr->dtb_size);
                printf("%sdtb addr:             %llx\n", p, hdr->dtb_addr);
        }