tools: imagetool: Extend print_header() by params argument
authorPali Rohár <pali@kernel.org>
Wed, 29 Mar 2023 19:25:54 +0000 (21:25 +0200)
committerStefan Roese <sr@denx.de>
Thu, 13 Apr 2023 09:34:47 +0000 (11:34 +0200)
This allows image type print_header() callback to access struct
image_tool_params *params.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
30 files changed:
tools/aisimage.c
tools/atmelimage.c
tools/default_image.c
tools/fit_common.c
tools/fit_common.h
tools/fit_image.c
tools/gpimage.c
tools/imagetool.c
tools/imagetool.h
tools/imx8image.c
tools/imx8mimage.c
tools/imximage.c
tools/kwbimage.c
tools/lpc32xximage.c
tools/mkimage.c
tools/mtk_image.c
tools/mxsimage.c
tools/omapimage.c
tools/pblimage.c
tools/rkcommon.c
tools/rkcommon.h
tools/socfpgaimage.c
tools/stm32image.c
tools/sunxi_egon.c
tools/sunxi_toc0.c
tools/ublimage.c
tools/vybridimage.c
tools/zynqimage.c
tools/zynqmpimage.c
tools/zynqmpimage.h

index b8b3ee3..c5b33b5 100644 (file)
@@ -113,7 +113,7 @@ static int get_ais_table_id(uint32_t *ptr)
        return -1;
 }
 
-static void aisimage_print_header(const void *hdr)
+static void aisimage_print_header(const void *hdr, struct image_tool_params *params)
 {
        struct ais_header *ais_hdr = (struct ais_header *)hdr;
        uint32_t *ptr;
index 7b3b243..6a2d9d8 100644 (file)
@@ -182,7 +182,7 @@ static void atmel_print_pmecc_header(const uint32_t word)
        printf("\t\t====================\n");
 }
 
-static void atmel_print_header(const void *ptr)
+static void atmel_print_header(const void *ptr, struct image_tool_params *params)
 {
        uint32_t *ints = (uint32_t *)ptr;
        size_t pos;
index dc429ce..0e49ab3 100644 (file)
@@ -41,6 +41,11 @@ static int image_check_params(struct image_tool_params *params)
                (params->lflag && (params->dflag || params->fflag)));
 }
 
+static void image_print_header(const void *ptr, struct image_tool_params *params)
+{
+       image_print_contents(ptr);
+}
+
 static int image_verify_header(unsigned char *ptr, int image_size,
                        struct image_tool_params *params)
 {
@@ -201,7 +206,7 @@ U_BOOT_IMAGE_TYPE(
        (void *)&header,
        image_check_params,
        image_verify_header,
-       image_print_contents,
+       image_print_header,
        image_set_header,
        image_extract_subimage,
        image_check_image_types,
index 0164976..2d417d4 100644 (file)
 #include <image.h>
 #include <u-boot/crc.h>
 
+void fit_print_header(const void *fit, struct image_tool_params *params)
+{
+       fit_print_contents(fit);
+}
+
 int fit_verify_header(unsigned char *ptr, int image_size,
                        struct image_tool_params *params)
 {
index 920a16a..2da4b94 100644 (file)
@@ -10,6 +10,8 @@
 #include "mkimage.h"
 #include <image.h>
 
+void fit_print_header(const void *fit, struct image_tool_params *params);
+
 /**
  * Verify the format of FIT header pointed to by ptr
  *
index 8763a36..9fe69ea 100644 (file)
@@ -944,7 +944,7 @@ U_BOOT_IMAGE_TYPE(
        (void *)&header,
        fit_check_params,
        fit_verify_header,
-       fit_print_contents,
+       fit_print_header,
        NULL,
        fit_extract_contents,
        fit_check_image_types,
index 27de4cf..d2bc79d 100644 (file)
@@ -41,7 +41,7 @@ static int gpimage_verify_header(unsigned char *ptr, int image_size,
        return gph_verify_header(gph, 1);
 }
 
-static void gpimage_print_header(const void *ptr)
+static void gpimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        const struct gp_header *gph = (struct gp_header *)ptr;
 
index 87eee4a..b293211 100644 (file)
@@ -66,7 +66,7 @@ int imagetool_verify_print_header(
                                 */
                                if ((*curr)->print_header) {
                                        if (!params->quiet)
-                                               (*curr)->print_header(ptr);
+                                               (*curr)->print_header(ptr, params);
                                } else {
                                        fprintf(stderr,
                                                "%s: print_header undefined for %s\n",
@@ -103,7 +103,7 @@ static int imagetool_verify_print_header_by_type(
                         */
                        if (tparams->print_header) {
                                if (!params->quiet)
-                                       tparams->print_header(ptr);
+                                       tparams->print_header(ptr, params);
                        } else {
                                fprintf(stderr,
                                        "%s: print_header undefined for %s\n",
index fdceea4..a766aa2 100644 (file)
@@ -132,7 +132,7 @@ struct image_type_params {
         */
        int (*verify_header) (unsigned char *, int, struct image_tool_params *);
        /* Prints image information abstracting from image header */
-       void (*print_header) (const void *);
+       void (*print_header) (const void *, struct image_tool_params *);
        /*
         * The header or image contents need to be set as per image type to
         * be generated using this callback function.
index c25ea84..76d0cd6 100644 (file)
@@ -30,7 +30,7 @@ static void imx8image_set_header(void *ptr, struct stat *sbuf, int ifd,
 {
 }
 
-static void imx8image_print_header(const void *ptr)
+static void imx8image_print_header(const void *ptr, struct image_tool_params *params)
 {
 }
 
index 3ca79d8..21075c2 100644 (file)
@@ -60,7 +60,7 @@ static void imx8mimage_set_header(void *ptr, struct stat *sbuf, int ifd,
 {
 }
 
-static void imx8mimage_print_header(const void *ptr)
+static void imx8mimage_print_header(const void *ptr, struct image_tool_params *params)
 {
 }
 
index 354ee34..b3da1f2 100644 (file)
@@ -813,7 +813,7 @@ static int imximage_verify_header(unsigned char *ptr, int image_size,
        return 0;
 }
 
-static void imximage_print_header(const void *ptr)
+static void imximage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct imx_header *imx_hdr = (struct imx_header *) ptr;
        uint32_t version = detect_imximage_version(imx_hdr);
index 177084a..8e573d9 100644 (file)
@@ -1972,7 +1972,7 @@ static void kwbimage_set_header(void *ptr, struct stat *sbuf, int ifd,
        free(image);
 }
 
-static void kwbimage_print_header(const void *ptr)
+static void kwbimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct main_hdr_v0 *mhdr = (struct main_hdr_v0 *)ptr;
        struct bin_hdr_v0 *bhdr;
index 37931f9..715a55a 100644 (file)
@@ -125,7 +125,7 @@ static void print_hdr_byte(struct nand_page_0_boot_header *hdr, int ofs)
        printf("header[%d] = %02x\n", ofs, hdr->data[ofs]);
 }
 
-static void lpc32xximage_print_header(const void *ptr)
+static void lpc32xximage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct nand_page_0_boot_header *hdr =
                (struct nand_page_0_boot_header *)ptr;
index a92d9d5..6dfe3e1 100644 (file)
@@ -790,7 +790,7 @@ int main(int argc, char **argv)
 
        /* Print the image information by processing image header */
        if (tparams->print_header)
-               tparams->print_header (ptr);
+               tparams->print_header (ptr, &params);
        else {
                fprintf (stderr, "%s: Can't print header for %s\n",
                        params.cmdname, tparams->name);
index 5ef9334..30f54c8 100644 (file)
@@ -510,7 +510,7 @@ static int mtk_image_verify_header(unsigned char *ptr, int image_size,
        return -1;
 }
 
-static void mtk_image_print_header(const void *ptr)
+static void mtk_image_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct legacy_img_hdr *hdr = (struct legacy_img_hdr *)ptr;
        union lk_hdr *lk = (union lk_hdr *)ptr;
index fbe46c4..ead61d0 100644 (file)
@@ -2239,7 +2239,7 @@ static int mxsimage_verify_header(unsigned char *ptr, int image_size,
        return mxsimage_verify_print_header(params->imagefile, 1);
 }
 
-static void mxsimage_print_header(const void *hdr)
+static void mxsimage_print_header(const void *hdr, struct image_tool_params *params)
 {
        if (imagefile)
                mxsimage_verify_print_header(imagefile, 0);
index c59cdcc..b79c1c3 100644 (file)
@@ -85,7 +85,7 @@ static void omapimage_print_section(struct ch_settings *chs)
                chs->flags);
 }
 
-static void omapimage_print_header(const void *ptr)
+static void omapimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        const struct ch_toc *toc = (struct ch_toc *)ptr;
        const struct gp_header *gph =
index bd639c2..6c4d360 100644 (file)
@@ -254,7 +254,7 @@ static int pblimage_verify_header(unsigned char *ptr, int image_size,
        return 0;
 }
 
-static void pblimage_print_header(const void *ptr)
+static void pblimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        printf("Image Type:   Freescale PBL Boot Image\n");
 }
index 96efc11..12c27b3 100644 (file)
@@ -481,7 +481,7 @@ int rkcommon_verify_header(unsigned char *buf, int size,
        return -ENOENT;
 }
 
-void rkcommon_print_header(const void *buf)
+void rkcommon_print_header(const void *buf, struct image_tool_params *params)
 {
        struct header0_info header0;
        struct header0_info_v2 header0_v2;
index 49b6df3..5d2770a 100644 (file)
@@ -68,7 +68,7 @@ int rkcommon_verify_header(unsigned char *buf, int size,
  *
  * @buf:       Pointer to the image (can be a read-only file-mapping)
  */
-void rkcommon_print_header(const void *buf);
+void rkcommon_print_header(const void *buf, struct image_tool_params *params);
 
 /**
  * rkcommon_need_rc4_spl() - check if rc4 encoded spl is required
index eba812f..953dfee 100644 (file)
@@ -313,7 +313,7 @@ static void socfpgaimage_print_header_v1(struct socfpga_header_v1 *header)
               le16_to_cpu(header->checksum));
 }
 
-static void socfpgaimage_print_header(const void *ptr)
+static void socfpgaimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        const void *header = ptr + HEADER_OFFSET;
        struct socfpga_header_v0 *header_v0;
index 18357c0..5c6991f 100644 (file)
@@ -99,7 +99,7 @@ static int stm32image_verify_header(unsigned char *ptr, int image_size,
        return 0;
 }
 
-static void stm32image_print_header(const void *ptr)
+static void stm32image_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct stm32_header *stm32hdr = (struct stm32_header *)ptr;
 
index d45b6f5..a514427 100644 (file)
@@ -82,7 +82,7 @@ static int egon_verify_header(unsigned char *ptr, int image_size,
        return EXIT_SUCCESS;
 }
 
-static void egon_print_header(const void *buf)
+static void egon_print_header(const void *buf, struct image_tool_params *params)
 {
        const struct boot_file_head *header = buf;
 
index 7a8d74b..292649f 100644 (file)
@@ -757,7 +757,7 @@ static const char *toc0_item_name(uint32_t name)
        return "(unknown)";
 }
 
-static void toc0_print_header(const void *buf)
+static void toc0_print_header(const void *buf, struct image_tool_params *params)
 {
        const struct toc0_main_info *main_info = buf;
        const struct toc0_item_info *item_info = (void *)(main_info + 1);
index 1d2e897..8f9b58c 100644 (file)
@@ -202,7 +202,7 @@ static int ublimage_verify_header(unsigned char *ptr, int image_size,
        return 0;
 }
 
-static void ublimage_print_header(const void *ptr)
+static void ublimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct ubl_header *ubl_hdr = (struct ubl_header *) ptr;
 
index 94a6684..c38886f 100644 (file)
@@ -134,7 +134,7 @@ static void vybridimage_print_hdr_field(struct nand_page_0_boot_header *hdr,
        printf("header.fcb[%d] = %08x\n", idx, hdr->fcb[idx]);
 }
 
-static void vybridimage_print_header(const void *ptr)
+static void vybridimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct nand_page_0_boot_header *hdr =
                (struct nand_page_0_boot_header *)ptr;
index d3f418b..359c93d 100644 (file)
@@ -163,7 +163,7 @@ static int zynqimage_verify_header(unsigned char *ptr, int image_size,
        return 0;
 }
 
-static void zynqimage_print_header(const void *ptr)
+static void zynqimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct zynq_header *zynqhdr = (struct zynq_header *)ptr;
        int i;
index 19b2f02..5113ba8 100644 (file)
@@ -209,7 +209,7 @@ static void print_partition(const void *ptr, const struct partition_header *ph)
        printf("    Checksum   : 0x%08x\n", le32_to_cpu(ph->checksum));
 }
 
-void zynqmpimage_print_header(const void *ptr)
+void zynqmpimage_print_header(const void *ptr, struct image_tool_params *params)
 {
        struct zynqmp_header *zynqhdr = (struct zynqmp_header *)ptr;
        int i;
index a1db819..9d526a1 100644 (file)
@@ -133,6 +133,6 @@ struct zynqmp_header {
 };
 
 void zynqmpimage_default_header(struct zynqmp_header *ptr);
-void zynqmpimage_print_header(const void *ptr);
+void zynqmpimage_print_header(const void *ptr, struct image_tool_params *params);
 
 #endif /* _ZYNQMPIMAGE_H_ */