Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On 01/22/2013 11:49 AM, John Stultz wrote: On 01/22/2013 11:44 AM, Jason Gunthorpe wrote: On Tue, Jan 15, 2013 at 11:50:18AM -0800, John Stultz wrote: On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 Suggested-by: John Stultz Signed-off-by: Feng Tang Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. Sort of an ugly config name, since I gather ARM should always set this to 'n'... CONFIG_USE_ONLY_PERSISTENT_CLOCK ? (Sigh. I got this seemingly microseconds after I sent the pull request :) So yea, fair point, there could be some confusion. But ONLY_PERSISTENT_CLOCK isn't quite right either, more like CONFIG_HAS_PERSISTENT_CLOCK_ALWAYS or something. Decided upon CONFIG_ALWAYS_USE_PERSISTENT_CLOCK which I think is clear enough. Let me know if you object or have a better idea. thanks -john -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On 01/22/2013 11:49 AM, John Stultz wrote: On 01/22/2013 11:44 AM, Jason Gunthorpe wrote: On Tue, Jan 15, 2013 at 11:50:18AM -0800, John Stultz wrote: On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 t...@linutronix.de Suggested-by: John Stultz john.stu...@linaro.org Signed-off-by: Feng Tang feng.t...@intel.com Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. Sort of an ugly config name, since I gather ARM should always set this to 'n'... CONFIG_USE_ONLY_PERSISTENT_CLOCK ? (Sigh. I got this seemingly microseconds after I sent the pull request :) So yea, fair point, there could be some confusion. But ONLY_PERSISTENT_CLOCK isn't quite right either, more like CONFIG_HAS_PERSISTENT_CLOCK_ALWAYS or something. Decided upon CONFIG_ALWAYS_USE_PERSISTENT_CLOCK which I think is clear enough. Let me know if you object or have a better idea. thanks -john -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On 01/22/2013 11:44 AM, Jason Gunthorpe wrote: On Tue, Jan 15, 2013 at 11:50:18AM -0800, John Stultz wrote: On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 Suggested-by: John Stultz Signed-off-by: Feng Tang Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. Sort of an ugly config name, since I gather ARM should always set this to 'n'... CONFIG_USE_ONLY_PERSISTENT_CLOCK ? (Sigh. I got this seemingly microseconds after I sent the pull request :) So yea, fair point, there could be some confusion. But ONLY_PERSISTENT_CLOCK isn't quite right either, more like CONFIG_HAS_PERSISTENT_CLOCK_ALWAYS or something. Hrm. Let me think on it for a bit, and feel free to suggest further improvements. thanks -john -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On Tue, Jan 15, 2013 at 11:50:18AM -0800, John Stultz wrote: > On 01/15/2013 08:09 AM, Feng Tang wrote: > >Make the persistent clock check a kernel config option, so that some > >platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends > >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 > >Suggested-by: John Stultz > >Signed-off-by: Feng Tang > > Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. Sort of an ugly config name, since I gather ARM should always set this to 'n'... CONFIG_USE_ONLY_PERSISTENT_CLOCK ? Cheers, Jason -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On Tue, Jan 15, 2013 at 11:50:18AM -0800, John Stultz wrote: On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 t...@linutronix.de Suggested-by: John Stultz john.stu...@linaro.org Signed-off-by: Feng Tang feng.t...@intel.com Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. Sort of an ugly config name, since I gather ARM should always set this to 'n'... CONFIG_USE_ONLY_PERSISTENT_CLOCK ? Cheers, Jason -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On 01/22/2013 11:44 AM, Jason Gunthorpe wrote: On Tue, Jan 15, 2013 at 11:50:18AM -0800, John Stultz wrote: On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 t...@linutronix.de Suggested-by: John Stultz john.stu...@linaro.org Signed-off-by: Feng Tang feng.t...@intel.com Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. Sort of an ugly config name, since I gather ARM should always set this to 'n'... CONFIG_USE_ONLY_PERSISTENT_CLOCK ? (Sigh. I got this seemingly microseconds after I sent the pull request :) So yea, fair point, there could be some confusion. But ONLY_PERSISTENT_CLOCK isn't quite right either, more like CONFIG_HAS_PERSISTENT_CLOCK_ALWAYS or something. Hrm. Let me think on it for a bit, and feel free to suggest further improvements. thanks -john -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 Suggested-by: John Stultz Signed-off-by: Feng Tang Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. thanks -john -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH v2 3/3] 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 depends 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 Suggested-by: John Stultz Signed-off-by: Feng Tang --- drivers/rtc/Kconfig |1 + include/linux/time.h |5 + kernel/time/Kconfig |5 + 3 files changed, 11 insertions(+) diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index 923a9da..5b963c6 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -20,6 +20,7 @@ if RTC_CLASS config RTC_HCTOSYS bool "Set system time from RTC on startup and resume" default y + depends on !HAS_PERSISTENT_CLOCK help If you say yes here, the system time (wall clock) will be set using the value read from a specified RTC device. This is useful to avoid diff --git a/include/linux/time.h b/include/linux/time.h index 2f58603..e08051c 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); diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig index 8601f0d..f7e45b9 100644 --- a/kernel/time/Kconfig +++ b/kernel/time/Kconfig @@ -12,6 +12,11 @@ config CLOCKSOURCE_WATCHDOG config ARCH_CLOCKSOURCE_DATA bool +# Platforms has a persistent clock +config HAS_PERSISTENT_CLOCK + bool + default n + # Timekeeping vsyscall support config GENERIC_TIME_VSYSCALL bool -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH v2 3/3] 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 depends 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 t...@linutronix.de Suggested-by: John Stultz john.stu...@linaro.org Signed-off-by: Feng Tang feng.t...@intel.com --- drivers/rtc/Kconfig |1 + include/linux/time.h |5 + kernel/time/Kconfig |5 + 3 files changed, 11 insertions(+) diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index 923a9da..5b963c6 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -20,6 +20,7 @@ if RTC_CLASS config RTC_HCTOSYS bool Set system time from RTC on startup and resume default y + depends on !HAS_PERSISTENT_CLOCK help If you say yes here, the system time (wall clock) will be set using the value read from a specified RTC device. This is useful to avoid diff --git a/include/linux/time.h b/include/linux/time.h index 2f58603..e08051c 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); diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig index 8601f0d..f7e45b9 100644 --- a/kernel/time/Kconfig +++ b/kernel/time/Kconfig @@ -12,6 +12,11 @@ config CLOCKSOURCE_WATCHDOG config ARCH_CLOCKSOURCE_DATA bool +# Platforms has a persistent clock +config HAS_PERSISTENT_CLOCK + bool + default n + # Timekeeping vsyscall support config GENERIC_TIME_VSYSCALL bool -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH v2 3/3] timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option
On 01/15/2013 08:09 AM, Feng Tang wrote: Make the persistent clock check a kernel config option, so that some platform can explicitely select it, also make CONFIG_RTC_HCTOSYS depends 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 t...@linutronix.de Suggested-by: John Stultz john.stu...@linaro.org Signed-off-by: Feng Tang feng.t...@intel.com Applied. I also added a dependency for Jason's CONFIG_RTC_SYSTOHC. thanks -john -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/