aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorFeng Tang <feng.tang@intel.com>2013-01-15 11:09:49 -0500
committerJohn Stultz <john.stultz@linaro.org>2013-01-15 21:16:08 -0500
commit05ad717c77b1b8e98a1dd768c3700036d634629e (patch)
treec52d75ca925bcd9b4c7125aad4c1059d7d3a43ee /include
parent9ecf37eb7a81e3295a1b274eafb6f83d7d2cabf0 (diff)
timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS and RTC_SYSTOHC depend on its non-existence, which could prevent the persistent clock and RTC code from doing similar thing twice during system's init/suspend/resume phases. If the CONFIG_HAS_PERSISTENT_CLOCK=n, then no change happens for kernel which still does the persistent clock check in timekeeping_init(). Cc: Thomas Gleixner <tglx@linutronix.de> Suggested-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Feng Tang <feng.tang@intel.com> [jstultz: Added dependency for RTC_SYSTOHC as well] Signed-off-by: John Stultz <john.stultz@linaro.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/time.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/time.h b/include/linux/time.h
index dfbc4e82e8ba..369b6e3b87d8 100644
--- a/include/linux/time.h
+++ b/include/linux/time.h
@@ -116,10 +116,15 @@ static inline bool timespec_valid_strict(const struct timespec *ts)
116} 116}
117 117
118extern bool persistent_clock_exist; 118extern bool persistent_clock_exist;
119
120#ifdef CONFIG_HAS_PERSISTENT_CLOCK
121#define has_persistent_clock() true
122#else
119static inline bool has_persistent_clock(void) 123static inline bool has_persistent_clock(void)
120{ 124{
121 return persistent_clock_exist; 125 return persistent_clock_exist;
122} 126}
127#endif
123 128
124extern void read_persistent_clock(struct timespec *ts); 129extern void read_persistent_clock(struct timespec *ts);
125extern void read_boot_clock(struct timespec *ts); 130extern void read_boot_clock(struct timespec *ts);