From 2f6c45eb6870989372d62afa365380aa44448bf3 Mon Sep 17 00:00:00 2001
From: Andre Przywara <andre.przywara@arm.com>
Date: Mon, 10 Oct 2022 18:01:21 +0100
Subject: [PATCH] qfw: return failure when no kernel could be loaded

When we try to load a kernel via the QEMU firmware device, we currently
"return -1;" if no kernel was specified on the QEMU command line. This
leads to the usage output, which is confusing (since nothing on the
command line was really wrong), but also somewhat hides the actual error
message.

Return CMD_RET_FAILURE (1), as it's a proper error, and make the message
more clear that this is not only a "warning".

This helps to call this command in boot scripts, and to gracefully
continue if this doesn't work.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
 cmd/qfw.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/cmd/qfw.c b/cmd/qfw.c
index c61001b771..95ddc4b79e 100644
--- a/cmd/qfw.c
+++ b/cmd/qfw.c
@@ -26,8 +26,8 @@ static int qemu_fwcfg_cmd_setup_kernel(void *load_addr, void *initrd_addr)
 	qfw_read_entry(qfw_dev, FW_CFG_KERNEL_SIZE, 4, &kernel_size);
 
 	if (kernel_size == 0) {
-		printf("warning: no kernel available\n");
-		return -1;
+		printf("fatal: no kernel available\n");
+		return CMD_RET_FAILURE;
 	}
 
 	data_addr = load_addr;
-- 
2.39.5