aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorHeinrich Schuchardt2024-03-16 10:36:43 +0100
committerHeinrich Schuchardt2024-03-21 07:28:43 +0100
commit46e5dd661c82a99b9ac8d302cbbc575f74b6b08b (patch)
tree45d51d56292750d61fd7b304525ad4f7716cd0f8 /cmd
parent6f90a05a04d8377ae85f9aba8fc03955da72eba0 (diff)
cmd: bootefi: Don't show usage help if EFI binary fails.
If an EFI binary returns an error code EFI_INVALID_PARAMETER, we show the usage help for the bootefi command: Shell> exit 0x8000000000000002 ## Application failed, r = 2 bootefi - Boots an EFI payload from memory Usage: bootefi <image address>[:<image size>] [<fdt address>] - boot EFI payload bootefi bootmgr [fdt address] - load and boot EFI payload based on BootOrder/BootXXXX variables. If specified, the device tree located at <fdt address> gets exposed as EFI configuration table. This makes no sense. Fixes: 296faf4f7ef1 ("cmd: bootefi: re-organize do_bootefi()") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Diffstat (limited to 'cmd')
-rw-r--r--cmd/bootefi.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/cmd/bootefi.c b/cmd/bootefi.c
index 9cf9027bf40..b509440cde0 100644
--- a/cmd/bootefi.c
+++ b/cmd/bootefi.c
@@ -154,9 +154,7 @@ static int do_bootefi(struct cmd_tbl *cmdtp, int flag, int argc,
!strcmp(argv[1], "bootmgr")) {
ret = efi_bootmgr_run(fdt);
- if (ret == EFI_INVALID_PARAMETER)
- return CMD_RET_USAGE;
- else if (ret)
+ if (ret != EFI_SUCCESS)
return CMD_RET_FAILURE;
return CMD_RET_SUCCESS;
@@ -218,9 +216,7 @@ static int do_bootefi(struct cmd_tbl *cmdtp, int flag, int argc,
ret = efi_binary_run(image_buf, size, fdt);
- if (ret == EFI_INVALID_PARAMETER)
- return CMD_RET_USAGE;
- else if (ret)
+ if (ret != EFI_SUCCESS)
return CMD_RET_FAILURE;
return CMD_RET_SUCCESS;