MX28: Fix get_timer() / get_tbclk() issue

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Detlev Zundel <dzu@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <festevam@gmail.com>
This commit is contained in:
Marek Vasut 2012-02-07 06:47:31 +00:00 committed by Albert ARIBAUD
parent 61698fd563
commit ff250f3ed8

View file

@ -82,7 +82,7 @@ int timer_init(void)
return 0; return 0;
} }
ulong get_timer(ulong base) unsigned long long get_ticks(void)
{ {
struct mx28_timrot_regs *timrot_regs = struct mx28_timrot_regs *timrot_regs =
(struct mx28_timrot_regs *)MXS_TIMROT_BASE; (struct mx28_timrot_regs *)MXS_TIMROT_BASE;
@ -103,7 +103,17 @@ ulong get_timer(ulong base)
} }
lastdec = now; lastdec = now;
return tick_to_time(timestamp) - base; return timestamp;
}
ulong get_timer_masked(void)
{
return tick_to_time(get_ticks());
}
ulong get_timer(ulong base)
{
return get_timer_masked() - base;
} }
/* We use the HW_DIGCTL_MICROSECONDS register for sub-millisecond timer. */ /* We use the HW_DIGCTL_MICROSECONDS register for sub-millisecond timer. */
@ -139,3 +149,8 @@ void __udelay(unsigned long usec)
old = new; old = new;
} }
} }
ulong get_tbclk(void)
{
return MX28_INCREMENTER_HZ;
}