mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-05 08:26:59 +00:00
sparc64: show time stamps from zero
On most platforms, time is shown from the beginning of boot. This patch is adding offset to sched_clock() for SPARC, to also show time from 0. This means we will have one more load, but we saved one in an ealier patch. Signed-off-by: Pavel Tatashin <pasha.tatashin@oracle.com> Reviewed-by: Bob Picco <bob.picco@oracle.com> Reviewed-by: Steven Sistare <steven.sistare@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b8a83fcb78
commit
b5dd4d807f
1 changed files with 8 additions and 2 deletions
|
@ -392,6 +392,7 @@ static struct sparc64_tick_ops hbtick_operations __read_mostly = {
|
||||||
};
|
};
|
||||||
|
|
||||||
static unsigned long timer_ticks_per_nsec_quotient __read_mostly;
|
static unsigned long timer_ticks_per_nsec_quotient __read_mostly;
|
||||||
|
static unsigned long timer_offset __read_mostly;
|
||||||
|
|
||||||
unsigned long cmos_regs;
|
unsigned long cmos_regs;
|
||||||
EXPORT_SYMBOL(cmos_regs);
|
EXPORT_SYMBOL(cmos_regs);
|
||||||
|
@ -786,6 +787,10 @@ void __init time_init(void)
|
||||||
timer_ticks_per_nsec_quotient =
|
timer_ticks_per_nsec_quotient =
|
||||||
clocksource_hz2mult(freq, SPARC64_NSEC_PER_CYC_SHIFT);
|
clocksource_hz2mult(freq, SPARC64_NSEC_PER_CYC_SHIFT);
|
||||||
|
|
||||||
|
timer_offset = (tick_operations.get_tick()
|
||||||
|
* timer_ticks_per_nsec_quotient)
|
||||||
|
>> SPARC64_NSEC_PER_CYC_SHIFT;
|
||||||
|
|
||||||
clocksource_tick.name = tick_operations.name;
|
clocksource_tick.name = tick_operations.name;
|
||||||
clocksource_tick.read = clocksource_tick_read;
|
clocksource_tick.read = clocksource_tick_read;
|
||||||
|
|
||||||
|
@ -813,8 +818,9 @@ unsigned long long sched_clock(void)
|
||||||
{
|
{
|
||||||
unsigned long ticks = tick_operations.get_tick();
|
unsigned long ticks = tick_operations.get_tick();
|
||||||
|
|
||||||
return (ticks * timer_ticks_per_nsec_quotient)
|
return ((ticks * timer_ticks_per_nsec_quotient)
|
||||||
>> SPARC64_NSEC_PER_CYC_SHIFT;
|
>> SPARC64_NSEC_PER_CYC_SHIFT)
|
||||||
|
- timer_offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
int read_current_timer(unsigned long *timer_val)
|
int read_current_timer(unsigned long *timer_val)
|
||||||
|
|
Loading…
Reference in a new issue