iotrace: move record definitons to header file
[oweals/u-boot.git] / common / autoboot.c
index 2eef7a04cc732fd0b250c64583cad09d77d40691..94133eaeda782eeccbc0ac63a8581552dc7893c3 100644 (file)
@@ -1,8 +1,7 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * (C) Copyright 2000
  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #include <common.h>
@@ -14,6 +13,7 @@
 #include <menu.h>
 #include <post.h>
 #include <u-boot/sha256.h>
+#include <bootcount.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -291,18 +291,8 @@ const char *bootdelay_process(void)
 {
        char *s;
        int bootdelay;
-#ifdef CONFIG_BOOTCOUNT_LIMIT
-       unsigned long bootcount = 0;
-       unsigned long bootlimit = 0;
-#endif /* CONFIG_BOOTCOUNT_LIMIT */
-
-#ifdef CONFIG_BOOTCOUNT_LIMIT
-       bootcount = bootcount_load();
-       bootcount++;
-       bootcount_store(bootcount);
-       env_set_ulong("bootcount", bootcount);
-       bootlimit = env_get_ulong("bootlimit", 10, 0);
-#endif /* CONFIG_BOOTCOUNT_LIMIT */
+
+       bootcount_inc();
 
        s = env_get("bootdelay");
        bootdelay = s ? (int)simple_strtol(s, NULL, 10) : CONFIG_BOOTDELAY;
@@ -324,13 +314,9 @@ const char *bootdelay_process(void)
                s = env_get("failbootcmd");
        } else
 #endif /* CONFIG_POST */
-#ifdef CONFIG_BOOTCOUNT_LIMIT
-       if (bootlimit && (bootcount > bootlimit)) {
-               printf("Warning: Bootlimit (%u) exceeded. Using altbootcmd.\n",
-                      (unsigned)bootlimit);
+       if (bootcount_error())
                s = env_get("altbootcmd");
-       } else
-#endif /* CONFIG_BOOTCOUNT_LIMIT */
+       else
                s = env_get("bootcmd");
 
        process_fdt_options(gd->fdt_blob);