@ -93,31 +93,10 @@ int timer_init (void)
/*
/*
* timer without interrupts
* timer without interrupts
*/
*/
ulong get_timer ( ulong base_ticks )
{
return get_timer_masked ( ) - base_ticks ;
}
/* delay usec useconds */
void __udelay ( unsigned long usec )
{
ulong tmo , tmp ;
/* Convert to U-Boot ticks */
tmo = usec * CONFIG_SYS_HZ ;
tmo / = ( 1000000L ) ;
tmp = get_timer_masked ( ) ; /* get current timestamp */
tmo + = tmp ; /* form target timestamp */
while ( get_timer_masked ( ) < tmo ) { /* loop till event */
/*NOP*/ ;
}
}
/* converts the timer reading to U-Boot ticks */
/* converts the timer reading to U-Boot ticks */
/* the timestamp is the number of ticks since reset */
/* the timestamp is the number of ticks since reset */
ulong get_timer_masked ( void )
static ulong get_timer_masked ( void )
{
{
/* get current count */
/* get current count */
unsigned long long now = READ_TIMER ;
unsigned long long now = READ_TIMER ;
@ -138,6 +117,28 @@ ulong get_timer_masked (void)
return timestamp ;
return timestamp ;
}
}
ulong get_timer ( ulong base_ticks )
{
return get_timer_masked ( ) - base_ticks ;
}
/* delay usec useconds */
void __udelay ( unsigned long usec )
{
ulong tmo , tmp ;
/* Convert to U-Boot ticks */
tmo = usec * CONFIG_SYS_HZ ;
tmo / = ( 1000000L ) ;
tmp = get_timer_masked ( ) ; /* get current timestamp */
tmo + = tmp ; /* form target timestamp */
while ( get_timer_masked ( ) < tmo ) { /* loop till event */
/*NOP*/ ;
}
}
/*
/*
* This function is derived from PowerPC code ( read timebase as long long ) .
* This function is derived from PowerPC code ( read timebase as long long ) .
* On ARM it just returns the timer value .
* On ARM it just returns the timer value .