Re: 2.6.25-rc7: Ugh.

David Brownell
2008-03-28T09:49:56Z

On Friday 28 March 2008, Ingo Molnar wrote:
> > > Could somebody please fix the RTC mess in kconfig now ?
> >
> > My version has been sitting in MM for a while now.
>
> could you please provide an URL or the patch itself so that others who
> hit this issue and read this thread can apply the fix?

I merged the two patches (gentle, then harsh) so the result is
smaller. Here you go.

- dave

========== CUT HERE
Prevent the most significant RTC configuration problems:

- If the new RTC framework is enabled, don't allow any of the
legacy drivers to be configured.

- When using generic RTC on x86, enable rtc-cmos by default.

It seems too many people are used to enabling a legacy RTC despite
the Kconfig help/comments; the gentle approach hasn't worked.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
---
drivers/char/Kconfig | 8 ++++++++
drivers/rtc/Kconfig | 5 +----
2 files changed, 9 insertions(+), 4 deletions(-)

--- linux-2.6.orig/drivers/char/Kconfig 2008-03-28 02:35:58.000000000 -0700
+++ linux-2.6/drivers/char/Kconfig 2008-03-28 02:39:17.000000000 -0700
@@ -704,6 +704,12 @@ config NVRAM
To compile this driver as a module, choose M here: the
module will be called nvram.

+#
+# These legacy RTC drivers just cause too many conflicts with the generic
+# RTC framework ... let's not even try to coexist any more.
+#
+if RTC_LIB=n
+
config RTC
tristate "Enhanced Real Time Clock Support"
depends on !PPC && !PARISC && !IA64 && !M68K && !SPARC && !FRV && !ARM && !SUPERH && !S390
@@ -812,6 +818,8 @@ config DS1302
will get access to the real time clock (or hardware clock) built
into your computer.

+endif # RTC_LIB
+
config COBALT_LCD
bool "Support for Cobalt LCD"
depends on MIPS_COBALT
--- linux-2.6.orig/drivers/rtc/Kconfig 2008-03-28 02:35:58.000000000 -0700
+++ linux-2.6/drivers/rtc/Kconfig 2008-03-28 02:39:12.000000000 -0700
@@ -20,10 +20,6 @@ menuconfig RTC_CLASS

if RTC_CLASS

-if GEN_RTC || RTC
-comment "Conflicting RTC option has been selected, check GEN_RTC and RTC"
-endif
-
config RTC_HCTOSYS
bool "Set system time from RTC on startup and resume"
depends on RTC_CLASS = y
@@ -303,6 +299,7 @@ comment "Platform RTC drivers"
config RTC_DRV_CMOS
tristate "PC-style 'CMOS'"
depends on X86 || ALPHA || ARM || M32R || ATARI || PPC || MIPS
+ default y if X86
help
Say "yes" here to get direct support for the real time clock
found in every PC or ACPI-based system, and some other boards.