If timer_init() is made a weak stub function, then it allows us to
remove several empty timer_init functions for those boards that
already have a timer initialized when u-boot starts. Architectures
that use the timer framework may also remove the need for timer.c.
Signed-off-by: Darwin Rambo <drambo@broadcom.com>
Reviewed-by: Tim Kryger <tim.kryger@linaro.org>
 #include <asm/io.h>
 #include <asm/arch/timer.h>
 
-int timer_init(void)
-{
-       return 0;
-}
-
 ulong get_timer_us(ulong base)
 {
        struct bcm2835_timer_regs *regs =
 
 #include <common.h>
 #include <SA-1100.h>
 
-int timer_init (void)
-{
-       return 0;
-}
-
 ulong get_timer (ulong base)
 {
        return get_timer_masked ();
 
                        get_ram_size((long *)PHYS_SDRAM_2, PHYS_SDRAM_2_SIZE);
 }
 
-int timer_init(void)
-{
-       return 0;
-}
-
 /*
  * Start timer:
  *    Setup a 32 bit timer, running at 1KHz
 
        CONFIG_TEGRA_BOARD_STRING
 };
 
-#ifndef CONFIG_SPL_BUILD
-/*
- * Routine: timer_init
- * Description: init the timestamp and lastinc value
- */
-int timer_init(void)
-{
-       return 0;
-}
-#endif
-
 void __pin_mux_usb(void)
 {
 }
 
        return os_get_nsec() / 1000;
 }
 
-int timer_init(void)
-{
-       return 0;
-}
-
 int dram_init(void)
 {
        gd->ram_size = CONFIG_SYS_SDRAM_SIZE;
 
        return tick;
 }
 
+int __weak timer_init(void)
+{
+       return 0;
+}
+
 ulong __weak get_timer(ulong base)
 {
        return tick_to_time(get_ticks()) - base;