summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2013-10-25 15:44:38 +0100
committerEdgar E. Iglesias <edgar.iglesias@gmail.com>2013-10-31 14:00:16 +0100
commit9546dbabd5f6ff199ffd7741dfd57b8bff723bd1 (patch)
treefaa8ca0aa2c5d690d0467b64eed8c3aa3cc5fffd
parentec426ff808cd421036f81ab34c0d5884743982aa (diff)
downloadfocaccia-qemu-9546dbabd5f6ff199ffd7741dfd57b8bff723bd1.tar.gz
focaccia-qemu-9546dbabd5f6ff199ffd7741dfd57b8bff723bd1.zip
hw/arm/boot: Make user not specifying a kernel not an error
Typically ARM boards will have some kind of flash which might contain
a boot ROM; it's therefore a valid use case to provide only an
image for the boot ROM and not require QEMU's internal boot loader
at all. Remove the fatal error if -kernel isn't specified.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1379980897-21277-2-git-send-email-peter.maydell@linaro.org
-rw-r--r--hw/arm/boot.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/hw/arm/boot.c b/hw/arm/boot.c
index 1e313afe8d..583ec7992e 100644
--- a/hw/arm/boot.c
+++ b/hw/arm/boot.c
@@ -354,8 +354,10 @@ void arm_load_kernel(ARMCPU *cpu, struct arm_boot_info *info)
 
     /* Load the kernel.  */
     if (!info->kernel_filename) {
-        fprintf(stderr, "Kernel image must be specified\n");
-        exit(1);
+        /* If no kernel specified, do nothing; we will start from address 0
+         * (typically a boot ROM image) in the same way as hardware.
+         */
+        return;
     }
 
     info->dtb_filename = qemu_opt_get(qemu_get_machine_opts(), "dtb");