xref: /linux/drivers/rtc/Kconfig (revision 9e86ecb659f11b36b5e189214b19cb31ef5dfd72)
10c86edc0SAlessandro Zummo\#
2c58411e9SAlessandro Zummo# RTC class/drivers configuration
3c58411e9SAlessandro Zummo#
4c58411e9SAlessandro Zummo
50c86edc0SAlessandro Zummomenu "Real Time Clock"
60c86edc0SAlessandro Zummo
7c58411e9SAlessandro Zummoconfig RTC_LIB
8c58411e9SAlessandro Zummo	tristate
90c86edc0SAlessandro Zummo
100c86edc0SAlessandro Zummoconfig RTC_CLASS
110c86edc0SAlessandro Zummo	tristate "RTC class"
120c86edc0SAlessandro Zummo	depends on EXPERIMENTAL
130c86edc0SAlessandro Zummo	default n
140c86edc0SAlessandro Zummo	select RTC_LIB
150c86edc0SAlessandro Zummo	help
160c86edc0SAlessandro Zummo	  Generic RTC class support. If you say yes here, you will
170c86edc0SAlessandro Zummo 	  be allowed to plug one or more RTCs to your system. You will
1827ae4104SAdrian Bunk	  probably want to enable one or more of the interfaces below.
190c86edc0SAlessandro Zummo
200c86edc0SAlessandro Zummo	  This driver can also be built as a module. If so, the module
210c86edc0SAlessandro Zummo	  will be called rtc-class.
220c86edc0SAlessandro Zummo
230c86edc0SAlessandro Zummoconfig RTC_HCTOSYS
240c86edc0SAlessandro Zummo	bool "Set system time from RTC on startup"
250c86edc0SAlessandro Zummo	depends on RTC_CLASS = y
260c86edc0SAlessandro Zummo	default y
270c86edc0SAlessandro Zummo	help
280c86edc0SAlessandro Zummo	  If you say yes here, the system time will be set using
290c86edc0SAlessandro Zummo	  the value read from the specified RTC device. This is useful
30af3ffa67SPavel Machek	  in order to avoid unnecessary fsck runs.
310c86edc0SAlessandro Zummo
320c86edc0SAlessandro Zummoconfig RTC_HCTOSYS_DEVICE
330c86edc0SAlessandro Zummo	string "The RTC to read the time from"
340c86edc0SAlessandro Zummo	depends on RTC_HCTOSYS = y
350c86edc0SAlessandro Zummo	default "rtc0"
360c86edc0SAlessandro Zummo	help
370c86edc0SAlessandro Zummo	  The RTC device that will be used as the source for
380c86edc0SAlessandro Zummo	  the system time, usually rtc0.
390c86edc0SAlessandro Zummo
40*9e86ecb6SDavid Brownellconfig RTC_DEBUG
41*9e86ecb6SDavid Brownell	bool "RTC debug support"
42*9e86ecb6SDavid Brownell	depends on RTC_CLASS = y
43*9e86ecb6SDavid Brownell	help
44*9e86ecb6SDavid Brownell	  Say yes here to enable debugging support in the RTC framework
45*9e86ecb6SDavid Brownell	  and individual RTC drivers.
46*9e86ecb6SDavid Brownell
470c86edc0SAlessandro Zummocomment "RTC interfaces"
480c86edc0SAlessandro Zummo	depends on RTC_CLASS
490c86edc0SAlessandro Zummo
50c5c3e192SAlessandro Zummoconfig RTC_INTF_SYSFS
51c5c3e192SAlessandro Zummo	tristate "sysfs"
52c5c3e192SAlessandro Zummo	depends on RTC_CLASS && SYSFS
53c5c3e192SAlessandro Zummo	default RTC_CLASS
54c5c3e192SAlessandro Zummo	help
55*9e86ecb6SDavid Brownell	  Say yes here if you want to use your RTCs using sysfs interfaces,
56*9e86ecb6SDavid Brownell	  /sys/class/rtc/rtc0 through /sys/.../rtcN.
57c5c3e192SAlessandro Zummo
58c5c3e192SAlessandro Zummo	  This driver can also be built as a module. If so, the module
59c5c3e192SAlessandro Zummo	  will be called rtc-sysfs.
60c5c3e192SAlessandro Zummo
61728a2947SAlessandro Zummoconfig RTC_INTF_PROC
62728a2947SAlessandro Zummo	tristate "proc"
63728a2947SAlessandro Zummo	depends on RTC_CLASS && PROC_FS
64728a2947SAlessandro Zummo	default RTC_CLASS
65728a2947SAlessandro Zummo	help
66*9e86ecb6SDavid Brownell	  Say yes here if you want to use your first RTC through the proc
67*9e86ecb6SDavid Brownell	  interface, /proc/driver/rtc.  Other RTCs will not be available
68*9e86ecb6SDavid Brownell	  through that API.
69728a2947SAlessandro Zummo
70728a2947SAlessandro Zummo	  This driver can also be built as a module. If so, the module
71728a2947SAlessandro Zummo	  will be called rtc-proc.
72728a2947SAlessandro Zummo
73e824290eSAlessandro Zummoconfig RTC_INTF_DEV
74e824290eSAlessandro Zummo	tristate "dev"
75e824290eSAlessandro Zummo	depends on RTC_CLASS
76e824290eSAlessandro Zummo	default RTC_CLASS
77e824290eSAlessandro Zummo	help
78*9e86ecb6SDavid Brownell	  Say yes here if you want to use your RTCs using the /dev
79*9e86ecb6SDavid Brownell	  interfaces, which "udev" sets up as /dev/rtc0 through
80*9e86ecb6SDavid Brownell	  /dev/rtcN.  You may want to set up a symbolic link so one
81*9e86ecb6SDavid Brownell	  of these can be accessed as /dev/rtc, which is a name
82*9e86ecb6SDavid Brownell	  expected by "hwclock" and some other programs.
83e824290eSAlessandro Zummo
84e824290eSAlessandro Zummo	  This driver can also be built as a module. If so, the module
85e824290eSAlessandro Zummo	  will be called rtc-dev.
86e824290eSAlessandro Zummo
87655066c3SAtsushi Nemotoconfig RTC_INTF_DEV_UIE_EMUL
88655066c3SAtsushi Nemoto	bool "RTC UIE emulation on dev interface"
89655066c3SAtsushi Nemoto	depends on RTC_INTF_DEV
90655066c3SAtsushi Nemoto	help
91655066c3SAtsushi Nemoto	  Provides an emulation for RTC_UIE if the underlaying rtc chip
92*9e86ecb6SDavid Brownell	  driver does not expose RTC_UIE ioctls.  Those requests generate
93*9e86ecb6SDavid Brownell	  once-per-second update interrupts, used for synchronization.
94655066c3SAtsushi Nemoto
950c86edc0SAlessandro Zummocomment "RTC drivers"
960c86edc0SAlessandro Zummo	depends on RTC_CLASS
970c86edc0SAlessandro Zummo
981fec7c66SAlessandro Zummoconfig RTC_DRV_X1205
991fec7c66SAlessandro Zummo	tristate "Xicor/Intersil X1205"
1001fec7c66SAlessandro Zummo	depends on RTC_CLASS && I2C
1011fec7c66SAlessandro Zummo	help
1021fec7c66SAlessandro Zummo	  If you say yes here you get support for the
1031fec7c66SAlessandro Zummo	  Xicor/Intersil X1205 RTC chip.
1041fec7c66SAlessandro Zummo
1051fec7c66SAlessandro Zummo	  This driver can also be built as a module. If so, the module
1061fec7c66SAlessandro Zummo	  will be called rtc-x1205.
1071fec7c66SAlessandro Zummo
1081abb0dc9SDavid Brownellconfig RTC_DRV_DS1307
1091abb0dc9SDavid Brownell	tristate "Dallas/Maxim DS1307 and similar I2C RTC chips"
1101abb0dc9SDavid Brownell	depends on RTC_CLASS && I2C
1111abb0dc9SDavid Brownell	help
1121abb0dc9SDavid Brownell	  If you say yes here you get support for various compatible RTC
1131abb0dc9SDavid Brownell	  chips (often with battery backup) connected with I2C.  This driver
1141abb0dc9SDavid Brownell	  should handle DS1307, DS1337, DS1338, DS1339, DS1340, ST M41T00,
1151abb0dc9SDavid Brownell	  and probably other chips.  In some cases the RTC must already
1161abb0dc9SDavid Brownell	  have been initialized (by manufacturing or a bootloader).
1171abb0dc9SDavid Brownell
1181abb0dc9SDavid Brownell	  The first seven registers on these chips hold an RTC, and other
1191abb0dc9SDavid Brownell	  registers may add features such as NVRAM, a trickle charger for
1201abb0dc9SDavid Brownell	  the RTC/NVRAM backup power, and alarms.  This driver may not
1211abb0dc9SDavid Brownell	  expose all those available chip features.
1221abb0dc9SDavid Brownell
1231abb0dc9SDavid Brownell	  This driver can also be built as a module. If so, the module
1241abb0dc9SDavid Brownell	  will be called rtc-ds1307.
1251abb0dc9SDavid Brownell
1269bf5b4f5SAtsushi Nemotoconfig RTC_DRV_DS1553
1279bf5b4f5SAtsushi Nemoto	tristate "Dallas DS1553"
1289bf5b4f5SAtsushi Nemoto	depends on RTC_CLASS
1299bf5b4f5SAtsushi Nemoto	help
1309bf5b4f5SAtsushi Nemoto	  If you say yes here you get support for the
1319bf5b4f5SAtsushi Nemoto	  Dallas DS1553 timekeeping chip.
1329bf5b4f5SAtsushi Nemoto
1339bf5b4f5SAtsushi Nemoto	  This driver can also be built as a module. If so, the module
1349bf5b4f5SAtsushi Nemoto	  will be called rtc-ds1553.
1359bf5b4f5SAtsushi Nemoto
1367e56a7dcSHerbert Valerio Riedelconfig RTC_DRV_ISL1208
1377e56a7dcSHerbert Valerio Riedel	tristate "Intersil 1208"
1387e56a7dcSHerbert Valerio Riedel	depends on RTC_CLASS && I2C
1397e56a7dcSHerbert Valerio Riedel	help
1407e56a7dcSHerbert Valerio Riedel	  If you say yes here you get support for the
1417e56a7dcSHerbert Valerio Riedel	  Intersil 1208 RTC chip.
1427e56a7dcSHerbert Valerio Riedel
1437e56a7dcSHerbert Valerio Riedel	  This driver can also be built as a module. If so, the module
1447e56a7dcSHerbert Valerio Riedel	  will be called rtc-isl1208.
1457e56a7dcSHerbert Valerio Riedel
146edf1aaa3SAlessandro Zummoconfig RTC_DRV_DS1672
147edf1aaa3SAlessandro Zummo	tristate "Dallas/Maxim DS1672"
148edf1aaa3SAlessandro Zummo	depends on RTC_CLASS && I2C
149edf1aaa3SAlessandro Zummo	help
150edf1aaa3SAlessandro Zummo	  If you say yes here you get support for the
151edf1aaa3SAlessandro Zummo	  Dallas/Maxim DS1672 timekeeping chip.
152edf1aaa3SAlessandro Zummo
153edf1aaa3SAlessandro Zummo	  This driver can also be built as a module. If so, the module
154edf1aaa3SAlessandro Zummo	  will be called rtc-ds1672.
155edf1aaa3SAlessandro Zummo
1565ec3e4b7SAtsushi Nemotoconfig RTC_DRV_DS1742
1575ec3e4b7SAtsushi Nemoto	tristate "Dallas DS1742"
1585ec3e4b7SAtsushi Nemoto	depends on RTC_CLASS
1595ec3e4b7SAtsushi Nemoto	help
1605ec3e4b7SAtsushi Nemoto	  If you say yes here you get support for the
1615ec3e4b7SAtsushi Nemoto	  Dallas DS1742 timekeeping chip.
1625ec3e4b7SAtsushi Nemoto
1635ec3e4b7SAtsushi Nemoto	  This driver can also be built as a module. If so, the module
1645ec3e4b7SAtsushi Nemoto	  will be called rtc-ds1742.
1655ec3e4b7SAtsushi Nemoto
166b5a82d62SAlessandro Zummoconfig RTC_DRV_PCF8563
167b5a82d62SAlessandro Zummo	tristate "Philips PCF8563/Epson RTC8564"
168b5a82d62SAlessandro Zummo	depends on RTC_CLASS && I2C
169b5a82d62SAlessandro Zummo	help
170b5a82d62SAlessandro Zummo	  If you say yes here you get support for the
171b5a82d62SAlessandro Zummo	  Philips PCF8563 RTC chip. The Epson RTC8564
172b5a82d62SAlessandro Zummo	  should work as well.
173b5a82d62SAlessandro Zummo
174b5a82d62SAlessandro Zummo	  This driver can also be built as a module. If so, the module
175b5a82d62SAlessandro Zummo	  will be called rtc-pcf8563.
176b5a82d62SAlessandro Zummo
1779c0c5705SG. Liakhovetskiconfig RTC_DRV_PCF8583
1789c0c5705SG. Liakhovetski	tristate "Philips PCF8583"
1799c0c5705SG. Liakhovetski	depends on RTC_CLASS && I2C
1809c0c5705SG. Liakhovetski	help
1819c0c5705SG. Liakhovetski	  If you say yes here you get support for the
1829c0c5705SG. Liakhovetski	  Philips PCF8583 RTC chip.
1839c0c5705SG. Liakhovetski
1849c0c5705SG. Liakhovetski	  This driver can also be built as a module. If so, the module
1859c0c5705SG. Liakhovetski	  will be called rtc-pcf8583.
1869c0c5705SG. Liakhovetski
187e0ac4761SAtsushi Nemotoconfig RTC_DRV_RS5C348
188e0ac4761SAtsushi Nemoto	tristate "Ricoh RS5C348A/B"
189e0ac4761SAtsushi Nemoto	depends on RTC_CLASS && SPI
190e0ac4761SAtsushi Nemoto	help
191e0ac4761SAtsushi Nemoto	  If you say yes here you get support for the
192e0ac4761SAtsushi Nemoto	  Ricoh RS5C348A and RS5C348B RTC chips.
193e0ac4761SAtsushi Nemoto
194e0ac4761SAtsushi Nemoto	  This driver can also be built as a module. If so, the module
195e0ac4761SAtsushi Nemoto	  will be called rtc-rs5c348.
196e0ac4761SAtsushi Nemoto
1977520b94dSAlessandro Zummoconfig RTC_DRV_RS5C372
1987520b94dSAlessandro Zummo	tristate "Ricoh RS5C372A/B"
1997520b94dSAlessandro Zummo	depends on RTC_CLASS && I2C
2007520b94dSAlessandro Zummo	help
2017520b94dSAlessandro Zummo	  If you say yes here you get support for the
2027520b94dSAlessandro Zummo	  Ricoh RS5C372A and RS5C372B RTC chips.
2037520b94dSAlessandro Zummo
2047520b94dSAlessandro Zummo	  This driver can also be built as a module. If so, the module
2057520b94dSAlessandro Zummo	  will be called rtc-rs5c372.
2067520b94dSAlessandro Zummo
2071add6781SBen Dooksconfig RTC_DRV_S3C
2081add6781SBen Dooks	tristate "Samsung S3C series SoC RTC"
2091add6781SBen Dooks	depends on RTC_CLASS && ARCH_S3C2410
2101add6781SBen Dooks	help
2111add6781SBen Dooks	  RTC (Realtime Clock) driver for the clock inbuilt into the
2121add6781SBen Dooks	  Samsung S3C24XX series of SoCs. This can provide periodic
2131add6781SBen Dooks	  interrupt rates from 1Hz to 64Hz for user programs, and
2141add6781SBen Dooks	  wakeup from Alarm.
2151add6781SBen Dooks
2161add6781SBen Dooks	  The driver currently supports the common features on all the
2171add6781SBen Dooks	  S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
2181add6781SBen Dooks	  and S3C2442.
2191add6781SBen Dooks
2201add6781SBen Dooks	  This driver can also be build as a module. If so, the module
2211add6781SBen Dooks	  will be called rtc-s3c.
2221add6781SBen Dooks
2231d98af87SAlessandro Zummoconfig RTC_DRV_M48T86
2241d98af87SAlessandro Zummo	tristate "ST M48T86/Dallas DS12887"
2251d98af87SAlessandro Zummo	depends on RTC_CLASS
2261d98af87SAlessandro Zummo	help
2271d98af87SAlessandro Zummo	  If you say Y here you will get support for the
2281d98af87SAlessandro Zummo	  ST M48T86 and Dallas DS12887 RTC chips.
2291d98af87SAlessandro Zummo
2301d98af87SAlessandro Zummo	  This driver can also be built as a module. If so, the module
2311d98af87SAlessandro Zummo	  will be called rtc-m48t86.
2321d98af87SAlessandro Zummo
233fd507e2fSAlessandro Zummoconfig RTC_DRV_EP93XX
234fd507e2fSAlessandro Zummo	tristate "Cirrus Logic EP93XX"
235fd507e2fSAlessandro Zummo	depends on RTC_CLASS && ARCH_EP93XX
236fd507e2fSAlessandro Zummo	help
237fd507e2fSAlessandro Zummo	  If you say yes here you get support for the
238fd507e2fSAlessandro Zummo	  RTC embedded in the Cirrus Logic EP93XX processors.
239fd507e2fSAlessandro Zummo
240fd507e2fSAlessandro Zummo	  This driver can also be built as a module. If so, the module
241fd507e2fSAlessandro Zummo	  will be called rtc-ep93xx.
242fd507e2fSAlessandro Zummo
243e842f1c8SRichard Purdieconfig RTC_DRV_SA1100
244e842f1c8SRichard Purdie	tristate "SA11x0/PXA2xx"
245e842f1c8SRichard Purdie	depends on RTC_CLASS && (ARCH_SA1100 || ARCH_PXA)
246e842f1c8SRichard Purdie	help
247e842f1c8SRichard Purdie	  If you say Y here you will get access to the real time clock
248e842f1c8SRichard Purdie	  built into your SA11x0 or PXA2xx CPU.
249e842f1c8SRichard Purdie
250e842f1c8SRichard Purdie	  To compile this driver as a module, choose M here: the
251e842f1c8SRichard Purdie	  module will be called rtc-sa1100.
252fd507e2fSAlessandro Zummo
253317a6104SPaul Mundtconfig RTC_DRV_SH
254317a6104SPaul Mundt	tristate "SuperH On-Chip RTC"
255317a6104SPaul Mundt	depends on RTC_CLASS && SUPERH
256317a6104SPaul Mundt	help
257317a6104SPaul Mundt	  Say Y here to enable support for the on-chip RTC found in
258317a6104SPaul Mundt	  most SuperH processors.
259317a6104SPaul Mundt
260317a6104SPaul Mundt 	  To compile this driver as a module, choose M here: the
261317a6104SPaul Mundt	  module will be called rtc-sh.
262317a6104SPaul Mundt
2638417eb7aSYoichi Yuasaconfig RTC_DRV_VR41XX
2643e16f6afSAlessandro Zummo	tristate "NEC VR41XX"
2658417eb7aSYoichi Yuasa	depends on RTC_CLASS && CPU_VR41XX
2663e16f6afSAlessandro Zummo	help
2673e16f6afSAlessandro Zummo	  If you say Y here you will get access to the real time clock
2683e16f6afSAlessandro Zummo	  built into your NEC VR41XX CPU.
2693e16f6afSAlessandro Zummo
2703e16f6afSAlessandro Zummo	  To compile this driver as a module, choose M here: the
2713e16f6afSAlessandro Zummo	  module will be called rtc-vr41xx.
2728417eb7aSYoichi Yuasa
2738ae6e163SDeepak Saxenaconfig RTC_DRV_PL031
2748ae6e163SDeepak Saxena	tristate "ARM AMBA PL031 RTC"
2758ae6e163SDeepak Saxena	depends on RTC_CLASS && ARM_AMBA
2768ae6e163SDeepak Saxena	help
2778ae6e163SDeepak Saxena	  If you say Y here you will get access to ARM AMBA
2788ae6e163SDeepak Saxena	  PrimeCell PL031 UART found on certain ARM SOCs.
2798ae6e163SDeepak Saxena
2808ae6e163SDeepak Saxena	  To compile this driver as a module, choose M here: the
2818ae6e163SDeepak Saxena	  module will be called rtc-pl031.
2828ae6e163SDeepak Saxena
283788b1fc6SAndrew Victorconfig RTC_DRV_AT91
284788b1fc6SAndrew Victor	tristate "AT91RM9200"
285788b1fc6SAndrew Victor	depends on RTC_CLASS && ARCH_AT91RM9200
286788b1fc6SAndrew Victor	help
287788b1fc6SAndrew Victor	  Driver for the Atmel AT91RM9200's internal RTC (Realtime Clock).
288788b1fc6SAndrew Victor
289a95579cdSAlessandro Zummoconfig RTC_DRV_TEST
290a95579cdSAlessandro Zummo	tristate "Test driver/device"
291a95579cdSAlessandro Zummo	depends on RTC_CLASS
292a95579cdSAlessandro Zummo	help
293a95579cdSAlessandro Zummo	  If you say yes here you get support for the
294a95579cdSAlessandro Zummo	  RTC test driver. It's a software RTC which can be
295a95579cdSAlessandro Zummo	  used to test the RTC subsystem APIs. It gets
296a95579cdSAlessandro Zummo	  the time from the system clock.
297a95579cdSAlessandro Zummo	  You want this driver only if you are doing development
298a95579cdSAlessandro Zummo	  on the RTC subsystem. Please read the source code
299a95579cdSAlessandro Zummo	  for further details.
300a95579cdSAlessandro Zummo
301a95579cdSAlessandro Zummo	  This driver can also be built as a module. If so, the module
302a95579cdSAlessandro Zummo	  will be called rtc-test.
303a95579cdSAlessandro Zummo
3048e12ecc2SRaphael Assenatconfig RTC_DRV_MAX6902
3058e12ecc2SRaphael Assenat	tristate "Maxim 6902"
3068e12ecc2SRaphael Assenat	depends on RTC_CLASS && SPI
3078e12ecc2SRaphael Assenat	help
3088e12ecc2SRaphael Assenat	  If you say yes here you will get support for the
3098e12ecc2SRaphael Assenat	  Maxim MAX6902 spi RTC chip.
3108e12ecc2SRaphael Assenat
3118e12ecc2SRaphael Assenat	  This driver can also be built as a module. If so, the module
3128e12ecc2SRaphael Assenat	  will be called rtc-max6902.
3138e12ecc2SRaphael Assenat
314362600feSRaphael Assenatconfig RTC_DRV_V3020
315362600feSRaphael Assenat	tristate "EM Microelectronic V3020"
316362600feSRaphael Assenat	depends on RTC_CLASS
317362600feSRaphael Assenat	help
318362600feSRaphael Assenat	  If you say yes here you will get support for the
319362600feSRaphael Assenat	  EM Microelectronic v3020 RTC chip.
320362600feSRaphael Assenat
321362600feSRaphael Assenat	  This driver can also be built as a module. If so, the module
322362600feSRaphael Assenat	  will be called rtc-v3020.
323362600feSRaphael Assenat
3240c86edc0SAlessandro Zummoendmenu
325