[PATCH] 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 christian.gmeiner@gmail.com --- drivers/timer/omap-timer.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)
diff --git a/drivers/timer/omap-timer.c b/drivers/timer/omap-timer.c index 721e385fd1..25a6108fef 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,

Hi
Gentle ping.
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 christian.gmeiner@gmail.com
drivers/timer/omap-timer.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)
diff --git a/drivers/timer/omap-timer.c b/drivers/timer/omap-timer.c index 721e385fd1..25a6108fef 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, -- 2.33.1

On Thu, Dec 16, 2021 at 10:57:29AM +0100, Christian Gmeiner wrote:
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 christian.gmeiner@gmail.com
Applied to u-boot/master, thanks!
participants (2)
-
Christian Gmeiner
-
Tom Rini