aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Langsdorf <mark.langsdorf@calxeda.com>2013-09-10 15:20:23 -0500
committerTom Rini <trini@ti.com>2013-11-08 15:25:14 -0500
commit00ddacc1a1860bf777ba32ac0ece7a566c97bf48 (patch)
tree0bdeb7527cafaacaf566a0b799561fa5fd90de33
parent212d7dadcd6465d342b937bf095114c0a8ced048 (diff)
downloadu-boot-midas-00ddacc1a1860bf777ba32ac0ece7a566c97bf48.tar.gz
u-boot-midas-00ddacc1a1860bf777ba32ac0ece7a566c97bf48.tar.bz2
u-boot-midas-00ddacc1a1860bf777ba32ac0ece7a566c97bf48.zip
autoboot: add an option to override keyed autoboot
As originally implemented, setting the AUTOBOOT_KEYED config option will prevent users from breaking into the autoboot script with ctrl-c. Restore that option with a new config symbol. Signed-off-by: Mark Langsdorf <mark.langsdorf@calxeda.com>
-rw-r--r--common/main.c4
-rw-r--r--doc/README.autoboot8
2 files changed, 10 insertions, 2 deletions
diff --git a/common/main.c b/common/main.c
index 6f475f0cca..8b6f274fa2 100644
--- a/common/main.c
+++ b/common/main.c
@@ -392,13 +392,13 @@ static void process_boot_delay(void)
debug ("### main_loop: bootcmd=\"%s\"\n", s ? s : "<UNDEFINED>");
if (bootdelay != -1 && s && !abortboot(bootdelay)) {
-#ifdef CONFIG_AUTOBOOT_KEYED
+#if defined(CONFIG_AUTOBOOT_KEYED) && !defined(CONFIG_AUTOBOOT_KEYED_CTRLC)
int prev = disable_ctrlc(1); /* disable Control C checking */
#endif
run_command_list(s, -1, 0);
-#ifdef CONFIG_AUTOBOOT_KEYED
+#if defined(CONFIG_AUTOBOOT_KEYED) && !defined(CONFIG_AUTOBOOT_KEYED_CTRLC)
disable_ctrlc(prev); /* restore Control C checking */
#endif
}
diff --git a/doc/README.autoboot b/doc/README.autoboot
index ff58a79e49..14e3660dd8 100644
--- a/doc/README.autoboot
+++ b/doc/README.autoboot
@@ -74,6 +74,7 @@ What they do
"bootretry" is >= 0.
CONFIG_AUTOBOOT_KEYED
+ CONFIG_AUTOBOOT_KEYED_CTRLC
CONFIG_AUTOBOOT_PROMPT
CONFIG_AUTOBOOT_DELAY_STR
CONFIG_AUTOBOOT_STOP_STR
@@ -135,6 +136,13 @@ What they do
environment variable you can specify a second, alternate
string (which allows you to have two "password" strings).
+ The CONFIG_AUTOBOOT_KEYED_CTRLC #define allows for the boot
+ sequence to be interrupted by ctrl-c, in addition to the
+ "bootdelaykey" and "bootstopkey". Setting this variable
+ provides an escape sequence from the limited "password"
+ strings.
+
+
CONFIG_ZERO_BOOTDELAY_CHECK
If this option is defined, you can stop the autoboot process