diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2013-02-04 15:49:00 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2013-02-04 15:49:00 +0100 |
commit | da5fe0ba470283b384760c4976815fc20c1d45bd (patch) | |
tree | 11f2a08de885570d5d8c453f0c8b384427c666c0 /commands/reset.c | |
parent | aacd51bfd2d20138b6f9c549fb4f1aa66e88243b (diff) | |
parent | 195310fd7b48e2c1198f216f9b4122d8f63e620e (diff) | |
download | barebox-da5fe0ba470283b384760c4976815fc20c1d45bd.tar.gz barebox-da5fe0ba470283b384760c4976815fc20c1d45bd.tar.xz |
Merge branch 'for-next/misc'
Diffstat (limited to 'commands/reset.c')
-rw-r--r-- | commands/reset.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/commands/reset.c b/commands/reset.c index 835926b270..79885f4afc 100644 --- a/commands/reset.c +++ b/commands/reset.c @@ -20,17 +20,40 @@ #include <common.h> #include <command.h> #include <complete.h> +#include <getopt.h> static int cmd_reset(int argc, char *argv[]) { + int opt, shutdown_flag; + + shutdown_flag = 1; + + while ((opt = getopt(argc, argv, "f")) > 0) { + switch (opt) { + case 'f': + shutdown_flag = 0; + break; + } + } + + if (shutdown_flag) + shutdown_barebox(); + reset_cpu(0); /* Not reached */ return 1; } +BAREBOX_CMD_HELP_START(reset) +BAREBOX_CMD_HELP_USAGE("reset [-f]\n") +BAREBOX_CMD_HELP_SHORT("Perform RESET of the CPU.\n") +BAREBOX_CMD_HELP_OPT("-f", "force RESET, don't call shutdown\n") +BAREBOX_CMD_HELP_END + BAREBOX_CMD_START(reset) .cmd = cmd_reset, .usage = "Perform RESET of the CPU", + BAREBOX_CMD_HELP(cmd_reset_help) BAREBOX_CMD_COMPLETE(empty_complete) BAREBOX_CMD_END |