]> git.sur5r.net Git - u-boot/commitdiff
bootm, linux: fix booting Multi-File Image with "kernel+ramdisk+fdt"
authorHeiko Schocher <hs@denx.de>
Mon, 29 Mar 2010 11:15:48 +0000 (13:15 +0200)
committerWolfgang Denk <wd@denx.de>
Mon, 29 Mar 2010 12:31:42 +0000 (14:31 +0200)
Booting a "Multi-File Image" including a linux kernel, ramdisk and
fdt, generated with

mkimage -A ppc \
    -O linux \
    -T multi \
    -C gzip \
    -a 00000000 \
    -e 00000000 \
    -n "kernel-2.6+initrd+dtb" \
    -d "vmlinux.bin.gz:ramdisk_image.gz:board.dtb" \
    multi.bin

actually fails, because ramdisk start and end addresses
didn;t get initialized. This patch fixes this issue.

Tested on the KUP4K board.

Signed-off-by: Heiko Schocher <hs@denx.de>
common/cmd_bootm.c

index 23ab0c4aaea692e2934c4ce6e65889f9ee266c7e..995e378359d9438a0fc36a367b4387bcb1abd23b 100644 (file)
@@ -291,7 +291,8 @@ static int bootm_start(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
                return 1;
        }
 
-       if ((images.os.type == IH_TYPE_KERNEL) &&
+       if (((images.os.type == IH_TYPE_KERNEL) ||
+            (images.os.type == IH_TYPE_MULTI)) &&
            (images.os.os == IH_OS_LINUX)) {
                /* find ramdisk */
                ret = boot_get_ramdisk (argc, argv, &images, IH_INITRD_ARCH,