Revert "Start the deprecation process for generic board"
[oweals/u-boot.git] / common / main.c
index fcce0f3b4f598896173921a9f28b046f5b16ec82..8b6f274fa25f723fd2553c1c61a2a32606a90f1a 100644 (file)
@@ -6,23 +6,7 @@
  * (C) Copyright 2005
  * JinHua Luo, GuangDong Linux Center, <luo.jinhua@gd-linux.com>
  *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
+ * SPDX-License-Identifier:    GPL-2.0+
  */
 
 /* #define     DEBUG   */
@@ -53,6 +37,11 @@ void show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progre
 #define debug_parser(fmt, args...)             \
        debug_cond(DEBUG_PARSER, fmt, ##args)
 
+#ifndef DEBUG_BOOTKEYS
+#define DEBUG_BOOTKEYS 0
+#endif
+#define debug_bootkeys(fmt, args...)           \
+       debug_cond(DEBUG_BOOTKEYS, fmt, ##args)
 
 char        console_buffer[CONFIG_SYS_CBSIZE + 1];     /* console I/O buffer   */
 
@@ -138,11 +127,9 @@ static int abortboot_keyed(int bootdelay)
                presskey_max = presskey_max > delaykey[i].len ?
                                    presskey_max : delaykey[i].len;
 
-#  if DEBUG_BOOTKEYS
-               printf("%s key:<%s>\n",
-                      delaykey[i].retry ? "delay" : "stop",
-                      delaykey[i].str ? delaykey[i].str : "NULL");
-#  endif
+               debug_bootkeys("%s key:<%s>\n",
+                              delaykey[i].retry ? "delay" : "stop",
+                              delaykey[i].str ? delaykey[i].str : "NULL");
        }
 
        /* In order to keep up with incoming data, check timeout only
@@ -167,10 +154,9 @@ static int abortboot_keyed(int bootdelay)
                            memcmp (presskey + presskey_len - delaykey[i].len,
                                    delaykey[i].str,
                                    delaykey[i].len) == 0) {
-#  if DEBUG_BOOTKEYS
-                               printf("got %skey\n",
-                                      delaykey[i].retry ? "delay" : "stop");
-#  endif
+                               debug_bootkeys("got %skey\n",
+                                              delaykey[i].retry ? "delay" :
+                                              "stop");
 
 #  ifdef CONFIG_BOOT_RETRY_TIME
                                /* don't retry auto boot */
@@ -182,10 +168,8 @@ static int abortboot_keyed(int bootdelay)
                }
        } while (!abort && get_ticks() <= etime);
 
-#  if DEBUG_BOOTKEYS
        if (!abort)
-               puts("key timeout\n");
-#  endif
+               debug_bootkeys("key timeout\n");
 
 #ifdef CONFIG_SILENT_CONSOLE
        if (abort)
@@ -358,6 +342,11 @@ static void process_boot_delay(void)
        s = getenv ("bootdelay");
        bootdelay = s ? (int)simple_strtol(s, NULL, 10) : CONFIG_BOOTDELAY;
 
+#ifdef CONFIG_OF_CONTROL
+       bootdelay = fdtdec_get_config_int(gd->fdt_blob, "bootdelay",
+                       bootdelay);
+#endif
+
        debug ("### main_loop entered: bootdelay=%d\n\n", bootdelay);
 
 #if defined(CONFIG_MENU_SHOW)
@@ -376,7 +365,7 @@ static void process_boot_delay(void)
 #ifdef CONFIG_BOOTCOUNT_LIMIT
        if (bootlimit && (bootcount > bootlimit)) {
                printf ("Warning: Bootlimit (%u) exceeded. Using altbootcmd.\n",
-                       (unsigned)bootlimit);
+                       (unsigned)bootlimit);
                s = getenv ("altbootcmd");
        }
        else
@@ -403,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
        }