From be70646ccc2d770fb1385c6a9f36e13995014436 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Tue, 20 Oct 2015 22:27:05 +0200 Subject: [PATCH] include/timer.h: Guard `timer_monotonic_get()` calls by `CONFIG_HAVE_MONOTONIC_TIMER` Some platforms do not have `timer_monotonic_get()` implemented. So only call `timer_monotonic_get()` if `CONFIG_HAVE_MONOTONIC_TIMER` is selected and set the times to 0 otherwise. Change-Id: If9cba4c0c17a7011aa357079d8fdd0aa47ad1b66 Signed-off-by: Paul Menzel Reviewed-on: http://review.coreboot.org/12105 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/include/timer.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/include/timer.h b/src/include/timer.h index aa5746dbdc..691d6fbab5 100644 --- a/src/include/timer.h +++ b/src/include/timer.h @@ -130,7 +130,11 @@ struct stopwatch { static inline void stopwatch_init(struct stopwatch *sw) { - timer_monotonic_get(&sw->start); + if (IS_ENABLED(CONFIG_HAVE_MONOTONIC_TIMER)) + timer_monotonic_get(&sw->start); + else + sw->start.microseconds = 0; + sw->current = sw->expires = sw->start; } @@ -150,7 +154,10 @@ static inline void stopwatch_init_msecs_expire(struct stopwatch *sw, long ms) */ static inline void stopwatch_tick(struct stopwatch *sw) { - timer_monotonic_get(&sw->current); + if (IS_ENABLED(CONFIG_HAVE_MONOTONIC_TIMER)) + timer_monotonic_get(&sw->current); + else + sw->current.microseconds = 0; } /*