aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/clocksource.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/clocksource.h')
-rw-r--r--include/linux/clocksource.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h
index f0a7fb984413..f88d32f8ff7c 100644
--- a/include/linux/clocksource.h
+++ b/include/linux/clocksource.h
@@ -79,6 +79,7 @@ struct clocksource {
79 /* timekeeping specific data, ignore */ 79 /* timekeeping specific data, ignore */
80 cycle_t cycle_interval; 80 cycle_t cycle_interval;
81 u64 xtime_interval; 81 u64 xtime_interval;
82 u32 raw_interval;
82 /* 83 /*
83 * Second part is written at each timer interrupt 84 * Second part is written at each timer interrupt
84 * Keep it in a different cache line to dirty no 85 * Keep it in a different cache line to dirty no
@@ -87,6 +88,7 @@ struct clocksource {
87 cycle_t cycle_last ____cacheline_aligned_in_smp; 88 cycle_t cycle_last ____cacheline_aligned_in_smp;
88 u64 xtime_nsec; 89 u64 xtime_nsec;
89 s64 error; 90 s64 error;
91 struct timespec raw_time;
90 92
91#ifdef CONFIG_CLOCKSOURCE_WATCHDOG 93#ifdef CONFIG_CLOCKSOURCE_WATCHDOG
92 /* Watchdog related data, used by the framework */ 94 /* Watchdog related data, used by the framework */
@@ -215,6 +217,7 @@ static inline void clocksource_calculate_interval(struct clocksource *c,
215 217
216 /* Go back from cycles -> shifted ns, this time use ntp adjused mult */ 218 /* Go back from cycles -> shifted ns, this time use ntp adjused mult */
217 c->xtime_interval = (u64)c->cycle_interval * c->mult; 219 c->xtime_interval = (u64)c->cycle_interval * c->mult;
220 c->raw_interval = ((u64)c->cycle_interval * c->mult_orig) >> c->shift;
218} 221}
219 222
220 223