ppc4xx: Individual handling of ddr2_fixed.c for canyonlands_nand build
[platform/kernel/u-boot.git] / common / image.c
index f7faf50..67e594d 100644 (file)
@@ -23,7 +23,6 @@
  * MA 02111-1307 USA
  */
 
-
 #ifndef USE_HOSTCC
 #include <common.h>
 #include <watchdog.h>
 #include <dataflash.h>
 #endif
 
-#ifdef CONFIG_LOGBUFFER
-#include <logbuff.h>
-#endif
-
 #if defined(CONFIG_TIMESTAMP) || defined(CONFIG_CMD_DATE)
 #include <rtc.h>
 #endif
@@ -242,7 +237,7 @@ void image_multi_getimg (image_header_t *hdr, ulong idx,
 {
        int i;
        uint32_t *size;
-       ulong offset, tail, count, img_data;
+       ulong offset, count, img_data;
 
        /* get number of component */
        count = image_multi_count (hdr);
@@ -258,19 +253,15 @@ void image_multi_getimg (image_header_t *hdr, ulong idx,
        if (idx < count) {
                *len = uimage_to_cpu (size[idx]);
                offset = 0;
-               tail = 0;
 
                /* go over all indices preceding requested component idx */
                for (i = 0; i < idx; i++) {
-                       /* add up i-th component size */
-                       offset += uimage_to_cpu (size[i]);
-
-                       /* add up alignment for i-th component */
-                       tail += (4 - uimage_to_cpu (size[i]) % 4);
+                       /* add up i-th component size, rounding up to 4 bytes */
+                       offset += (uimage_to_cpu (size[i]) + 3) & ~3 ;
                }
 
                /* calculate idx-th component data address */
-               *data = img_data + offset + tail;
+               *data = img_data + offset;
        } else {
                *len = 0;
                *data = 0;
@@ -1022,9 +1013,6 @@ int boot_ramdisk_high (struct lmb *lmb, ulong rd_data, ulong rd_len,
                initrd_high = ~0;
        }
 
-       /* Prevent initrd from overwriting logbuffer */
-       lmb_reserve(lmb, logbuffer_base() - LOGBUFF_OVERHEAD, LOGBUFF_RESERVE);
-
        debug ("## initrd_high = 0x%08lx, copy_to_ram = %d\n",
                        initrd_high, initrd_copy_to_ram);