From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33013) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UwpbP-000560-FE for qemu-devel@nongnu.org; Wed, 10 Jul 2013 04:18:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UwpbK-0001CE-VT for qemu-devel@nongnu.org; Wed, 10 Jul 2013 04:18:19 -0400 Received: from mail-wg0-f49.google.com ([74.125.82.49]:56072) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UwpbK-0001C6-PV for qemu-devel@nongnu.org; Wed, 10 Jul 2013 04:18:14 -0400 Received: by mail-wg0-f49.google.com with SMTP id a12so5789598wgh.16 for ; Wed, 10 Jul 2013 01:18:13 -0700 (PDT) Sender: Grant Likely From: Grant Likely Date: Wed, 10 Jul 2013 09:16:23 +0100 Message-Id: <1373444183-11557-1-git-send-email-grant.likely@linaro.org> Subject: [Qemu-devel] [PATCH v2] Make -kernel flag optional on ARM. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Grant Likely , Peter Maydell , qemu-devel@nongnu.org, patches@linaro.org Sometimes we want to boot the system via firmware instead of loading a kernel into ram with the -kernel parameter. This patch makes the -kernel parameter optional so that a bios image provided by the -pflash flag will be executed. For example: qemu-system-arm -M vexpress-a15 -pflash Note: Currently the file must be at least the size of the emulated flash device (ie 64M for VExpress) otherwise QEMU will silently not use the data. This will be fixed in a separate patch v2: just return if the kernel filename isn't provided Signed-off-by: Grant Likely Cc: Peter Maydell Cc: qemu-devel@nongnu.org --- hw/arm/boot.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/hw/arm/boot.c b/hw/arm/boot.c index 7c0090f..e702fd7 100644 --- a/hw/arm/boot.c +++ b/hw/arm/boot.c @@ -361,11 +361,8 @@ void arm_load_kernel(ARMCPU *cpu, struct arm_boot_info *info) int big_endian; QemuOpts *machine_opts; - /* Load the kernel. */ - if (!info->kernel_filename) { - fprintf(stderr, "Kernel image must be specified\n"); - exit(1); - } + if (!info->kernel_filename) + return; machine_opts = qemu_opts_find(qemu_find_opts("machine"), 0); if (machine_opts) { -- 1.8.1.2