From: Christian Gmeiner Date: Thu, 16 Dec 2021 09:57:29 +0000 (+0100) Subject: omap: timer: implement timer_get_boot_us X-Git-Tag: v2022.07~224^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e660cfad5339719721a96257090ae47bbc2abee6;p=platform%2Fkernel%2Fu-boot.git omap: timer: implement timer_get_boot_us To make the OMAP DM timer driver useful for the timing of bootstages, we need to implement timer_get_boot_us(..). Signed-off-by: Christian Gmeiner --- diff --git a/drivers/timer/omap-timer.c b/drivers/timer/omap-timer.c index 721e385..25a6108 100644 --- a/drivers/timer/omap-timer.c +++ b/drivers/timer/omap-timer.c @@ -83,6 +83,27 @@ static int omap_timer_of_to_plat(struct udevice *dev) return 0; } +#if CONFIG_IS_ENABLED(BOOTSTAGE) +ulong timer_get_boot_us(void) +{ + u64 ticks = 0; + u32 rate = 1; + u64 us; + int ret; + + ret = dm_timer_init(); + if (!ret) { + /* The timer is available */ + rate = timer_get_rate(gd->timer); + timer_get_count(gd->timer, &ticks); + } else { + return 0; + } + + us = (ticks * 1000) / rate; + return us; +} +#endif static const struct timer_ops omap_timer_ops = { .get_count = omap_timer_get_count,