From: Jun Nie Date: Thu, 21 Jul 2022 10:30:05 +0000 (+0800) Subject: imx: syscounter: support timer_get_boot_us X-Git-Url: http://git.dujemihanovic.xyz/%22http:/www.sics.se/static/git-favicon.png?a=commitdiff_plain;h=651478777ba3905bc36764fc6c996e2b38ecb8aa;p=u-boot.git imx: syscounter: support timer_get_boot_us With supporting timer_get_boot_us, we can profile boot up time with below configs and function bootstage_mark_name(). CONFIG_BOOTSTAGE=y CONFIG_BOOTSTAGE_REPORT=y CONFIG_CMD_BOOTSTAGE=y Signed-off-by: Jun Nie Acked-by: Shawn Guo Reviewed-by: Fabio Estevam --- diff --git a/arch/arm/mach-imx/syscounter.c b/arch/arm/mach-imx/syscounter.c index 7c02e199a3..df478a2326 100644 --- a/arch/arm/mach-imx/syscounter.c +++ b/arch/arm/mach-imx/syscounter.c @@ -79,6 +79,7 @@ int timer_init(void) gd->arch.tbl = 0; gd->arch.tbu = 0; + gd->arch.timer_rate_hz = freq; return 0; } #endif @@ -100,6 +101,14 @@ ulong get_timer(ulong base) return tick_to_time(get_ticks()) - base; } +ulong timer_get_boot_us(void) +{ + if (!gd->arch.timer_rate_hz) + timer_init(); + + return tick_to_time(get_ticks()); +} + void __udelay(unsigned long usec) { unsigned long long tmp;