hdr_size variable is initialized
at the start of image creation algorithm instead of reading it each time.
This facilitate to use the common code for other image type implementations
for ex. kwbimage

Signed-off-by: Prafulla Wadaskar <prafu...@marvell.com>
---
 tools/mkimage.c |   18 ++++++++----------
 1 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/tools/mkimage.c b/tools/mkimage.c
index 967fe9a..c5b593c 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -250,9 +250,10 @@ NXTARG:            ;
         *
         * write dummy header, to be fixed later
         */
-       memset (hdr, 0, image_get_header_size ());
-
-       if (write(ifd, hdr, image_get_header_size ()) != image_get_header_size 
()) {
+       int hdr_size;
+       hdr_size = image_get_header_size ();
+       memset (hdr, 0, hdr_size);
+       if (write(ifd, hdr, hdr_size) != hdr_size) {
                fprintf (stderr, "%s: Write error on %s: %s\n",
                        cmdname, imagefile, strerror(errno));
                exit (EXIT_FAILURE);
@@ -339,14 +340,12 @@ NXTARG:           ;
        hdr = (image_header_t *)ptr;
 
        checksum = crc32 (0,
-                         (const char *)(ptr + image_get_header_size ()),
-                         sbuf.st_size - image_get_header_size ()
-                        );
-
+                       (const char *)(ptr + hdr_size),
+                       sbuf.st_size - hdr_size);
        /* Build new header */
        image_set_magic (hdr, IH_MAGIC);
        image_set_time (hdr, sbuf.st_mtime);
-       image_set_size (hdr, sbuf.st_size - image_get_header_size ());
+       image_set_size (hdr, sbuf.st_size - hdr_size);
        image_set_load (hdr, addr);
        image_set_ep (hdr, ep);
        image_set_dcrc (hdr, checksum);
@@ -354,10 +353,9 @@ NXTARG:            ;
        image_set_arch (hdr, opt_arch);
        image_set_type (hdr, opt_type);
        image_set_comp (hdr, opt_comp);
-
        image_set_name (hdr, name);
 
-       checksum = crc32 (0, (const char *)hdr, image_get_header_size ());
+       checksum = crc32 (0, (const char *)hdr, hdr_size);
 
        image_set_hcrc (hdr, checksum);
 
-- 
1.5.3.4

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to