autoboot: Rename CONFIG_MENUKEY to CONFIG_AUTOBOOT_MENUKEY
authorSimon Glass <sjg@chromium.org>
Sun, 21 Jul 2019 02:51:21 +0000 (20:51 -0600)
committerTom Rini <trini@konsulko.com>
Fri, 2 Aug 2019 15:19:14 +0000 (11:19 -0400)
Since this is part of the autoboot functionality, it makes sense to name
it with an AUTOBOOT prefix. No mainline boards use it so this should be
safe, and downstream boards will need to adjust.

Since this option is just an integer value, it really needs another option
to control whether the feature is enabled or not. Add a new
CONFIG_USE_AUTOBOOT_MENUKEY for that. This fits better with how things are
done with Kconfig, avoiding the need to use a specific value to disable
the feature.

Signed-off-by: Simon Glass <sjg@chromium.org>
cmd/Kconfig
common/autoboot.c
configs/socfpga_vining_fpga_defconfig
doc/README.autoboot
include/autoboot.h
scripts/config_whitelist.txt

index 2cbfc0f87ecd9bc92a4d8fd2d569f8d949393c06..8d2e0a9e4ec426430abaa537783f56af9e38b1c5 100644 (file)
@@ -153,6 +153,23 @@ config AUTOBOOT_STOP_STR_SHA256
          string / password matches a values that is encypted via
          a SHA256 hash and saved in the environment.
 
+config AUTOBOOT_USE_MENUKEY
+       bool "Allow a specify key to run a menu from the environment"
+       depends on !AUTOBOOT_KEYED
+       help
+         If a specific key is pressed to stop autoboot, then the commands in
+         the environment variable 'menucmd' are executed before boot starts.
+
+config AUTOBOOT_MENUKEY
+       int "ASCII value of boot key to show a menu"
+       default 0
+       depends on AUTOBOOT_USE_MENUKEY
+       help
+         If this key is pressed to stop autoboot, then the commands in the
+         environment variable 'menucmd' will be executed before boot starts.
+         For example, 33 means "!" in ASCII, so pressing ! at boot would take
+         this action.
+
 endmenu
 
 config BUILD_BIN2C
index a6071ab83911c9b2d449b8ead65bb295577e62b6..ad189a8ba286e8cfb92d24884e95a432de31d0bb 100644 (file)
@@ -224,7 +224,7 @@ static int abortboot_key_sequence(int bootdelay)
        return abort;
 }
 
-#ifdef CONFIG_MENUKEY
+#ifdef CONFIG_USE_AUTOBOOT_MENUKEY
 static int menukey;
 #endif
 
@@ -252,7 +252,7 @@ static int abortboot_single_key(int bootdelay)
                        if (tstc()) {   /* we got a key press   */
                                abort  = 1;     /* don't auto boot      */
                                bootdelay = 0;  /* no more delay        */
-# ifdef CONFIG_MENUKEY
+# ifdef CONFIG_USE_AUTOBOOT_MENUKEY
                                menukey = getc();
 # else
                                (void) getc();  /* consume input        */
@@ -358,11 +358,11 @@ void autoboot_command(const char *s)
 #endif
        }
 
-#ifdef CONFIG_MENUKEY
-       if (menukey == CONFIG_MENUKEY) {
+#ifdef CONFIG_USE_AUTOBOOT_MENUKEY
+       if (menukey == CONFIG_AUTOBOOT_MENUKEY) {
                s = env_get("menucmd");
                if (s)
                        run_command_list(s, -1, 0);
        }
-#endif /* CONFIG_MENUKEY */
+#endif /* CONFIG_USE_AUTOBOOT_MENUKEY */
 }
index 1a9323f822e09206536afa86dbea9fdc4ecaecf3..9e86a2370437de4f52fd4f9f20e37111049c57bf 100644 (file)
@@ -8,7 +8,7 @@ CONFIG_USE_BOOTARGS=y
 CONFIG_BOOTARGS="console=ttyS0,115200"
 # CONFIG_USE_BOOTCOMMAND is not set
 CONFIG_USE_PREBOOT=y
-CONFIG_PREBOOT="setenv hostname vining-${unit_serial} ; setenv PS1 "${unit_ident} (${unit_serial}) => " ; if gpio input 78 ; then setenv bootdelay 10 ; setenv boottype rcvr ; else setenv bootdelay 5 ; setenv boottype norm ; fi"
+CONFIG_PREBOOT="setenv hostname vining-${unit_serial} ; setenv PS1 \"${unit_ident} (${unit_serial}) => \" ; if gpio input 78 ; then setenv bootdelay 10 ; setenv boottype rcvr ; else setenv bootdelay 5 ; setenv boottype norm ; fi"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
index de35f3093df0156f0eb2cb467eae427cc4606fef..5e9a5e1cf7fe09367c19517e36988a66a88df868 100644 (file)
@@ -152,3 +152,11 @@ What they do
        (Only effective when CONFIG_BOOT_RETRY_TIME is also set)
        After the countdown timed out, the board will be reset to restart
        again.
+
+  CONFIG_AUTOBOOT_USE_MENUKEY
+  CONFIG_AUTOBOOT_MENUKEY
+
+       If this key is pressed to stop autoboot, then the commands in the
+       environment variable 'menucmd' will be executed before boot starts.
+       For example, 33 means "!" in ASCII, so pressing ! at boot would take
+       this action.
index 3ebd6f90e3cb7ee4e826f7531cbb3cc5fc2d60ce..ac8157e570440c2899bfc8f3959ea6ad1d646da5 100644 (file)
@@ -27,7 +27,7 @@ const char *bootdelay_process(void);
  * autoboot_command() - run the autoboot command
  *
  * If enabled, run the autoboot command returned from bootdelay_process().
- * Also do the CONFIG_MENUKEY processing if enabled.
+ * Also do the CONFIG_AUTOBOOT_MENUKEY processing if enabled.
  *
  * @cmd: Command to run
  */
index 28494411feb52d09f286172e0239afff59a3eaa4..3de5021e8fe1b31136cf26f4c67b3a07db8de081 100644 (file)
@@ -1140,7 +1140,6 @@ CONFIG_MEMSIZE_MASK
 CONFIG_MEM_HOLE_16M
 CONFIG_MEM_INIT_VALUE
 CONFIG_MEM_REMAP
-CONFIG_MENUKEY
 CONFIG_MENU_SHOW
 CONFIG_MFG_ENV_SETTINGS
 CONFIG_MIIM_ADDRESS