Use uint64_t for time types

Unfortunately 'unsigned long long' and 'uint64_t' are not necessarily
compatible on 64-bit machines. Use the correct typedef instead of
writing the supposed type out in full.

Signed-off-by: Simon Glass <sjg@chromium.org>
master
Simon Glass 10 years ago committed by Tom Rini
parent aac618a32b
commit 19ea4678ca
  1. 2
      include/common.h
  2. 12
      lib/time.c

@ -766,7 +766,7 @@ void invalidate_dcache_all(void);
void invalidate_icache_all(void);
/* arch/$(ARCH)/lib/ticks.S */
unsigned long long get_ticks(void);
uint64_t get_ticks(void);
void wait_ticks (unsigned long);
/* arch/$(ARCH)/lib/time.c */

@ -37,7 +37,7 @@ unsigned long notrace timer_read_counter(void)
extern unsigned long __weak timer_read_counter(void);
#endif
unsigned long long __weak notrace get_ticks(void)
uint64_t __weak notrace get_ticks(void)
{
unsigned long now = timer_read_counter();
@ -45,11 +45,11 @@ unsigned long long __weak notrace get_ticks(void)
if (now < gd->timebase_l)
gd->timebase_h++;
gd->timebase_l = now;
return ((unsigned long long)gd->timebase_h << 32) | gd->timebase_l;
return ((uint64_t)gd->timebase_h << 32) | gd->timebase_l;
}
/* Returns time in milliseconds */
static unsigned long long notrace tick_to_time(unsigned long long tick)
static uint64_t notrace tick_to_time(uint64_t tick)
{
ulong div = get_tbclk();
@ -74,9 +74,9 @@ unsigned long __weak notrace timer_get_us(void)
return tick_to_time(get_ticks() * 1000);
}
static unsigned long long usec_to_tick(unsigned long usec)
static uint64_t usec_to_tick(unsigned long usec)
{
unsigned long long tick = usec;
uint64_t tick = usec;
tick *= get_tbclk();
do_div(tick, 1000000);
return tick;
@ -84,7 +84,7 @@ static unsigned long long usec_to_tick(unsigned long usec)
void __weak __udelay(unsigned long usec)
{
unsigned long long tmp;
uint64_t tmp;
tmp = get_ticks() + usec_to_tick(usec); /* get current timestamp */

Loading…
Cancel
Save