diff options
Diffstat (limited to 'include/linux/clocksource.h')
-rw-r--r-- | include/linux/clocksource.h | 3 |
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 | ||