]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
cmd: add a panic command
authorHeiko Stuebner <heiko.stuebner@theobroma-systems.com>
Mon, 29 Jun 2020 23:05:45 +0000 (01:05 +0200)
committerTom Rini <trini@konsulko.com>
Wed, 8 Jul 2020 21:21:46 +0000 (17:21 -0400)
Even in boot scripts it may be needed to "panic" when all options
are exhausted and the device specification specifies hanging
instead of resetting the board.

So add a new panic command that just wraps around the core panic
call in U-Boot and can take an optional message.

Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
cmd/Makefile
cmd/panic.c [new file with mode: 0644]

index 006075a04812d0d1bb7bf21359db486e2d6371c5..7008dd42dc18b8a353ab281f314db8249982e8a8 100644 (file)
@@ -8,6 +8,7 @@ ifndef CONFIG_SPL_BUILD
 obj-y += boot.o
 obj-$(CONFIG_CMD_BOOTM) += bootm.o
 obj-y += help.o
+obj-y += panic.o
 obj-y += version.o
 
 # command
diff --git a/cmd/panic.c b/cmd/panic.c
new file mode 100644 (file)
index 0000000..f13b3f0
--- /dev/null
@@ -0,0 +1,23 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (c) 2020 Theobroma Systems Design und Consulting GmbH
+ */
+
+#include <common.h>
+#include <command.h>
+
+static int do_panic(struct cmd_tbl *cmdtp, int flag, int argc,
+                   char * const argv[])
+{
+       char *text = (argc < 2) ? "" : argv[1];
+
+       panic(text);
+
+       return CMD_RET_SUCCESS;
+}
+
+U_BOOT_CMD(
+       panic,  2,      1,      do_panic,
+       "Panic with optional message",
+       "[message]"
+);