]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - tools/omapimage.c
Merge git://git.denx.de/u-boot-fsl-qoriq
[people/ms/u-boot.git] / tools / omapimage.c
index e31b94ae4f72d2e05c90781d5d9d0e67b9b9a81d..e7c46388f4f375dbb2ecc78a6184365ee3860979 100644 (file)
@@ -20,6 +20,8 @@
 #include "gpheader.h"
 #include "omapimage.h"
 
+#define DIV_ROUND_UP(n, d)     (((n) + (d) - 1) / (d))
+
 /* Header size is CH header rounded up to 512 bytes plus GP header */
 #define OMAP_CH_HDR_SIZE 512
 #define OMAP_FILE_HDR_SIZE (OMAP_CH_HDR_SIZE + GPIMAGE_HDR_SIZE)
@@ -150,8 +152,10 @@ static void omapimage_set_header(void *ptr, struct stat *sbuf, int ifd,
                do_swap32 = 1;
                int swapped = 0;
                uint32_t *data = (uint32_t *)ptr;
+               const off_t size_in_words =
+                       DIV_ROUND_UP(sbuf->st_size, sizeof(uint32_t));
 
-               while (swapped <= (sbuf->st_size / sizeof(uint32_t))) {
+               while (swapped < size_in_words) {
                        *data = cpu_to_be32(*data);
                        swapped++;
                        data++;