Move bootstage timer out of lib/time.c
authorSimon Glass <sjg@chromium.org>
Thu, 5 Apr 2012 12:05:17 +0000 (12:05 +0000)
committerAnatolij Gustschin <agust@denx.de>
Tue, 10 Apr 2012 21:35:32 +0000 (23:35 +0200)
The standalone example does not have get_timer() defined, so we cannot
rely on it being available.

Move the timer function into boootstage.c to avoid this problem.

This corrects a build breakage for the standalone example on some boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Matthias Fuchs <matthias.fuchs@esd.eu>
common/bootstage.c
include/bootstage.h
include/common.h
lib/time.c

index d2bbe635e8e0ed8e27644885a56f4b3d0cfb3ed5..4e01d92076fbec7e132998ff94e237cdd64c3307 100644 (file)
@@ -156,3 +156,20 @@ void bootstage_report(void)
                        "- please increase CONFIG_BOOTSTAGE_USER_COUNT\n",
                       next_id - BOOTSTAGE_ID_COUNT);
 }
+
+ulong __timer_get_boot_us(void)
+{
+       static ulong base_time;
+
+       /*
+        * We can't implement this properly. Return 0 on the first call and
+        * larger values after that.
+        */
+       if (base_time)
+               return get_timer(base_time) * 1000;
+       base_time = get_timer(0);
+       return 0;
+}
+
+ulong timer_get_boot_us(void)
+       __attribute__((weak, alias("__timer_get_boot_us")));
index 06ab2c8ef0c8c358703cfd6a36f84001689dbf97..a00053888f6f489ac57bb92e955508013f55be71 100644 (file)
@@ -203,6 +203,13 @@ enum bootstage_id {
        BOOTSTAGE_ID_ALLOC,
 };
 
+/*
+ * Return the time since boot in microseconds, This is needed for bootstage
+ * and should be defined in CPU- or board-specific code. If undefined then
+ * millisecond resolution will be used (the standard get_timer()).
+ */
+ulong timer_get_boot_us(void);
+
 /*
  * Board code can implement show_boot_progress() if needed.
  *
index 74d97046a0e5242c330dd9fd923e492dde2b8349..4b5841ef47015925cd78cebe5c2e0c07ac8445af 100644 (file)
@@ -206,13 +206,6 @@ typedef void (interrupt_handler_t)(void *);
 
 #endif /* CONFIG_SERIAL_MULTI */
 
-/*
- * Return the time since boot in microseconds, This is needed for bootstage
- * and should be defined in CPU- or board-specific code. If undefined then
- * millisecond resolution will be used (the standard get_timer()).
- */
-ulong timer_get_boot_us(void);
-
 /*
  * General Purpose Utilities
  */
index 69edc3d39b2563a367e03b2e410d4946fe3b0ca6..6e2937b8e726d4f2ffc009d91f6f4ff53a432c6f 100644 (file)
@@ -47,20 +47,3 @@ void mdelay(unsigned long msec)
        while (msec--)
                udelay(1000);
 }
-
-ulong __timer_get_boot_us(void)
-{
-       static ulong base_time;
-
-       /*
-        * We can't implement this properly. Return 0 on the first call and
-        * larger values after that.
-        */
-       if (base_time)
-               return get_timer(base_time) * 1000;
-       base_time = get_timer(0);
-       return 0;
-}
-
-ulong timer_get_boot_us(void)
-       __attribute__((weak, alias("__timer_get_boot_us")));