summaryrefslogtreecommitdiffstats
path: root/include/linux/time.h
diff options
context:
space:
mode:
authorFeng Tang2013-01-15 17:09:49 +0100
committerJohn Stultz2013-01-16 03:16:08 +0100
commit05ad717c77b1b8e98a1dd768c3700036d634629e (patch)
treec52d75ca925bcd9b4c7125aad4c1059d7d3a43ee /include/linux/time.h
parentrtc: Skip the suspend/resume handling if persistent clock exist (diff)
downloadkernel-qcow2-linux-05ad717c77b1b8e98a1dd768c3700036d634629e.tar.gz
kernel-qcow2-linux-05ad717c77b1b8e98a1dd768c3700036d634629e.tar.xz
kernel-qcow2-linux-05ad717c77b1b8e98a1dd768c3700036d634629e.zip
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/linux/time.h')
-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)
}
extern bool persistent_clock_exist;
+
+#ifdef CONFIG_HAS_PERSISTENT_CLOCK
+#define has_persistent_clock() true
+#else
static inline bool has_persistent_clock(void)
{
return persistent_clock_exist;
}
+#endif
extern void read_persistent_clock(struct timespec *ts);
extern void read_boot_clock(struct timespec *ts);