
get_timer_masked() should return current timestamp, not current ticks from hardware register.
Tested on one custom board with NAND flash. Without this patch, NAND write always TIMEOUT because get_timer(0) return a big value.
This patch applies for u-boot-2010.06
Signed-off-by: Li Haibo hbli@sinocastel.com --- arch/arm/cpu/arm_cortexa8/mx51/timer.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/cpu/arm_cortexa8/mx51/timer.c b/arch/arm/cpu/arm_cortexa8/mx51/timer.c index 81c4a06..110edbf 100644 --- a/arch/arm/cpu/arm_cortexa8/mx51/timer.c +++ b/arch/arm/cpu/arm_cortexa8/mx51/timer.c @@ -89,7 +89,7 @@ ulong get_timer_masked(void) timestamp += ((0xFFFFFFFF / (CONFIG_MX51_CLK32 / CONFIG_SYS_HZ)) - lastinc) + val; lastinc = val; - return val; + return timestamp; }
ulong get_timer(ulong base)