RTCs: handle NVRAM better
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / rtc / Kconfig
CommitLineData
7be2c7c9 1#
c58411e9
AZ
2# RTC class/drivers configuration
3#
4
5config RTC_LIB
0c86edc0
AZ
6 tristate
7
bb35fb20
JE
8menuconfig RTC_CLASS
9 tristate "Real Time Clock"
0c86edc0 10 default n
bb35fb20 11 depends on !S390
0c86edc0
AZ
12 select RTC_LIB
13 help
14 Generic RTC class support. If you say yes here, you will
15 be allowed to plug one or more RTCs to your system. You will
27ae4104 16 probably want to enable one or more of the interfaces below.
0c86edc0
AZ
17
18 This driver can also be built as a module. If so, the module
19 will be called rtc-class.
20
bb35fb20
JE
21if RTC_CLASS
22
0c86edc0 23config RTC_HCTOSYS
7ca1d488 24 bool "Set system time from RTC on startup and resume"
0c86edc0
AZ
25 depends on RTC_CLASS = y
26 default y
27 help
7ca1d488
DB
28 If you say yes here, the system time (wall clock) will be set using
29 the value read from a specified RTC device. This is useful to avoid
30 unnecessary fsck runs at boot time, and to network better.
0c86edc0
AZ
31
32config RTC_HCTOSYS_DEVICE
7ca1d488 33 string "RTC used to set the system time"
0c86edc0
AZ
34 depends on RTC_HCTOSYS = y
35 default "rtc0"
36 help
7ca1d488
DB
37 The RTC device that will be used to (re)initialize the system
38 clock, usually rtc0. Initialization is done when the system
779d2089
DB
39 starts up, and when it resumes from a low power state. This
40 device should record time in UTC, since the kernel won't do
41 timezone correction.
7ca1d488 42
55ff1aba
DB
43 The driver for this RTC device must be loaded before late_initcall
44 functions run, so it must usually be statically linked.
45
7ca1d488
DB
46 This clock should be battery-backed, so that it reads the correct
47 time when the system boots from a power-off state. Otherwise, your
48 system will need an external clock source (like an NTP server).
49
50 If the clock you specify here is not battery backed, it may still
51 be useful to reinitialize system time when resuming from system
52 sleep states. Do not specify an RTC here unless it stays powered
53 during all this system's supported sleep states.
0c86edc0 54
9e86ecb6
DB
55config RTC_DEBUG
56 bool "RTC debug support"
57 depends on RTC_CLASS = y
58 help
59 Say yes here to enable debugging support in the RTC framework
60 and individual RTC drivers.
61
0c86edc0 62comment "RTC interfaces"
0c86edc0 63
c5c3e192 64config RTC_INTF_SYSFS
e40659c5 65 boolean "/sys/class/rtc/rtcN (sysfs)"
bb35fb20 66 depends on SYSFS
c5c3e192
AZ
67 default RTC_CLASS
68 help
9e86ecb6
DB
69 Say yes here if you want to use your RTCs using sysfs interfaces,
70 /sys/class/rtc/rtc0 through /sys/.../rtcN.
c5c3e192
AZ
71
72 This driver can also be built as a module. If so, the module
73 will be called rtc-sysfs.
74
728a2947 75config RTC_INTF_PROC
e40659c5 76 boolean "/proc/driver/rtc (procfs for rtc0)"
bb35fb20 77 depends on PROC_FS
728a2947
AZ
78 default RTC_CLASS
79 help
9e86ecb6
DB
80 Say yes here if you want to use your first RTC through the proc
81 interface, /proc/driver/rtc. Other RTCs will not be available
82 through that API.
728a2947
AZ
83
84 This driver can also be built as a module. If so, the module
85 will be called rtc-proc.
86
e824290e 87config RTC_INTF_DEV
e40659c5 88 boolean "/dev/rtcN (character devices)"
e824290e
AZ
89 default RTC_CLASS
90 help
9e86ecb6
DB
91 Say yes here if you want to use your RTCs using the /dev
92 interfaces, which "udev" sets up as /dev/rtc0 through
93 /dev/rtcN. You may want to set up a symbolic link so one
94 of these can be accessed as /dev/rtc, which is a name
95 expected by "hwclock" and some other programs.
e824290e
AZ
96
97 This driver can also be built as a module. If so, the module
98 will be called rtc-dev.
99
655066c3
AN
100config RTC_INTF_DEV_UIE_EMUL
101 bool "RTC UIE emulation on dev interface"
102 depends on RTC_INTF_DEV
103 help
3dde6ad8 104 Provides an emulation for RTC_UIE if the underlying rtc chip
9e86ecb6
DB
105 driver does not expose RTC_UIE ioctls. Those requests generate
106 once-per-second update interrupts, used for synchronization.
655066c3 107
09a21e56
AZ
108config RTC_DRV_TEST
109 tristate "Test driver/device"
1fec7c66
AZ
110 help
111 If you say yes here you get support for the
09a21e56
AZ
112 RTC test driver. It's a software RTC which can be
113 used to test the RTC subsystem APIs. It gets
114 the time from the system clock.
115 You want this driver only if you are doing development
116 on the RTC subsystem. Please read the source code
117 for further details.
1fec7c66
AZ
118
119 This driver can also be built as a module. If so, the module
09a21e56
AZ
120 will be called rtc-test.
121
122comment "I2C RTC drivers"
bb35fb20
JE
123 depends on I2C
124
125if I2C
1fec7c66 126
1abb0dc9 127config RTC_DRV_DS1307
09a21e56 128 tristate "Dallas/Maxim DS1307/37/38/39/40, ST M41T00"
1abb0dc9
DB
129 help
130 If you say yes here you get support for various compatible RTC
131 chips (often with battery backup) connected with I2C. This driver
132 should handle DS1307, DS1337, DS1338, DS1339, DS1340, ST M41T00,
133 and probably other chips. In some cases the RTC must already
134 have been initialized (by manufacturing or a bootloader).
135
136 The first seven registers on these chips hold an RTC, and other
137 registers may add features such as NVRAM, a trickle charger for
138 the RTC/NVRAM backup power, and alarms. This driver may not
139 expose all those available chip features.
140
141 This driver can also be built as a module. If so, the module
142 will be called rtc-ds1307.
143
bf4994d7
SW
144config RTC_DRV_DS1374
145 tristate "Maxim/Dallas Semiconductor DS1374 Real Time Clock"
146 depends on RTC_CLASS && I2C
147 help
148 If you say yes here you get support for Dallas Semiconductor
149 DS1374 real-time clock chips. If an interrupt is associated
150 with the device, the alarm functionality is supported.
151
152 This driver can also be built as a module. If so, the module
153 will be called rtc-ds1374.
154
09a21e56
AZ
155config RTC_DRV_DS1672
156 tristate "Dallas/Maxim DS1672"
9bf5b4f5
AN
157 help
158 If you say yes here you get support for the
09a21e56 159 Dallas/Maxim DS1672 timekeeping chip.
9bf5b4f5
AN
160
161 This driver can also be built as a module. If so, the module
09a21e56 162 will be called rtc-ds1672.
9bf5b4f5 163
09a21e56
AZ
164config RTC_DRV_MAX6900
165 tristate "Maxim 6900"
7e56a7dc 166 help
09a21e56
AZ
167 If you say yes here you will get support for the
168 Maxim MAX6900 I2C RTC chip.
7e56a7dc
HVR
169
170 This driver can also be built as a module. If so, the module
09a21e56 171 will be called rtc-max6900.
7e56a7dc 172
09a21e56 173config RTC_DRV_RS5C372
d815461c 174 tristate "Ricoh RS5C372A/B, RV5C386, RV5C387A"
edf1aaa3
AZ
175 help
176 If you say yes here you get support for the
d815461c 177 Ricoh RS5C372A, RS5C372B, RV5C386, and RV5C387A RTC chips.
edf1aaa3
AZ
178
179 This driver can also be built as a module. If so, the module
09a21e56 180 will be called rtc-rs5c372.
edf1aaa3 181
09a21e56
AZ
182config RTC_DRV_ISL1208
183 tristate "Intersil 1208"
5ec3e4b7
AN
184 help
185 If you say yes here you get support for the
09a21e56 186 Intersil 1208 RTC chip.
5ec3e4b7
AN
187
188 This driver can also be built as a module. If so, the module
09a21e56 189 will be called rtc-isl1208.
5ec3e4b7 190
09a21e56
AZ
191config RTC_DRV_X1205
192 tristate "Xicor/Intersil X1205"
db68b189 193 help
09a21e56
AZ
194 If you say yes here you get support for the
195 Xicor/Intersil X1205 RTC chip.
196
197 This driver can also be built as a module. If so, the module
198 will be called rtc-x1205.
db68b189 199
b5a82d62
AZ
200config RTC_DRV_PCF8563
201 tristate "Philips PCF8563/Epson RTC8564"
b5a82d62
AZ
202 help
203 If you say yes here you get support for the
204 Philips PCF8563 RTC chip. The Epson RTC8564
205 should work as well.
206
207 This driver can also be built as a module. If so, the module
208 will be called rtc-pcf8563.
209
9c0c5705
L
210config RTC_DRV_PCF8583
211 tristate "Philips PCF8583"
9c0c5705 212 help
bb71f99f 213 If you say yes here you get support for the Philips PCF8583
09a21e56 214 RTC chip found on Acorn RiscPCs. This driver supports the
bb71f99f 215 platform specific method of retrieving the current year from
09a21e56
AZ
216 the RTC's SRAM. It will work on other platforms with the same
217 chip, but the year will probably have to be tweaked.
9c0c5705
L
218
219 This driver can also be built as a module. If so, the module
220 will be called rtc-pcf8583.
221
caaff562
AN
222config RTC_DRV_M41T80
223 tristate "ST M41T80 series RTC"
caaff562
AN
224 help
225 If you say Y here you will get support for the
226 ST M41T80 RTC chips series. Currently following chips are
227 supported: M41T80, M41T81, M41T82, M41T83, M41ST84, M41ST85
228 and M41ST87.
229
230 This driver can also be built as a module. If so, the module
231 will be called rtc-m41t80.
232
617780d2
AN
233config RTC_DRV_M41T80_WDT
234 bool "ST M41T80 series RTC watchdog timer"
235 depends on RTC_DRV_M41T80
236 help
237 If you say Y here you will get support for the
238 watchdog timer in ST M41T80 RTC chips series.
239
0c4a59fe
TL
240config RTC_DRV_TWL92330
241 boolean "TI TWL92330/Menelaus"
bb35fb20 242 depends on MENELAUS
0c4a59fe
TL
243 help
244 If you say yes here you get support for the RTC on the
01dd2fbf 245 TWL92330 "Menelaus" power management chip, used with OMAP2
0c4a59fe
TL
246 platforms. The support is integrated with the rest of
247 the Menelaus driver; it's not separate module.
248
bb35fb20
JE
249endif # I2C
250
09a21e56 251comment "SPI RTC drivers"
bb35fb20
JE
252
253if SPI_MASTER
09a21e56 254
e0ac4761
AN
255config RTC_DRV_RS5C348
256 tristate "Ricoh RS5C348A/B"
e0ac4761
AN
257 help
258 If you say yes here you get support for the
259 Ricoh RS5C348A and RS5C348B RTC chips.
260
261 This driver can also be built as a module. If so, the module
262 will be called rtc-rs5c348.
263
09a21e56
AZ
264config RTC_DRV_MAX6902
265 tristate "Maxim 6902"
09a21e56
AZ
266 help
267 If you say yes here you will get support for the
268 Maxim MAX6902 SPI RTC chip.
269
270 This driver can also be built as a module. If so, the module
271 will be called rtc-max6902.
272
bb35fb20
JE
273endif # SPI_MASTER
274
09a21e56 275comment "Platform RTC drivers"
09a21e56
AZ
276
277# this 'CMOS' RTC driver is arch dependent because <asm-generic/rtc.h>
278# requires <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
279# global rtc_lock ... it's not yet just another platform_device.
280
281config RTC_DRV_CMOS
282 tristate "PC-style 'CMOS'"
bb35fb20 283 depends on X86 || ALPHA || ARM || M32R || ATARI || PPC || MIPS
09a21e56
AZ
284 help
285 Say "yes" here to get direct support for the real time clock
286 found in every PC or ACPI-based system, and some other boards.
287 Specifically the original MC146818, compatibles like those in
288 PC south bridges, the DS12887 or M48T86, some multifunction
289 or LPC bus chips, and so on.
290
291 Your system will need to define the platform device used by
292 this driver, otherwise it won't be accessible. This means
293 you can safely enable this driver if you don't know whether
294 or not your board has this kind of hardware.
295
296 This driver can also be built as a module. If so, the module
297 will be called rtc-cmos.
298
537739de
TB
299config RTC_DRV_DS1216
300 tristate "Dallas DS1216"
bb35fb20 301 depends on SNI_RM
537739de
TB
302 help
303 If you say yes here you get support for the Dallas DS1216 RTC chips.
304
09a21e56
AZ
305config RTC_DRV_DS1553
306 tristate "Dallas DS1553"
7520b94d
AZ
307 help
308 If you say yes here you get support for the
09a21e56 309 Dallas DS1553 timekeeping chip.
7520b94d
AZ
310
311 This driver can also be built as a module. If so, the module
09a21e56
AZ
312 will be called rtc-ds1553.
313
02964115
TH
314config RTC_DRV_STK17TA8
315 tristate "Simtek STK17TA8"
316 depends on RTC_CLASS
317 help
318 If you say yes here you get support for the
319 Simtek STK17TA8 timekeeping chip.
320
321 This driver can also be built as a module. If so, the module
322 will be called rtc-stk17ta8.
323
09a21e56
AZ
324config RTC_DRV_DS1742
325 tristate "Dallas DS1742/1743"
09a21e56
AZ
326 help
327 If you say yes here you get support for the
328 Dallas DS1742/1743 timekeeping chip.
329
330 This driver can also be built as a module. If so, the module
331 will be called rtc-ds1742.
332
333config RTC_DRV_M48T86
334 tristate "ST M48T86/Dallas DS12887"
09a21e56
AZ
335 help
336 If you say Y here you will get support for the
337 ST M48T86 and Dallas DS12887 RTC chips.
338
339 This driver can also be built as a module. If so, the module
340 will be called rtc-m48t86.
341
2e774c7c
MZ
342config RTC_DRV_M48T59
343 tristate "ST M48T59"
2e774c7c
MZ
344 help
345 If you say Y here you will get support for the
346 ST M48T59 RTC chip.
347
348 This driver can also be built as a module, if so, the module
349 will be called "rtc-m48t59".
350
09a21e56
AZ
351config RTC_DRV_V3020
352 tristate "EM Microelectronic V3020"
09a21e56
AZ
353 help
354 If you say yes here you will get support for the
355 EM Microelectronic v3020 RTC chip.
356
357 This driver can also be built as a module. If so, the module
358 will be called rtc-v3020.
359
360comment "on-CPU RTC drivers"
09a21e56
AZ
361
362config RTC_DRV_OMAP
363 tristate "TI OMAP1"
bb35fb20 364 depends on ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730
09a21e56
AZ
365 help
366 Say "yes" here to support the real time clock on TI OMAP1 chips.
367 This driver can also be built as a module called rtc-omap.
7520b94d 368
1add6781
BD
369config RTC_DRV_S3C
370 tristate "Samsung S3C series SoC RTC"
bb35fb20 371 depends on ARCH_S3C2410
1add6781
BD
372 help
373 RTC (Realtime Clock) driver for the clock inbuilt into the
374 Samsung S3C24XX series of SoCs. This can provide periodic
375 interrupt rates from 1Hz to 64Hz for user programs, and
376 wakeup from Alarm.
377
378 The driver currently supports the common features on all the
379 S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
380 and S3C2442.
381
382 This driver can also be build as a module. If so, the module
383 will be called rtc-s3c.
384
fd507e2f
AZ
385config RTC_DRV_EP93XX
386 tristate "Cirrus Logic EP93XX"
bb35fb20 387 depends on ARCH_EP93XX
fd507e2f
AZ
388 help
389 If you say yes here you get support for the
390 RTC embedded in the Cirrus Logic EP93XX processors.
391
392 This driver can also be built as a module. If so, the module
393 will be called rtc-ep93xx.
394
e842f1c8
RP
395config RTC_DRV_SA1100
396 tristate "SA11x0/PXA2xx"
bb35fb20 397 depends on ARCH_SA1100 || ARCH_PXA
e842f1c8
RP
398 help
399 If you say Y here you will get access to the real time clock
400 built into your SA11x0 or PXA2xx CPU.
401
402 To compile this driver as a module, choose M here: the
403 module will be called rtc-sa1100.
fd507e2f 404
317a6104
PM
405config RTC_DRV_SH
406 tristate "SuperH On-Chip RTC"
bb35fb20 407 depends on RTC_CLASS && (CPU_SH3 || CPU_SH4)
317a6104
PM
408 help
409 Say Y here to enable support for the on-chip RTC found in
410 most SuperH processors.
411
412 To compile this driver as a module, choose M here: the
413 module will be called rtc-sh.
414
8417eb7a 415config RTC_DRV_VR41XX
3e16f6af 416 tristate "NEC VR41XX"
bb35fb20 417 depends on CPU_VR41XX
3e16f6af
AZ
418 help
419 If you say Y here you will get access to the real time clock
420 built into your NEC VR41XX CPU.
421
422 To compile this driver as a module, choose M here: the
423 module will be called rtc-vr41xx.
8417eb7a 424
8ae6e163
DS
425config RTC_DRV_PL031
426 tristate "ARM AMBA PL031 RTC"
bb35fb20 427 depends on ARM_AMBA
8ae6e163
DS
428 help
429 If you say Y here you will get access to ARM AMBA
09a21e56 430 PrimeCell PL031 RTC found on certain ARM SOCs.
8ae6e163
DS
431
432 To compile this driver as a module, choose M here: the
433 module will be called rtc-pl031.
434
fa04e78b
HCE
435config RTC_DRV_AT32AP700X
436 tristate "AT32AP700X series RTC"
bb35fb20 437 depends on PLATFORM_AT32AP
fa04e78b
HCE
438 help
439 Driver for the internal RTC (Realtime Clock) on Atmel AVR32
440 AT32AP700x family processors.
441
7fc39f6d 442config RTC_DRV_AT91RM9200
788b1fc6 443 tristate "AT91RM9200"
bb35fb20 444 depends on ARCH_AT91RM9200
788b1fc6
AV
445 help
446 Driver for the Atmel AT91RM9200's internal RTC (Realtime Clock).
447
8cc75c9a
WB
448config RTC_DRV_BFIN
449 tristate "Blackfin On-Chip RTC"
bb35fb20 450 depends on BFIN
8cc75c9a
WB
451 help
452 If you say yes here you will get support for the
453 Blackfin On-Chip Real Time Clock.
454
455 This driver can also be built as a module. If so, the module
456 will be called rtc-bfin.
457
e9f2bd81
NI
458config RTC_DRV_RS5C313
459 tristate "Ricoh RS5C313"
bb35fb20 460 depends on SH_LANDISK
e9f2bd81
NI
461 help
462 If you say yes here you get support for the Ricoh RS5C313 RTC chips.
463
bb35fb20 464endif # RTC_CLASS