Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c7500900 authored by David Brownell's avatar David Brownell Committed by Linus Torvalds
Browse files

rtc: avoid legacy drivers with generic framework



Kconfig tweaks to help reduce RTC configuration bugs, by avoiding
legacy RTC drivers when the generic RTC framework is enabled:

 - If rtc-cmos is selected, disable the legacy rtc driver;

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

 - In the old "chardev RTC" section of Kconfig, add a comment
   warning people off these (seven) legacy RTC drivers when
   the generic framework is in use.

People can still use the legacy drivers if they want (or need) to.

This doesn't fix the broken dependencies for the legacy "CMOS" RTC driver.
Ideally it would be a full list of platforms where it works, not a partial
list of ones where it won't.  Or better yet, it would depend on a
"HAVE_CMOS_RTC" flag defined by various platforms ...  surely there's a
Kconfig style guideline lurking there.

Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Acked-by: default avatarAlessandro Zummo <a.zummo@towertech.it>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 77459b05
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -732,9 +732,16 @@ 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 && !AVR32
	depends on !PPC && !PARISC && !IA64 && !M68K && !SPARC && !FRV \
			&& !ARM && !SUPERH && !S390 && !AVR32
	---help---
	  If you say Y here and create a character special file /dev/rtc with
	  major number 10 and minor number 135 using mknod ("man mknod"), you
@@ -840,6 +847,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
+1 −4
Original line number Diff line number Diff line
@@ -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
@@ -304,6 +300,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.