]> xenbits.xensource.com Git - qemu-upstream-4.4-testing.git/commitdiff
hw/arm: Use 'load_ramdisk()' for loading ramdisks w/ U-Boot header
authorSoren Brinkmann <soren.brinkmann@xilinx.com>
Mon, 8 Jul 2013 22:40:02 +0000 (15:40 -0700)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 22 Jul 2013 11:01:37 +0000 (12:01 +0100)
The load_ramdisk function is used to load ramdisk featuring a U-Boot
header.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1373323202-17083-3-git-send-email-soren.brinkmann@xilinx.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm/boot.c

index 9fbe5d22a581c503fa51a3ce68a3c13235b55e7d..2cbeefdcba6c2446ed5a85a0de14d4dbdf3da32f 100644 (file)
@@ -411,10 +411,16 @@ void arm_load_kernel(ARMCPU *cpu, struct arm_boot_info *info)
     info->entry = entry;
     if (is_linux) {
         if (info->initrd_filename) {
-            initrd_size = load_image_targphys(info->initrd_filename,
-                                              info->initrd_start,
-                                              info->ram_size -
-                                              info->initrd_start);
+            initrd_size = load_ramdisk(info->initrd_filename,
+                                       info->initrd_start,
+                                       info->ram_size -
+                                       info->initrd_start);
+            if (initrd_size < 0) {
+                initrd_size = load_image_targphys(info->initrd_filename,
+                                                  info->initrd_start,
+                                                  info->ram_size -
+                                                  info->initrd_start);
+            }
             if (initrd_size < 0) {
                 fprintf(stderr, "qemu: could not load initrd '%s'\n",
                         info->initrd_filename);