@ -31,13 +31,16 @@
*/
# include <common.h>
# include <asm/io.h>
# include <asm/arch/bits.h>
# include <asm/arch/omap2420.h>
# define TIMER_CLOCK (CONFIG_SYS_CLK_FREQ / (2 << CONFIG_SYS_PTV))
# define TIMER_LOAD_VAL 0
/* macro to read the 32 bit timer */
# define READ_TIMER (*((volatile ulong *)(CONFIG_SYS_TIMERBASE+TCRR)))
# define READ_TIMER readl(CONFIG_SYS_TIMERBASE+TCRR) \
/ ( TIMER_CLOCK / CONFIG_SYS_HZ )
DECLARE_GLOBAL_DATA_PTR ;
@ -99,7 +102,8 @@ ulong get_timer_masked (void)
gd - > arch . tbl + = ( now - gd - > arch . lastinc ) ;
} else {
/* we have rollover of incrementer */
gd - > arch . tbl + = ( 0xFFFFFFFF - gd - > arch . lastinc ) + now ;
gd - > arch . tbl + = ( ( 0xFFFFFFFF / ( TIMER_CLOCK / CONFIG_SYS_HZ ) )
- gd - > arch . lastinc ) + now ;
}
gd - > arch . lastinc = now ;
return gd - > arch . tbl ;