[U-Boot] [PATCH] lib: time: add weak timer_init() function

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 --- arch/arm/cpu/arm1176/bcm2835/timer.c | 5 ----- arch/arm/cpu/sa1100/timer.c | 5 ----- board/armltd/vexpress/vexpress_common.c | 5 ----- board/nvidia/common/board.c | 11 ----------- board/sandbox/sandbox/sandbox.c | 5 ----- lib/time.c | 5 +++++ 6 files changed, 5 insertions(+), 31 deletions(-)
diff --git a/arch/arm/cpu/arm1176/bcm2835/timer.c b/arch/arm/cpu/arm1176/bcm2835/timer.c index 2edd671..017907c 100644 --- a/arch/arm/cpu/arm1176/bcm2835/timer.c +++ b/arch/arm/cpu/arm1176/bcm2835/timer.c @@ -18,11 +18,6 @@ #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 = diff --git a/arch/arm/cpu/sa1100/timer.c b/arch/arm/cpu/sa1100/timer.c index 4b981e4..0a0006b 100644 --- a/arch/arm/cpu/sa1100/timer.c +++ b/arch/arm/cpu/sa1100/timer.c @@ -13,11 +13,6 @@ #include <common.h> #include <SA-1100.h>
-int timer_init (void) -{ - return 0; -} - ulong get_timer (ulong base) { return get_timer_masked (); diff --git a/board/armltd/vexpress/vexpress_common.c b/board/armltd/vexpress/vexpress_common.c index da5cb01..cb2de2f 100644 --- a/board/armltd/vexpress/vexpress_common.c +++ b/board/armltd/vexpress/vexpress_common.c @@ -119,11 +119,6 @@ void dram_init_banksize(void) 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 diff --git a/board/nvidia/common/board.c b/board/nvidia/common/board.c index 1972527..e650fed 100644 --- a/board/nvidia/common/board.c +++ b/board/nvidia/common/board.c @@ -48,17 +48,6 @@ const struct tegra_sysinfo sysinfo = { 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) { } diff --git a/board/sandbox/sandbox/sandbox.c b/board/sandbox/sandbox/sandbox.c index 65dcce8..95efaff 100644 --- a/board/sandbox/sandbox/sandbox.c +++ b/board/sandbox/sandbox/sandbox.c @@ -23,11 +23,6 @@ unsigned long timer_read_counter(void) return os_get_nsec() / 1000; }
-int timer_init(void) -{ - return 0; -} - int dram_init(void) { gd->ram_size = CONFIG_SYS_SDRAM_SIZE; diff --git a/lib/time.c b/lib/time.c index 8085aa4..73c3b6a 100644 --- a/lib/time.c +++ b/lib/time.c @@ -60,6 +60,11 @@ static unsigned long long notrace tick_to_time(uint64_t tick) return tick; }
+int __weak timer_init(void) +{ + return 0; +} + ulong __weak get_timer(ulong base) { return tick_to_time(get_ticks()) - base;

On Thu, Dec 19, 2013 at 03:06:12PM -0800, Darwin Rambo wrote:
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
Applied to u-boot/master, thanks!
participants (2)
-
Darwin Rambo
-
Tom Rini