[PATCH 10/10] bootstage/timer: Treewide remove timer_get_boot_us()
Stefan Roese
sr at denx.de
Wed Sep 21 16:06:25 CEST 2022
With the bootstage migration to timer_get_us() provided via
CONFIG_TIMER_EARLY timer_get_boot_us() is superfluous now. This patch
removes all occurances from the code.
Signed-off-by: Stefan Roese <sr at denx.de>
Cc: Patrick Delaunay <patrick.delaunay at st.com>
Cc: Jun Nie <jun.nie at linaro.org>
Cc: Shawn Guo <shawn.guo at linaro.org>
Cc: Fabio Estevam <festevam at denx.de>
Cc: Stefano Babic <sbabic at denx.de>
Cc: Michal Simek <michal.simek at xilinx.com>
Cc: Andre Przywara <andre.przywara at arm.com>
Cc: Christian Gmeiner <christian.gmeiner at gmail.com>
Cc: Dario Binacchi <dariobin at libero.it>
Cc: Kever Yang <kever.yang at rock-chips.com>
Cc: Philipp Tomsich <philipp.tomsich at theobroma-systems.com>
---
arch/arm/cpu/armv7/arch_timer.c | 9 ------
arch/arm/cpu/armv8/generic_timer.c | 7 -----
arch/arm/mach-imx/syscounter.c | 8 ------
arch/sandbox/cpu/cpu.c | 11 -------
drivers/timer/cadence-ttc.c | 22 --------------
drivers/timer/omap-timer.c | 22 --------------
drivers/timer/orion-timer.c | 8 ------
drivers/timer/rockchip_timer.c | 46 ------------------------------
drivers/timer/tsc_timer.c | 5 ----
lib/time.c | 20 -------------
10 files changed, 158 deletions(-)
diff --git a/arch/arm/cpu/armv7/arch_timer.c b/arch/arm/cpu/armv7/arch_timer.c
index 80cfaf2d09a4..375b7e2797ef 100644
--- a/arch/arm/cpu/armv7/arch_timer.c
+++ b/arch/arm/cpu/armv7/arch_timer.c
@@ -49,15 +49,6 @@ unsigned long long get_ticks(void)
return (((unsigned long long)gd->arch.tbu) << 32) | gd->arch.tbl;
}
-
-ulong timer_get_boot_us(void)
-{
- if (!gd->arch.timer_rate_hz)
- timer_init();
-
- return lldiv(get_ticks(), gd->arch.timer_rate_hz / 1000000);
-}
-
ulong get_tbclk(void)
{
return gd->arch.timer_rate_hz;
diff --git a/arch/arm/cpu/armv8/generic_timer.c b/arch/arm/cpu/armv8/generic_timer.c
index 01a1a167311e..680c547eaf7d 100644
--- a/arch/arm/cpu/armv8/generic_timer.c
+++ b/arch/arm/cpu/armv8/generic_timer.c
@@ -109,13 +109,6 @@ unsigned long usec2ticks(unsigned long usec)
return ticks;
}
-ulong timer_get_boot_us(void)
-{
- u64 val = get_ticks() * 1000000;
-
- return val / get_tbclk();
-}
-
unsigned long notrace timer_early_get_rate(void)
{
return get_tbclk();
diff --git a/arch/arm/mach-imx/syscounter.c b/arch/arm/mach-imx/syscounter.c
index dbe55ee3913d..d592329c163e 100644
--- a/arch/arm/mach-imx/syscounter.c
+++ b/arch/arm/mach-imx/syscounter.c
@@ -101,14 +101,6 @@ 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());
-}
-
unsigned long notrace timer_early_get_rate(void)
{
if (!gd->arch.timer_rate_hz)
diff --git a/arch/sandbox/cpu/cpu.c b/arch/sandbox/cpu/cpu.c
index d077948dd7bd..9c99839a1044 100644
--- a/arch/sandbox/cpu/cpu.c
+++ b/arch/sandbox/cpu/cpu.c
@@ -362,14 +362,3 @@ done:
fail:
return NULL;
}
-
-ulong timer_get_boot_us(void)
-{
- static uint64_t base_count;
- uint64_t count = os_get_nsec();
-
- if (!base_count)
- base_count = count;
-
- return (count - base_count) / 1000;
-}
diff --git a/drivers/timer/cadence-ttc.c b/drivers/timer/cadence-ttc.c
index e26c7923a140..39b97825318b 100644
--- a/drivers/timer/cadence-ttc.c
+++ b/drivers/timer/cadence-ttc.c
@@ -36,28 +36,6 @@ struct cadence_ttc_priv {
struct cadence_ttc_regs *regs;
};
-#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
-
unsigned long notrace timer_early_get_rate(void)
{
return 1;
diff --git a/drivers/timer/omap-timer.c b/drivers/timer/omap-timer.c
index 315dbb634aa7..c680c4487154 100644
--- a/drivers/timer/omap-timer.c
+++ b/drivers/timer/omap-timer.c
@@ -84,28 +84,6 @@ 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
-
unsigned long notrace timer_early_get_rate(void)
{
return 1;
diff --git a/drivers/timer/orion-timer.c b/drivers/timer/orion-timer.c
index d0eab3ce781d..c0eadff81cf2 100644
--- a/drivers/timer/orion-timer.c
+++ b/drivers/timer/orion-timer.c
@@ -86,14 +86,6 @@ u64 notrace timer_early_get_count(void)
return orion_timer_get_count((void *)MVEBU_TIMER_BASE);
}
-ulong timer_get_boot_us(void)
-{
- u64 ticks;
-
- ticks = timer_early_get_count();
- return lldiv(ticks * 1000, timer_early_get_rate());
-}
-
/* DM timer functions */
static uint64_t dm_orion_timer_get_count(struct udevice *dev)
{
diff --git a/drivers/timer/rockchip_timer.c b/drivers/timer/rockchip_timer.c
index 6e3483edce72..7bf79d5f073e 100644
--- a/drivers/timer/rockchip_timer.c
+++ b/drivers/timer/rockchip_timer.c
@@ -41,52 +41,6 @@ static inline int64_t rockchip_timer_get_curr_value(struct rk_timer *timer)
return cntr;
}
-#if CONFIG_IS_ENABLED(BOOTSTAGE)
-ulong timer_get_boot_us(void)
-{
- uint64_t ticks = 0;
- uint32_t rate;
- uint64_t 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 if (CONFIG_IS_ENABLED(OF_REAL) && ret == -EAGAIN) {
- /* We have been called so early that the DM is not ready,... */
- ofnode node = offset_to_ofnode(-1);
- struct rk_timer *timer = NULL;
-
- /*
- * ... so we try to access the raw timer, if it is specified
- * via the tick-timer property in /chosen.
- */
- node = ofnode_get_chosen_node("tick-timer");
- if (!ofnode_valid(node)) {
- debug("%s: no /chosen/tick-timer\n", __func__);
- return 0;
- }
-
- timer = (struct rk_timer *)ofnode_get_addr(node);
-
- /* This timer is down-counting */
- ticks = ~0uLL - rockchip_timer_get_curr_value(timer);
- if (ofnode_read_u32(node, "clock-frequency", &rate)) {
- debug("%s: could not read clock-frequency\n", __func__);
- return 0;
- }
- } else {
- return 0;
- }
-
- us = (ticks * 1000) / rate;
- return us;
-}
-#endif
-
static u64 timer_early_get_count_rate(uint32_t *rate)
{
uint64_t ticks = 0;
diff --git a/drivers/timer/tsc_timer.c b/drivers/timer/tsc_timer.c
index 192c7b71a5a3..3cb2abed0c67 100644
--- a/drivers/timer/tsc_timer.c
+++ b/drivers/timer/tsc_timer.c
@@ -363,11 +363,6 @@ ulong notrace timer_get_us(void)
return get_ticks() / get_tbclk_mhz();
}
-ulong timer_get_boot_us(void)
-{
- return timer_get_us();
-}
-
void __udelay(unsigned long usec)
{
u64 now = get_ticks();
diff --git a/lib/time.c b/lib/time.c
index f3aaf472d103..7492b2bd9c62 100644
--- a/lib/time.c
+++ b/lib/time.c
@@ -42,26 +42,6 @@ unsigned long notrace timer_read_counter(void)
return readl(CONFIG_SYS_TIMER_COUNTER);
#endif
}
-
-ulong timer_get_boot_us(void)
-{
- ulong count = timer_read_counter();
-
-#ifdef CONFIG_SYS_TIMER_RATE
- const ulong timer_rate = CONFIG_SYS_TIMER_RATE;
-
- if (timer_rate == 1000000)
- return count;
- else if (timer_rate > 1000000)
- return lldiv(count, timer_rate / 1000000);
- else
- return (unsigned long long)count * 1000000 / timer_rate;
-#else
- /* Assume the counter is in microseconds */
- return count;
-#endif
-}
-
#else
extern unsigned long __weak timer_read_counter(void);
#endif
--
2.37.3
More information about the U-Boot
mailing list