Loading...
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# RTC class/drivers configuration
4#
5
6config RTC_LIB
7 bool
8
9config RTC_MC146818_LIB
10 bool
11 select RTC_LIB
12
13menuconfig RTC_CLASS
14 bool "Real Time Clock"
15 default n
16 depends on !S390 && !UML
17 select RTC_LIB
18 help
19 Generic RTC class support. If you say yes here, you will
20 be allowed to plug one or more RTCs to your system. You will
21 probably want to enable one or more of the interfaces below.
22
23if RTC_CLASS
24
25config RTC_HCTOSYS
26 bool "Set system time from RTC on startup and resume"
27 default y
28 help
29 If you say yes here, the system time (wall clock) will be set using
30 the value read from a specified RTC device. This is useful to avoid
31 unnecessary fsck runs at boot time, and to network better.
32
33config RTC_HCTOSYS_DEVICE
34 string "RTC used to set the system time"
35 depends on RTC_HCTOSYS
36 default "rtc0"
37 help
38 The RTC device that will be used to (re)initialize the system
39 clock, usually rtc0. Initialization is done when the system
40 starts up, and when it resumes from a low power state. This
41 device should record time in UTC, since the kernel won't do
42 timezone correction.
43
44 This clock should be battery-backed, so that it reads the correct
45 time when the system boots from a power-off state. Otherwise, your
46 system will need an external clock source (like an NTP server).
47
48 If the clock you specify here is not battery backed, it may still
49 be useful to reinitialize system time when resuming from system
50 sleep states. Do not specify an RTC here unless it stays powered
51 during all this system's supported sleep states.
52
53config RTC_SYSTOHC
54 bool "Set the RTC time based on NTP synchronization"
55 default y
56 help
57 If you say yes here, the system time (wall clock) will be stored
58 in the RTC specified by RTC_HCTOSYS_DEVICE approximately every 11
59 minutes if userspace reports synchronized NTP status.
60
61config RTC_SYSTOHC_DEVICE
62 string "RTC used to synchronize NTP adjustment"
63 depends on RTC_SYSTOHC
64 default RTC_HCTOSYS_DEVICE if RTC_HCTOSYS
65 default "rtc0"
66 help
67 The RTC device used for NTP synchronization. The main difference
68 between RTC_HCTOSYS_DEVICE and RTC_SYSTOHC_DEVICE is that this
69 one can sleep when setting time, because it runs in the workqueue
70 context.
71
72config RTC_DEBUG
73 bool "RTC debug support"
74 help
75 Say yes here to enable debugging support in the RTC framework
76 and individual RTC drivers.
77
78config RTC_NVMEM
79 bool "RTC non volatile storage support"
80 select NVMEM
81 default RTC_CLASS
82 help
83 Say yes here to add support for the non volatile (often battery
84 backed) storage present on RTCs.
85
86comment "RTC interfaces"
87
88config RTC_INTF_SYSFS
89 bool "/sys/class/rtc/rtcN (sysfs)"
90 depends on SYSFS
91 default RTC_CLASS
92 help
93 Say yes here if you want to use your RTCs using sysfs interfaces,
94 /sys/class/rtc/rtc0 through /sys/.../rtcN.
95
96 If unsure, say Y.
97
98config RTC_INTF_PROC
99 bool "/proc/driver/rtc (procfs for rtcN)"
100 depends on PROC_FS
101 default RTC_CLASS
102 help
103 Say yes here if you want to use your system clock RTC through
104 the proc interface, /proc/driver/rtc.
105 Other RTCs will not be available through that API.
106 If there is no RTC for the system clock, then the first RTC(rtc0)
107 is used by default.
108
109 If unsure, say Y.
110
111config RTC_INTF_DEV
112 bool "/dev/rtcN (character devices)"
113 default RTC_CLASS
114 help
115 Say yes here if you want to use your RTCs using the /dev
116 interfaces, which "udev" sets up as /dev/rtc0 through
117 /dev/rtcN.
118
119 You may want to set up a symbolic link so one of these
120 can be accessed as /dev/rtc, which is a name
121 expected by "hwclock" and some other programs. Recent
122 versions of "udev" are known to set up the symlink for you.
123
124 If unsure, say Y.
125
126config RTC_INTF_DEV_UIE_EMUL
127 bool "RTC UIE emulation on dev interface"
128 depends on RTC_INTF_DEV
129 help
130 Provides an emulation for RTC_UIE if the underlying rtc chip
131 driver does not expose RTC_UIE ioctls. Those requests generate
132 once-per-second update interrupts, used for synchronization.
133
134 The emulation code will read the time from the hardware
135 clock several times per second, please enable this option
136 only if you know that you really need it.
137
138config RTC_DRV_TEST
139 tristate "Test driver/device"
140 help
141 If you say yes here you get support for the
142 RTC test driver. It's a software RTC which can be
143 used to test the RTC subsystem APIs. It gets
144 the time from the system clock.
145 You want this driver only if you are doing development
146 on the RTC subsystem. Please read the source code
147 for further details.
148
149 This driver can also be built as a module. If so, the module
150 will be called rtc-test.
151
152comment "I2C RTC drivers"
153
154if I2C
155
156config RTC_DRV_88PM860X
157 tristate "Marvell 88PM860x"
158 depends on MFD_88PM860X
159 help
160 If you say yes here you get support for RTC function in Marvell
161 88PM860x chips.
162
163 This driver can also be built as a module. If so, the module
164 will be called rtc-88pm860x.
165
166config RTC_DRV_88PM80X
167 tristate "Marvell 88PM80x"
168 depends on MFD_88PM800
169 help
170 If you say yes here you get support for RTC function in Marvell
171 88PM80x chips.
172
173 This driver can also be built as a module. If so, the module
174 will be called rtc-88pm80x.
175
176config RTC_DRV_ABB5ZES3
177 select REGMAP_I2C
178 tristate "Abracon AB-RTCMC-32.768kHz-B5ZE-S3"
179 help
180 If you say yes here you get support for the Abracon
181 AB-RTCMC-32.768kHz-B5ZE-S3 I2C RTC chip.
182
183 This driver can also be built as a module. If so, the module
184 will be called rtc-ab-b5ze-s3.
185
186config RTC_DRV_ABEOZ9
187 select REGMAP_I2C
188 tristate "Abracon AB-RTCMC-32.768kHz-EOZ9"
189 help
190 If you say yes here you get support for the Abracon
191 AB-RTCMC-32.768kHz-EOA9 I2C RTC chip.
192
193 This driver can also be built as a module. If so, the module
194 will be called rtc-ab-e0z9.
195
196config RTC_DRV_ABX80X
197 tristate "Abracon ABx80x"
198 select WATCHDOG_CORE if WATCHDOG
199 help
200 If you say yes here you get support for Abracon AB080X and AB180X
201 families of ultra-low-power battery- and capacitor-backed real-time
202 clock chips.
203
204 This driver can also be built as a module. If so, the module
205 will be called rtc-abx80x.
206
207config RTC_DRV_AC100
208 tristate "X-Powers AC100"
209 depends on MFD_AC100
210 help
211 If you say yes here you get support for the real-time clock found
212 in X-Powers AC100 family peripheral ICs.
213
214 This driver can also be built as a module. If so, the module
215 will be called rtc-ac100.
216
217config RTC_DRV_BRCMSTB
218 tristate "Broadcom STB wake-timer"
219 depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
220 default ARCH_BRCMSTB || BMIPS_GENERIC
221 help
222 If you say yes here you get support for the wake-timer found on
223 Broadcom STB SoCs (BCM7xxx).
224
225 This driver can also be built as a module. If so, the module will
226 be called rtc-brcmstb-waketimer.
227
228config RTC_DRV_AS3722
229 tristate "ams AS3722 RTC driver"
230 depends on MFD_AS3722
231 help
232 If you say yes here you get support for the RTC of ams AS3722 PMIC
233 chips.
234
235 This driver can also be built as a module. If so, the module
236 will be called rtc-as3722.
237
238config RTC_DRV_DS1307
239 tristate "Dallas/Maxim DS1307/37/38/39/40/41, ST M41T00, EPSON RX-8025, ISL12057"
240 select REGMAP_I2C
241 select WATCHDOG_CORE if WATCHDOG
242 help
243 If you say yes here you get support for various compatible RTC
244 chips (often with battery backup) connected with I2C. This driver
245 should handle DS1307, DS1337, DS1338, DS1339, DS1340, DS1341,
246 ST M41T00, EPSON RX-8025, Intersil ISL12057 and probably other chips.
247 In some cases the RTC must already have been initialized (by
248 manufacturing or a bootloader).
249
250 The first seven registers on these chips hold an RTC, and other
251 registers may add features such as NVRAM, a trickle charger for
252 the RTC/NVRAM backup power, and alarms. NVRAM is visible in
253 sysfs, but other chip features may not be available.
254
255 This driver can also be built as a module. If so, the module
256 will be called rtc-ds1307.
257
258config RTC_DRV_DS1307_CENTURY
259 bool "Century bit support for rtc-ds1307"
260 depends on RTC_DRV_DS1307
261 default n
262 help
263 The DS1307 driver suffered from a bug where it was enabling the
264 century bit inconditionnally but never used it when reading the time.
265 It made the driver unable to support dates beyond 2099.
266 Setting this option will add proper support for the century bit but if
267 the time was previously set using a kernel predating this option,
268 reading the date will return a date in the next century.
269 To solve that, you could boot a kernel without this option set, set
270 the RTC date and then boot a kernel with this option set.
271
272config RTC_DRV_DS1374
273 tristate "Dallas/Maxim DS1374"
274 help
275 If you say yes here you get support for Dallas Semiconductor
276 DS1374 real-time clock chips. If an interrupt is associated
277 with the device, the alarm functionality is supported.
278
279 This driver can also be built as a module. If so, the module
280 will be called rtc-ds1374.
281
282config RTC_DRV_DS1374_WDT
283 bool "Dallas/Maxim DS1374 watchdog timer"
284 depends on RTC_DRV_DS1374 && WATCHDOG
285 select WATCHDOG_CORE
286 help
287 If you say Y here you will get support for the
288 watchdog timer in the Dallas Semiconductor DS1374
289 real-time clock chips.
290
291config RTC_DRV_DS1672
292 tristate "Dallas/Maxim DS1672"
293 help
294 If you say yes here you get support for the
295 Dallas/Maxim DS1672 timekeeping chip.
296
297 This driver can also be built as a module. If so, the module
298 will be called rtc-ds1672.
299
300config RTC_DRV_HYM8563
301 tristate "Haoyu Microelectronics HYM8563"
302 depends on OF
303 help
304 Say Y to enable support for the HYM8563 I2C RTC chip. Apart
305 from the usual rtc functions it provides a clock output of
306 up to 32kHz.
307
308 This driver can also be built as a module. If so, the module
309 will be called rtc-hym8563.
310
311config RTC_DRV_LP8788
312 tristate "TI LP8788 RTC driver"
313 depends on MFD_LP8788
314 help
315 Say Y to enable support for the LP8788 RTC/ALARM driver.
316
317config RTC_DRV_MAX6900
318 tristate "Maxim MAX6900"
319 help
320 If you say yes here you will get support for the
321 Maxim MAX6900 I2C RTC chip.
322
323 This driver can also be built as a module. If so, the module
324 will be called rtc-max6900.
325
326config RTC_DRV_MAX8907
327 tristate "Maxim MAX8907"
328 depends on MFD_MAX8907 || COMPILE_TEST
329 select REGMAP_IRQ
330 help
331 If you say yes here you will get support for the
332 RTC of Maxim MAX8907 PMIC.
333
334 This driver can also be built as a module. If so, the module
335 will be called rtc-max8907.
336
337config RTC_DRV_MAX8925
338 tristate "Maxim MAX8925"
339 depends on MFD_MAX8925
340 help
341 If you say yes here you will get support for the
342 RTC of Maxim MAX8925 PMIC.
343
344 This driver can also be built as a module. If so, the module
345 will be called rtc-max8925.
346
347config RTC_DRV_MAX8998
348 tristate "Maxim MAX8998"
349 depends on MFD_MAX8998
350 help
351 If you say yes here you will get support for the
352 RTC of Maxim MAX8998 PMIC.
353
354 This driver can also be built as a module. If so, the module
355 will be called rtc-max8998.
356
357config RTC_DRV_MAX8997
358 tristate "Maxim MAX8997"
359 depends on MFD_MAX8997
360 help
361 If you say yes here you will get support for the
362 RTC of Maxim MAX8997 PMIC.
363
364 This driver can also be built as a module. If so, the module
365 will be called rtc-max8997.
366
367config RTC_DRV_MAX77686
368 tristate "Maxim MAX77686"
369 depends on MFD_MAX77686 || MFD_MAX77620 || COMPILE_TEST
370 help
371 If you say yes here you will get support for the
372 RTC of Maxim MAX77686/MAX77620/MAX77802 PMIC.
373
374 This driver can also be built as a module. If so, the module
375 will be called rtc-max77686.
376
377config RTC_DRV_RK808
378 tristate "Rockchip RK805/RK808/RK809/RK817/RK818 RTC"
379 depends on MFD_RK808
380 help
381 If you say yes here you will get support for the
382 RTC of RK805, RK809 and RK817, RK808 and RK818 PMIC.
383
384 This driver can also be built as a module. If so, the module
385 will be called rk808-rtc.
386
387config RTC_DRV_RS5C372
388 tristate "Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A"
389 help
390 If you say yes here you get support for the
391 Ricoh R2025S/D, RS5C372A, RS5C372B, RV5C386, and RV5C387A RTC chips.
392
393 This driver can also be built as a module. If so, the module
394 will be called rtc-rs5c372.
395
396config RTC_DRV_ISL1208
397 tristate "Intersil ISL1208"
398 help
399 If you say yes here you get support for the
400 Intersil ISL1208 RTC chip.
401
402 This driver can also be built as a module. If so, the module
403 will be called rtc-isl1208.
404
405config RTC_DRV_ISL12022
406 tristate "Intersil ISL12022"
407 help
408 If you say yes here you get support for the
409 Intersil ISL12022 RTC chip.
410
411 This driver can also be built as a module. If so, the module
412 will be called rtc-isl12022.
413
414config RTC_DRV_ISL12026
415 tristate "Intersil ISL12026"
416 depends on OF || COMPILE_TEST
417 help
418 If you say yes here you get support for the
419 Intersil ISL12026 RTC chip.
420
421 This driver can also be built as a module. If so, the module
422 will be called rtc-isl12026.
423
424config RTC_DRV_X1205
425 tristate "Xicor/Intersil X1205"
426 help
427 If you say yes here you get support for the
428 Xicor/Intersil X1205 RTC chip.
429
430 This driver can also be built as a module. If so, the module
431 will be called rtc-x1205.
432
433config RTC_DRV_PCF8523
434 tristate "NXP PCF8523"
435 help
436 If you say yes here you get support for the NXP PCF8523 RTC
437 chips.
438
439 This driver can also be built as a module. If so, the module
440 will be called rtc-pcf8523.
441
442config RTC_DRV_PCF85063
443 tristate "NXP PCF85063"
444 select REGMAP_I2C
445 help
446 If you say yes here you get support for the PCF85063 RTC chip
447
448 This driver can also be built as a module. If so, the module
449 will be called rtc-pcf85063.
450
451config RTC_DRV_PCF85363
452 tristate "NXP PCF85363"
453 select REGMAP_I2C
454 help
455 If you say yes here you get support for the PCF85363 RTC chip.
456
457 This driver can also be built as a module. If so, the module
458 will be called rtc-pcf85363.
459
460 The nvmem interface will be named pcf85363-#, where # is the
461 zero-based instance number.
462
463config RTC_DRV_PCF8563
464 tristate "Philips PCF8563/Epson RTC8564"
465 help
466 If you say yes here you get support for the
467 Philips PCF8563 RTC chip. The Epson RTC8564
468 should work as well.
469
470 This driver can also be built as a module. If so, the module
471 will be called rtc-pcf8563.
472
473config RTC_DRV_PCF8583
474 tristate "Philips PCF8583"
475 help
476 If you say yes here you get support for the Philips PCF8583
477 RTC chip found on Acorn RiscPCs. This driver supports the
478 platform specific method of retrieving the current year from
479 the RTC's SRAM. It will work on other platforms with the same
480 chip, but the year will probably have to be tweaked.
481
482 This driver can also be built as a module. If so, the module
483 will be called rtc-pcf8583.
484
485config RTC_DRV_M41T80
486 tristate "ST M41T62/65/M41T80/81/82/83/84/85/87 and compatible"
487 help
488 If you say Y here you will get support for the ST M41T60
489 and M41T80 RTC chips series. Currently, the following chips are
490 supported: M41T62, M41T65, M41T80, M41T81, M41T82, M41T83, M41ST84,
491 M41ST85, M41ST87, and MicroCrystal RV4162.
492
493 This driver can also be built as a module. If so, the module
494 will be called rtc-m41t80.
495
496config RTC_DRV_M41T80_WDT
497 bool "ST M41T65/M41T80 series RTC watchdog timer"
498 depends on RTC_DRV_M41T80
499 help
500 If you say Y here you will get support for the
501 watchdog timer in the ST M41T60 and M41T80 RTC chips series.
502
503config RTC_DRV_BD70528
504 tristate "ROHM BD70528 PMIC RTC"
505 depends on MFD_ROHM_BD70528 && (BD70528_WATCHDOG || !BD70528_WATCHDOG)
506 help
507 If you say Y here you will get support for the RTC
508 block on ROHM BD70528 and BD71828 Power Management IC.
509
510 This driver can also be built as a module. If so, the module
511 will be called rtc-bd70528.
512
513config RTC_DRV_BQ32K
514 tristate "TI BQ32000"
515 help
516 If you say Y here you will get support for the TI
517 BQ32000 I2C RTC chip.
518
519 This driver can also be built as a module. If so, the module
520 will be called rtc-bq32k.
521
522config RTC_DRV_DM355EVM
523 tristate "TI DaVinci DM355 EVM RTC"
524 depends on MFD_DM355EVM_MSP
525 help
526 Supports the RTC firmware in the MSP430 on the DM355 EVM.
527
528config RTC_DRV_TWL92330
529 bool "TI TWL92330/Menelaus"
530 depends on MENELAUS
531 help
532 If you say yes here you get support for the RTC on the
533 TWL92330 "Menelaus" power management chip, used with OMAP2
534 platforms. The support is integrated with the rest of
535 the Menelaus driver; it's not separate module.
536
537config RTC_DRV_TWL4030
538 tristate "TI TWL4030/TWL5030/TWL6030/TPS659x0"
539 depends on TWL4030_CORE
540 depends on OF
541 help
542 If you say yes here you get support for the RTC on the
543 TWL4030/TWL5030/TWL6030 family chips, used mostly with OMAP3 platforms.
544
545 This driver can also be built as a module. If so, the module
546 will be called rtc-twl.
547
548config RTC_DRV_PALMAS
549 tristate "TI Palmas RTC driver"
550 depends on MFD_PALMAS
551 help
552 If you say yes here you get support for the RTC of TI PALMA series PMIC
553 chips.
554
555 This driver can also be built as a module. If so, the module
556 will be called rtc-palma.
557
558config RTC_DRV_TPS6586X
559 tristate "TI TPS6586X RTC driver"
560 depends on MFD_TPS6586X
561 help
562 TI Power Management IC TPS6586X supports RTC functionality
563 along with alarm. This driver supports the RTC driver for
564 the TPS6586X RTC module.
565
566config RTC_DRV_TPS65910
567 tristate "TI TPS65910 RTC driver"
568 depends on MFD_TPS65910
569 help
570 If you say yes here you get support for the RTC on the
571 TPS65910 chips.
572
573 This driver can also be built as a module. If so, the module
574 will be called rtc-tps65910.
575
576config RTC_DRV_TPS80031
577 tristate "TI TPS80031/TPS80032 RTC driver"
578 depends on MFD_TPS80031
579 help
580 TI Power Management IC TPS80031 supports RTC functionality
581 along with alarm. This driver supports the RTC driver for
582 the TPS80031 RTC module.
583
584config RTC_DRV_RC5T583
585 tristate "RICOH 5T583 RTC driver"
586 depends on MFD_RC5T583
587 help
588 If you say yes here you get support for the RTC on the
589 RICOH 5T583 chips.
590
591 This driver can also be built as a module. If so, the module
592 will be called rtc-rc5t583.
593
594config RTC_DRV_RC5T619
595 tristate "RICOH RC5T619 RTC driver"
596 depends on MFD_RN5T618
597 help
598 If you say yes here you get support for the RTC on the
599 RICOH RC5T619 chips.
600
601 This driver can also be built as a module. If so, the module
602 will be called rtc-rc5t619.
603
604config RTC_DRV_S35390A
605 tristate "Seiko Instruments S-35390A"
606 select BITREVERSE
607 help
608 If you say yes here you will get support for the Seiko
609 Instruments S-35390A.
610
611 This driver can also be built as a module. If so the module
612 will be called rtc-s35390a.
613
614config RTC_DRV_FM3130
615 tristate "Ramtron FM3130"
616 help
617 If you say Y here you will get support for the
618 Ramtron FM3130 RTC chips.
619 Ramtron FM3130 is a chip with two separate devices inside,
620 RTC clock and FRAM. This driver provides only RTC functionality.
621
622 This driver can also be built as a module. If so the module
623 will be called rtc-fm3130.
624
625config RTC_DRV_RX8010
626 tristate "Epson RX8010SJ"
627 help
628 If you say yes here you get support for the Epson RX8010SJ RTC
629 chip.
630
631 This driver can also be built as a module. If so, the module
632 will be called rtc-rx8010.
633
634config RTC_DRV_RX8581
635 tristate "Epson RX-8571/RX-8581"
636 select REGMAP_I2C
637 help
638 If you say yes here you will get support for the Epson RX-8571/
639 RX-8581.
640
641 This driver can also be built as a module. If so the module
642 will be called rtc-rx8581.
643
644config RTC_DRV_RX8025
645 tristate "Epson RX-8025SA/NB"
646 help
647 If you say yes here you get support for the Epson
648 RX-8025SA/NB RTC chips.
649
650 This driver can also be built as a module. If so, the module
651 will be called rtc-rx8025.
652
653config RTC_DRV_EM3027
654 tristate "EM Microelectronic EM3027"
655 help
656 If you say yes here you get support for the EM
657 Microelectronic EM3027 RTC chips.
658
659 This driver can also be built as a module. If so, the module
660 will be called rtc-em3027.
661
662config RTC_DRV_RV3028
663 tristate "Micro Crystal RV3028"
664 select REGMAP_I2C
665 help
666 If you say yes here you get support for the Micro Crystal
667 RV3028.
668
669 This driver can also be built as a module. If so, the module
670 will be called rtc-rv3028.
671
672config RTC_DRV_RV8803
673 tristate "Micro Crystal RV8803, Epson RX8900"
674 help
675 If you say yes here you get support for the Micro Crystal RV8803 and
676 Epson RX8900 RTC chips.
677
678 This driver can also be built as a module. If so, the module
679 will be called rtc-rv8803.
680
681config RTC_DRV_S5M
682 tristate "Samsung S2M/S5M series"
683 depends on MFD_SEC_CORE || COMPILE_TEST
684 select REGMAP_IRQ
685 help
686 If you say yes here you will get support for the
687 RTC of Samsung S2MPS14 and S5M PMIC series.
688
689 This driver can also be built as a module. If so, the module
690 will be called rtc-s5m.
691
692config RTC_DRV_SD3078
693 tristate "ZXW Shenzhen whwave SD3078"
694 select REGMAP_I2C
695 help
696 If you say yes here you get support for the ZXW Shenzhen whwave
697 SD3078 RTC chips.
698
699 This driver can also be built as a module. If so, the module
700 will be called rtc-sd3078
701
702endif # I2C
703
704comment "SPI RTC drivers"
705
706if SPI_MASTER
707
708config RTC_DRV_M41T93
709 tristate "ST M41T93"
710 help
711 If you say yes here you will get support for the
712 ST M41T93 SPI RTC chip.
713
714 This driver can also be built as a module. If so, the module
715 will be called rtc-m41t93.
716
717config RTC_DRV_M41T94
718 tristate "ST M41T94"
719 help
720 If you say yes here you will get support for the
721 ST M41T94 SPI RTC chip.
722
723 This driver can also be built as a module. If so, the module
724 will be called rtc-m41t94.
725
726config RTC_DRV_DS1302
727 tristate "Dallas/Maxim DS1302"
728 depends on SPI
729 help
730 If you say yes here you get support for the Dallas DS1302 RTC chips.
731
732 This driver can also be built as a module. If so, the module
733 will be called rtc-ds1302.
734
735config RTC_DRV_DS1305
736 tristate "Dallas/Maxim DS1305/DS1306"
737 help
738 Select this driver to get support for the Dallas/Maxim DS1305
739 and DS1306 real time clock chips. These support a trickle
740 charger, alarms, and NVRAM in addition to the clock.
741
742 This driver can also be built as a module. If so, the module
743 will be called rtc-ds1305.
744
745config RTC_DRV_DS1343
746 select REGMAP_SPI
747 tristate "Dallas/Maxim DS1343/DS1344"
748 help
749 If you say yes here you get support for the
750 Dallas/Maxim DS1343 and DS1344 real time clock chips.
751 Support for trickle charger, alarm is provided.
752
753 This driver can also be built as a module. If so, the module
754 will be called rtc-ds1343.
755
756config RTC_DRV_DS1347
757 select REGMAP_SPI
758 tristate "Dallas/Maxim DS1347"
759 help
760 If you say yes here you get support for the
761 Dallas/Maxim DS1347 chips.
762
763 This driver only supports the RTC feature, and not other chip
764 features such as alarms.
765
766 This driver can also be built as a module. If so, the module
767 will be called rtc-ds1347.
768
769config RTC_DRV_DS1390
770 tristate "Dallas/Maxim DS1390/93/94"
771 help
772 If you say yes here you get support for the
773 Dallas/Maxim DS1390/93/94 chips.
774
775 This driver supports the RTC feature and trickle charging but not
776 other chip features such as alarms.
777
778 This driver can also be built as a module. If so, the module
779 will be called rtc-ds1390.
780
781config RTC_DRV_MAX6916
782 tristate "Maxim MAX6916"
783 help
784 If you say yes here you will get support for the
785 Maxim MAX6916 SPI RTC chip.
786
787 This driver only supports the RTC feature, and not other chip
788 features such as alarms.
789
790 This driver can also be built as a module. If so, the module
791 will be called rtc-max6916.
792
793config RTC_DRV_R9701
794 tristate "Epson RTC-9701JE"
795 help
796 If you say yes here you will get support for the
797 Epson RTC-9701JE SPI RTC chip.
798
799 This driver can also be built as a module. If so, the module
800 will be called rtc-r9701.
801
802config RTC_DRV_RX4581
803 tristate "Epson RX-4581"
804 help
805 If you say yes here you will get support for the Epson RX-4581.
806
807 This driver can also be built as a module. If so the module
808 will be called rtc-rx4581.
809
810config RTC_DRV_RX6110
811 tristate "Epson RX-6110"
812 select REGMAP_SPI
813 help
814 If you say yes here you will get support for the Epson RX-6610.
815
816 This driver can also be built as a module. If so the module
817 will be called rtc-rx6110.
818
819config RTC_DRV_RS5C348
820 tristate "Ricoh RS5C348A/B"
821 help
822 If you say yes here you get support for the
823 Ricoh RS5C348A and RS5C348B RTC chips.
824
825 This driver can also be built as a module. If so, the module
826 will be called rtc-rs5c348.
827
828config RTC_DRV_MAX6902
829 tristate "Maxim MAX6902"
830 help
831 If you say yes here you will get support for the
832 Maxim MAX6902 SPI RTC chip.
833
834 This driver can also be built as a module. If so, the module
835 will be called rtc-max6902.
836
837config RTC_DRV_PCF2123
838 tristate "NXP PCF2123"
839 select REGMAP_SPI
840 help
841 If you say yes here you get support for the NXP PCF2123
842 RTC chip.
843
844 This driver can also be built as a module. If so, the module
845 will be called rtc-pcf2123.
846
847config RTC_DRV_MCP795
848 tristate "Microchip MCP795"
849 help
850 If you say yes here you will get support for the Microchip MCP795.
851
852 This driver can also be built as a module. If so the module
853 will be called rtc-mcp795.
854
855endif # SPI_MASTER
856
857#
858# Helper to resolve issues with configs that have SPI enabled but I2C
859# modular. See SND_SOC_I2C_AND_SPI for more information
860#
861config RTC_I2C_AND_SPI
862 tristate
863 default m if I2C=m
864 default y if I2C=y
865 default y if SPI_MASTER=y
866
867comment "SPI and I2C RTC drivers"
868
869config RTC_DRV_DS3232
870 tristate "Dallas/Maxim DS3232/DS3234"
871 depends on RTC_I2C_AND_SPI
872 select REGMAP_I2C if I2C
873 select REGMAP_SPI if SPI_MASTER
874 help
875 If you say yes here you get support for Dallas Semiconductor
876 DS3232 and DS3234 real-time clock chips. If an interrupt is associated
877 with the device, the alarm functionality is supported.
878
879 This driver can also be built as a module. If so, the module
880 will be called rtc-ds3232.
881
882config RTC_DRV_DS3232_HWMON
883 bool "HWMON support for Dallas/Maxim DS3232/DS3234"
884 depends on RTC_DRV_DS3232 && HWMON && !(RTC_DRV_DS3232=y && HWMON=m)
885 default y
886 help
887 Say Y here if you want to expose temperature sensor data on
888 rtc-ds3232
889
890config RTC_DRV_PCF2127
891 tristate "NXP PCF2127"
892 depends on RTC_I2C_AND_SPI
893 select REGMAP_I2C if I2C
894 select REGMAP_SPI if SPI_MASTER
895 select WATCHDOG_CORE if WATCHDOG
896 help
897 If you say yes here you get support for the NXP PCF2127/29 RTC
898 chips with integrated quartz crystal for industrial applications.
899 Both chips also have watchdog timer and tamper switch detection
900 features.
901
902 PCF2127 has an additional feature of 512 bytes battery backed
903 memory that's accessible using nvmem interface.
904
905 This driver can also be built as a module. If so, the module
906 will be called rtc-pcf2127.
907
908config RTC_DRV_RV3029C2
909 tristate "Micro Crystal RV3029/3049"
910 depends on RTC_I2C_AND_SPI
911 select REGMAP_I2C if I2C
912 select REGMAP_SPI if SPI_MASTER
913 help
914 If you say yes here you get support for the Micro Crystal
915 RV3029 and RV3049 RTC chips.
916
917 This driver can also be built as a module. If so, the module
918 will be called rtc-rv3029c2.
919
920config RTC_DRV_RV3029_HWMON
921 bool "HWMON support for RV3029/3049"
922 depends on RTC_DRV_RV3029C2 && HWMON
923 depends on !(RTC_DRV_RV3029C2=y && HWMON=m)
924 default y
925 help
926 Say Y here if you want to expose temperature sensor data on
927 rtc-rv3029.
928
929comment "Platform RTC drivers"
930
931# this 'CMOS' RTC driver is arch dependent because it requires
932# <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
933# global rtc_lock ... it's not yet just another platform_device.
934
935config RTC_DRV_CMOS
936 tristate "PC-style 'CMOS'"
937 depends on X86 || ARM || PPC || MIPS || SPARC64
938 default y if X86
939 select RTC_MC146818_LIB
940 help
941 Say "yes" here to get direct support for the real time clock
942 found in every PC or ACPI-based system, and some other boards.
943 Specifically the original MC146818, compatibles like those in
944 PC south bridges, the DS12887 or M48T86, some multifunction
945 or LPC bus chips, and so on.
946
947 Your system will need to define the platform device used by
948 this driver, otherwise it won't be accessible. This means
949 you can safely enable this driver if you don't know whether
950 or not your board has this kind of hardware.
951
952 This driver can also be built as a module. If so, the module
953 will be called rtc-cmos.
954
955config RTC_DRV_ALPHA
956 bool "Alpha PC-style CMOS"
957 depends on ALPHA
958 select RTC_MC146818_LIB
959 default y
960 help
961 Direct support for the real-time clock found on every Alpha
962 system, specifically MC146818 compatibles. If in doubt, say Y.
963
964config RTC_DRV_VRTC
965 tristate "Virtual RTC for Intel MID platforms"
966 depends on X86_INTEL_MID
967 default y if X86_INTEL_MID
968
969 help
970 Say "yes" here to get direct support for the real time clock
971 found on Moorestown platforms. The VRTC is a emulated RTC that
972 derives its clock source from a real RTC in the PMIC. The MC146818
973 style programming interface is mostly conserved, but any
974 updates are done via IPC calls to the system controller FW.
975
976config RTC_DRV_DS1216
977 tristate "Dallas DS1216"
978 depends on SNI_RM
979 help
980 If you say yes here you get support for the Dallas DS1216 RTC chips.
981
982config RTC_DRV_DS1286
983 tristate "Dallas DS1286"
984 depends on HAS_IOMEM
985 help
986 If you say yes here you get support for the Dallas DS1286 RTC chips.
987
988config RTC_DRV_DS1511
989 tristate "Dallas DS1511"
990 depends on HAS_IOMEM
991 help
992 If you say yes here you get support for the
993 Dallas DS1511 timekeeping/watchdog chip.
994
995 This driver can also be built as a module. If so, the module
996 will be called rtc-ds1511.
997
998config RTC_DRV_DS1553
999 tristate "Maxim/Dallas DS1553"
1000 depends on HAS_IOMEM
1001 help
1002 If you say yes here you get support for the
1003 Maxim/Dallas DS1553 timekeeping chip.
1004
1005 This driver can also be built as a module. If so, the module
1006 will be called rtc-ds1553.
1007
1008config RTC_DRV_DS1685_FAMILY
1009 tristate "Dallas/Maxim DS1685 Family"
1010 help
1011 If you say yes here you get support for the Dallas/Maxim DS1685
1012 family of real time chips. This family includes the DS1685/DS1687,
1013 DS1689/DS1693, DS17285/DS17287, DS17485/DS17487, and
1014 DS17885/DS17887 chips.
1015
1016 This driver can also be built as a module. If so, the module
1017 will be called rtc-ds1685.
1018
1019choice
1020 prompt "Subtype"
1021 depends on RTC_DRV_DS1685_FAMILY
1022 default RTC_DRV_DS1685
1023
1024config RTC_DRV_DS1685
1025 bool "DS1685/DS1687"
1026 help
1027 This enables support for the Dallas/Maxim DS1685/DS1687 real time
1028 clock chip.
1029
1030 This chip is commonly found in SGI O2 (IP32) and SGI Octane (IP30)
1031 systems, as well as EPPC-405-UC modules by electronic system design
1032 GmbH.
1033
1034config RTC_DRV_DS1689
1035 bool "DS1689/DS1693"
1036 help
1037 This enables support for the Dallas/Maxim DS1689/DS1693 real time
1038 clock chip.
1039
1040 This is an older RTC chip, supplanted by the DS1685/DS1687 above,
1041 which supports a few minor features such as Vcc, Vbat, and Power
1042 Cycle counters, plus a customer-specific, 8-byte ROM/Serial number.
1043
1044 It also works for the even older DS1688/DS1691 RTC chips, which are
1045 virtually the same and carry the same model number. Both chips
1046 have 114 bytes of user NVRAM.
1047
1048config RTC_DRV_DS17285
1049 bool "DS17285/DS17287"
1050 help
1051 This enables support for the Dallas/Maxim DS17285/DS17287 real time
1052 clock chip.
1053
1054 This chip features 2kb of extended NV-SRAM. It may possibly be
1055 found in some SGI O2 systems (rare).
1056
1057config RTC_DRV_DS17485
1058 bool "DS17485/DS17487"
1059 help
1060 This enables support for the Dallas/Maxim DS17485/DS17487 real time
1061 clock chip.
1062
1063 This chip features 4kb of extended NV-SRAM.
1064
1065config RTC_DRV_DS17885
1066 bool "DS17885/DS17887"
1067 help
1068 This enables support for the Dallas/Maxim DS17885/DS17887 real time
1069 clock chip.
1070
1071 This chip features 8kb of extended NV-SRAM.
1072
1073endchoice
1074
1075config RTC_DRV_DS1742
1076 tristate "Maxim/Dallas DS1742/1743"
1077 depends on HAS_IOMEM
1078 help
1079 If you say yes here you get support for the
1080 Maxim/Dallas DS1742/1743 timekeeping chip.
1081
1082 This driver can also be built as a module. If so, the module
1083 will be called rtc-ds1742.
1084
1085config RTC_DRV_DS2404
1086 tristate "Maxim/Dallas DS2404"
1087 help
1088 If you say yes here you get support for the
1089 Dallas DS2404 RTC chip.
1090
1091 This driver can also be built as a module. If so, the module
1092 will be called rtc-ds2404.
1093
1094config RTC_DRV_DA9052
1095 tristate "Dialog DA9052/DA9053 RTC"
1096 depends on PMIC_DA9052
1097 help
1098 Say y here to support the RTC driver for Dialog Semiconductor
1099 DA9052-BC and DA9053-AA/Bx PMICs.
1100
1101config RTC_DRV_DA9055
1102 tristate "Dialog Semiconductor DA9055 RTC"
1103 depends on MFD_DA9055
1104 help
1105 If you say yes here you will get support for the
1106 RTC of the Dialog DA9055 PMIC.
1107
1108 This driver can also be built as a module. If so, the module
1109 will be called rtc-da9055
1110
1111config RTC_DRV_DA9063
1112 tristate "Dialog Semiconductor DA9063/DA9062 RTC"
1113 depends on MFD_DA9063 || MFD_DA9062
1114 help
1115 If you say yes here you will get support for the RTC subsystem
1116 for the Dialog Semiconductor PMIC chips DA9063 and DA9062.
1117
1118 This driver can also be built as a module. If so, the module
1119 will be called "rtc-da9063".
1120
1121config RTC_DRV_EFI
1122 tristate "EFI RTC"
1123 depends on EFI && !X86
1124 help
1125 If you say yes here you will get support for the EFI
1126 Real Time Clock.
1127
1128 This driver can also be built as a module. If so, the module
1129 will be called rtc-efi.
1130
1131config RTC_DRV_STK17TA8
1132 tristate "Simtek STK17TA8"
1133 depends on HAS_IOMEM
1134 help
1135 If you say yes here you get support for the
1136 Simtek STK17TA8 timekeeping chip.
1137
1138 This driver can also be built as a module. If so, the module
1139 will be called rtc-stk17ta8.
1140
1141config RTC_DRV_M48T86
1142 tristate "ST M48T86/Dallas DS12887"
1143 help
1144 If you say Y here you will get support for the
1145 ST M48T86 and Dallas DS12887 RTC chips.
1146
1147 This driver can also be built as a module. If so, the module
1148 will be called rtc-m48t86.
1149
1150config RTC_DRV_M48T35
1151 tristate "ST M48T35"
1152 depends on HAS_IOMEM
1153 help
1154 If you say Y here you will get support for the
1155 ST M48T35 RTC chip.
1156
1157 This driver can also be built as a module, if so, the module
1158 will be called "rtc-m48t35".
1159
1160config RTC_DRV_M48T59
1161 tristate "ST M48T59/M48T08/M48T02"
1162 depends on HAS_IOMEM
1163 help
1164 If you say Y here you will get support for the
1165 ST M48T59 RTC chip and compatible ST M48T08 and M48T02.
1166
1167 These chips are usually found in Sun SPARC and UltraSPARC
1168 workstations.
1169
1170 This driver can also be built as a module, if so, the module
1171 will be called "rtc-m48t59".
1172
1173config RTC_DRV_MSM6242
1174 tristate "Oki MSM6242"
1175 depends on HAS_IOMEM
1176 help
1177 If you say yes here you get support for the Oki MSM6242
1178 timekeeping chip. It is used in some Amiga models (e.g. A2000).
1179
1180 This driver can also be built as a module. If so, the module
1181 will be called rtc-msm6242.
1182
1183config RTC_DRV_BQ4802
1184 tristate "TI BQ4802"
1185 depends on HAS_IOMEM
1186 help
1187 If you say Y here you will get support for the TI
1188 BQ4802 RTC chip.
1189
1190 This driver can also be built as a module. If so, the module
1191 will be called rtc-bq4802.
1192
1193config RTC_DRV_RP5C01
1194 tristate "Ricoh RP5C01"
1195 depends on HAS_IOMEM
1196 help
1197 If you say yes here you get support for the Ricoh RP5C01
1198 timekeeping chip. It is used in some Amiga models (e.g. A3000
1199 and A4000).
1200
1201 This driver can also be built as a module. If so, the module
1202 will be called rtc-rp5c01.
1203
1204config RTC_DRV_V3020
1205 tristate "EM Microelectronic V3020"
1206 help
1207 If you say yes here you will get support for the
1208 EM Microelectronic v3020 RTC chip.
1209
1210 This driver can also be built as a module. If so, the module
1211 will be called rtc-v3020.
1212
1213config RTC_DRV_WM831X
1214 tristate "Wolfson Microelectronics WM831x RTC"
1215 depends on MFD_WM831X
1216 help
1217 If you say yes here you will get support for the RTC subsystem
1218 of the Wolfson Microelectronics WM831X series PMICs.
1219
1220 This driver can also be built as a module. If so, the module
1221 will be called "rtc-wm831x".
1222
1223config RTC_DRV_WM8350
1224 tristate "Wolfson Microelectronics WM8350 RTC"
1225 depends on MFD_WM8350
1226 help
1227 If you say yes here you will get support for the RTC subsystem
1228 of the Wolfson Microelectronics WM8350.
1229
1230 This driver can also be built as a module. If so, the module
1231 will be called "rtc-wm8350".
1232
1233config RTC_DRV_SC27XX
1234 tristate "Spreadtrum SC27xx RTC"
1235 depends on MFD_SC27XX_PMIC || COMPILE_TEST
1236 help
1237 If you say Y here you will get support for the RTC subsystem
1238 of the Spreadtrum SC27xx series PMICs. The SC27xx series PMICs
1239 includes the SC2720, SC2721, SC2723, SC2730 and SC2731 chips.
1240
1241 This driver can also be built as a module. If so, the module
1242 will be called rtc-sc27xx.
1243
1244config RTC_DRV_SPEAR
1245 tristate "SPEAR ST RTC"
1246 depends on PLAT_SPEAR || COMPILE_TEST
1247 default y
1248 help
1249 If you say Y here you will get support for the RTC found on
1250 spear
1251
1252config RTC_DRV_PCF50633
1253 depends on MFD_PCF50633
1254 tristate "NXP PCF50633 RTC"
1255 help
1256 If you say yes here you get support for the RTC subsystem of the
1257 NXP PCF50633 used in embedded systems.
1258
1259config RTC_DRV_AB3100
1260 tristate "ST-Ericsson AB3100 RTC"
1261 depends on AB3100_CORE
1262 default y if AB3100_CORE
1263 help
1264 Select this to enable the ST-Ericsson AB3100 Mixed Signal IC RTC
1265 support. This chip contains a battery- and capacitor-backed RTC.
1266
1267config RTC_DRV_AB8500
1268 tristate "ST-Ericsson AB8500 RTC"
1269 depends on AB8500_CORE
1270 select RTC_INTF_DEV
1271 select RTC_INTF_DEV_UIE_EMUL
1272 help
1273 Select this to enable the ST-Ericsson AB8500 power management IC RTC
1274 support. This chip contains a battery- and capacitor-backed RTC.
1275
1276config RTC_DRV_OPAL
1277 tristate "IBM OPAL RTC driver"
1278 depends on PPC_POWERNV
1279 default y
1280 help
1281 If you say yes here you get support for the PowerNV platform RTC
1282 driver based on OPAL interfaces.
1283
1284 This driver can also be built as a module. If so, the module
1285 will be called rtc-opal.
1286
1287config RTC_DRV_ZYNQMP
1288 tristate "Xilinx Zynq Ultrascale+ MPSoC RTC"
1289 depends on OF
1290 help
1291 If you say yes here you get support for the RTC controller found on
1292 Xilinx Zynq Ultrascale+ MPSoC.
1293
1294config RTC_DRV_CROS_EC
1295 tristate "Chrome OS EC RTC driver"
1296 depends on CROS_EC
1297 help
1298 If you say yes here you will get support for the
1299 Chrome OS Embedded Controller's RTC.
1300
1301 This driver can also be built as a module. If so, the module
1302 will be called rtc-cros-ec.
1303
1304comment "on-CPU RTC drivers"
1305
1306config RTC_DRV_ASM9260
1307 tristate "Alphascale asm9260 RTC"
1308 depends on MACH_ASM9260 || COMPILE_TEST
1309 help
1310 If you say yes here you get support for the RTC on the
1311 Alphascale asm9260 SoC.
1312
1313 This driver can also be built as a module. If so, the module
1314 will be called rtc-asm9260.
1315
1316config RTC_DRV_DAVINCI
1317 tristate "TI DaVinci RTC"
1318 depends on ARCH_DAVINCI_DM365 || COMPILE_TEST
1319 help
1320 If you say yes here you get support for the RTC on the
1321 DaVinci platforms (DM365).
1322
1323 This driver can also be built as a module. If so, the module
1324 will be called rtc-davinci.
1325
1326config RTC_DRV_DIGICOLOR
1327 tristate "Conexant Digicolor RTC"
1328 depends on ARCH_DIGICOLOR || COMPILE_TEST
1329 help
1330 If you say yes here you get support for the RTC on Conexant
1331 Digicolor platforms. This currently includes the CX92755 SoC.
1332
1333 This driver can also be built as a module. If so, the module
1334 will be called rtc-digicolor.
1335
1336config RTC_DRV_IMXDI
1337 tristate "Freescale IMX DryIce Real Time Clock"
1338 depends on ARCH_MXC
1339 help
1340 Support for Freescale IMX DryIce RTC
1341
1342 This driver can also be built as a module, if so, the module
1343 will be called "rtc-imxdi".
1344
1345config RTC_DRV_FSL_FTM_ALARM
1346 tristate "Freescale FlexTimer alarm timer"
1347 depends on ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
1348 help
1349 For the FlexTimer in LS1012A, LS1021A, LS1028A, LS1043A, LS1046A,
1350 LS1088A, LS208xA, we can use FTM as the wakeup source.
1351
1352 Say y here to enable FTM alarm support. The FTM alarm provides
1353 alarm functions for wakeup system from deep sleep.
1354
1355 This driver can also be built as a module, if so, the module
1356 will be called "rtc-fsl-ftm-alarm".
1357
1358config RTC_DRV_MESON
1359 tristate "Amlogic Meson RTC"
1360 depends on (ARM && ARCH_MESON) || COMPILE_TEST
1361 select REGMAP_MMIO
1362 help
1363 Support for the RTC block on the Amlogic Meson6, Meson8, Meson8b
1364 and Meson8m2 SoCs.
1365
1366 This driver can also be built as a module, if so, the module
1367 will be called "rtc-meson".
1368
1369config RTC_DRV_MESON_VRTC
1370 tristate "Amlogic Meson Virtual RTC"
1371 depends on ARCH_MESON || COMPILE_TEST
1372 default m if ARCH_MESON
1373 help
1374 If you say yes here you will get support for the
1375 Virtual RTC of Amlogic SoCs.
1376
1377 This driver can also be built as a module. If so, the module
1378 will be called rtc-meson-vrtc.
1379
1380config RTC_DRV_OMAP
1381 tristate "TI OMAP Real Time Clock"
1382 depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
1383 depends on OF
1384 depends on PINCTRL
1385 select GENERIC_PINCONF
1386 help
1387 Say "yes" here to support the on chip real time clock
1388 present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
1389
1390 This driver can also be built as a module, if so, module
1391 will be called rtc-omap.
1392
1393config HAVE_S3C_RTC
1394 bool
1395 help
1396 This will include RTC support for Samsung SoCs. If
1397 you want to include RTC support for any machine, kindly
1398 select this in the respective mach-XXXX/Kconfig file.
1399
1400config RTC_DRV_S3C
1401 tristate "Samsung S3C series SoC RTC"
1402 depends on ARCH_S3C64XX || HAVE_S3C_RTC || COMPILE_TEST
1403 help
1404 RTC (Realtime Clock) driver for the clock inbuilt into the
1405 Samsung S3C24XX series of SoCs. This can provide periodic
1406 interrupt rates from 1Hz to 64Hz for user programs, and
1407 wakeup from Alarm.
1408
1409 The driver currently supports the common features on all the
1410 S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
1411 and S3C2442.
1412
1413 This driver can also be build as a module. If so, the module
1414 will be called rtc-s3c.
1415
1416config RTC_DRV_EP93XX
1417 tristate "Cirrus Logic EP93XX"
1418 depends on ARCH_EP93XX || COMPILE_TEST
1419 help
1420 If you say yes here you get support for the
1421 RTC embedded in the Cirrus Logic EP93XX processors.
1422
1423 This driver can also be built as a module. If so, the module
1424 will be called rtc-ep93xx.
1425
1426config RTC_DRV_SA1100
1427 tristate "SA11x0/PXA2xx/PXA910"
1428 depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
1429 help
1430 If you say Y here you will get access to the real time clock
1431 built into your SA11x0 or PXA2xx CPU.
1432
1433 To compile this driver as a module, choose M here: the
1434 module will be called rtc-sa1100.
1435
1436config RTC_DRV_SH
1437 tristate "SuperH On-Chip RTC"
1438 depends on SUPERH || ARCH_RENESAS
1439 help
1440 Say Y here to enable support for the on-chip RTC found in
1441 most SuperH processors. This RTC is also found in RZ/A SoCs.
1442
1443 To compile this driver as a module, choose M here: the
1444 module will be called rtc-sh.
1445
1446config RTC_DRV_VR41XX
1447 tristate "NEC VR41XX"
1448 depends on CPU_VR41XX || COMPILE_TEST
1449 help
1450 If you say Y here you will get access to the real time clock
1451 built into your NEC VR41XX CPU.
1452
1453 To compile this driver as a module, choose M here: the
1454 module will be called rtc-vr41xx.
1455
1456config RTC_DRV_PL030
1457 tristate "ARM AMBA PL030 RTC"
1458 depends on ARM_AMBA
1459 help
1460 If you say Y here you will get access to ARM AMBA
1461 PrimeCell PL030 RTC found on certain ARM SOCs.
1462
1463 To compile this driver as a module, choose M here: the
1464 module will be called rtc-pl030.
1465
1466config RTC_DRV_PL031
1467 tristate "ARM AMBA PL031 RTC"
1468 depends on ARM_AMBA
1469 help
1470 If you say Y here you will get access to ARM AMBA
1471 PrimeCell PL031 RTC found on certain ARM SOCs.
1472
1473 To compile this driver as a module, choose M here: the
1474 module will be called rtc-pl031.
1475
1476config RTC_DRV_AT91RM9200
1477 tristate "AT91RM9200 or some AT91SAM9 RTC"
1478 depends on ARCH_AT91 || COMPILE_TEST
1479 depends on OF
1480 help
1481 Driver for the internal RTC (Realtime Clock) module found on
1482 Atmel AT91RM9200's and some AT91SAM9 chips. On AT91SAM9 chips
1483 this is powered by the backup power supply.
1484
1485config RTC_DRV_AT91SAM9
1486 tristate "AT91SAM9 RTT as RTC"
1487 depends on ARCH_AT91 || COMPILE_TEST
1488 depends on OF && HAS_IOMEM
1489 select MFD_SYSCON
1490 help
1491 Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
1492 can be used as an RTC thanks to the backup power supply (e.g. a
1493 small coin cell battery) which keeps this block and the GPBR
1494 (General Purpose Backup Registers) block powered when the device
1495 is shutdown.
1496 Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
1497 probably want to use the real RTC block instead of the "RTT as an
1498 RTC" driver.
1499
1500config RTC_DRV_AU1XXX
1501 tristate "Au1xxx Counter0 RTC support"
1502 depends on MIPS_ALCHEMY
1503 help
1504 This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
1505 counter) to be used as a RTC.
1506
1507 This driver can also be built as a module. If so, the module
1508 will be called rtc-au1xxx.
1509
1510config RTC_DRV_RS5C313
1511 tristate "Ricoh RS5C313"
1512 depends on SH_LANDISK
1513 help
1514 If you say yes here you get support for the Ricoh RS5C313 RTC chips.
1515
1516config RTC_DRV_GENERIC
1517 tristate "Generic RTC support"
1518 # Please consider writing a new RTC driver instead of using the generic
1519 # RTC abstraction
1520 depends on PARISC || M68K || PPC || SUPERH || COMPILE_TEST
1521 help
1522 Say Y or M here to enable RTC support on systems using the generic
1523 RTC abstraction. If you do not know what you are doing, you should
1524 just say Y.
1525
1526config RTC_DRV_PXA
1527 tristate "PXA27x/PXA3xx"
1528 depends on ARCH_PXA
1529 select RTC_DRV_SA1100
1530 help
1531 If you say Y here you will get access to the real time clock
1532 built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
1533 consisting of an SA1100 compatible RTC and the extended PXA RTC.
1534
1535 This RTC driver uses PXA RTC registers available since pxa27x
1536 series (RDxR, RYxR) instead of legacy RCNR, RTAR.
1537
1538config RTC_DRV_VT8500
1539 tristate "VIA/WonderMedia 85xx SoC RTC"
1540 depends on ARCH_VT8500 || COMPILE_TEST
1541 help
1542 If you say Y here you will get access to the real time clock
1543 built into your VIA VT8500 SoC or its relatives.
1544
1545
1546config RTC_DRV_SUN4V
1547 bool "SUN4V Hypervisor RTC"
1548 depends on SPARC64
1549 help
1550 If you say Y here you will get support for the Hypervisor
1551 based RTC on SUN4V systems.
1552
1553config RTC_DRV_SUN6I
1554 bool "Allwinner A31 RTC"
1555 default MACH_SUN6I || MACH_SUN8I
1556 depends on COMMON_CLK
1557 depends on ARCH_SUNXI || COMPILE_TEST
1558 help
1559 If you say Y here you will get support for the RTC found in
1560 some Allwinner SoCs like the A31 or the A64.
1561
1562config RTC_DRV_SUNXI
1563 tristate "Allwinner sun4i/sun7i RTC"
1564 depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
1565 help
1566 If you say Y here you will get support for the RTC found on
1567 Allwinner A10/A20.
1568
1569config RTC_DRV_STARFIRE
1570 bool "Starfire RTC"
1571 depends on SPARC64
1572 help
1573 If you say Y here you will get support for the RTC found on
1574 Starfire systems.
1575
1576config RTC_DRV_TX4939
1577 tristate "TX4939 SoC"
1578 depends on SOC_TX4939 || COMPILE_TEST
1579 help
1580 Driver for the internal RTC (Realtime Clock) module found on
1581 Toshiba TX4939 SoC.
1582
1583config RTC_DRV_MV
1584 tristate "Marvell SoC RTC"
1585 depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
1586 help
1587 If you say yes here you will get support for the in-chip RTC
1588 that can be found in some of Marvell's SoC devices, such as
1589 the Kirkwood 88F6281 and 88F6192.
1590
1591 This driver can also be built as a module. If so, the module
1592 will be called rtc-mv.
1593
1594config RTC_DRV_ARMADA38X
1595 tristate "Armada 38x Marvell SoC RTC"
1596 depends on ARCH_MVEBU || COMPILE_TEST
1597 help
1598 If you say yes here you will get support for the in-chip RTC
1599 that can be found in the Armada 38x Marvell's SoC device
1600
1601 This driver can also be built as a module. If so, the module
1602 will be called armada38x-rtc.
1603
1604config RTC_DRV_CADENCE
1605 tristate "Cadence RTC driver"
1606 depends on OF && HAS_IOMEM
1607 help
1608 If you say Y here you will get access to Cadence RTC IP
1609 found on certain SOCs.
1610
1611 To compile this driver as a module, choose M here: the
1612 module will be called rtc-cadence.
1613
1614config RTC_DRV_FTRTC010
1615 tristate "Faraday Technology FTRTC010 RTC"
1616 depends on HAS_IOMEM
1617 default ARCH_GEMINI
1618 help
1619 If you say Y here you will get support for the
1620 Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.
1621
1622 This driver can also be built as a module. If so, the module
1623 will be called rtc-ftrtc010.
1624
1625config RTC_DRV_PS3
1626 tristate "PS3 RTC"
1627 depends on PPC_PS3
1628 help
1629 If you say yes here you will get support for the RTC on PS3.
1630
1631 This driver can also be built as a module. If so, the module
1632 will be called rtc-ps3.
1633
1634config RTC_DRV_COH901331
1635 tristate "ST-Ericsson COH 901 331 RTC"
1636 depends on ARCH_U300 || COMPILE_TEST
1637 help
1638 If you say Y here you will get access to ST-Ericsson
1639 COH 901 331 RTC clock found in some ST-Ericsson Mobile
1640 Platforms.
1641
1642 This driver can also be built as a module. If so, the module
1643 will be called "rtc-coh901331".
1644
1645
1646config RTC_DRV_STMP
1647 tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
1648 depends on ARCH_MXS || COMPILE_TEST
1649 select STMP_DEVICE
1650 help
1651 If you say yes here you will get support for the onboard
1652 STMP3xxx/i.MX23/i.MX28 RTC.
1653
1654 This driver can also be built as a module. If so, the module
1655 will be called rtc-stmp3xxx.
1656
1657config RTC_DRV_PCAP
1658 tristate "PCAP RTC"
1659 depends on EZX_PCAP
1660 help
1661 If you say Y here you will get support for the RTC found on
1662 the PCAP2 ASIC used on some Motorola phones.
1663
1664config RTC_DRV_MC13XXX
1665 depends on MFD_MC13XXX
1666 tristate "Freescale MC13xxx RTC"
1667 help
1668 This enables support for the RTCs found on Freescale's PMICs
1669 MC13783 and MC13892.
1670
1671config RTC_DRV_MPC5121
1672 tristate "Freescale MPC5121 built-in RTC"
1673 depends on PPC_MPC512x || PPC_MPC52xx
1674 help
1675 If you say yes here you will get support for the
1676 built-in RTC on MPC5121 or on MPC5200.
1677
1678 This driver can also be built as a module. If so, the module
1679 will be called rtc-mpc5121.
1680
1681config RTC_DRV_JZ4740
1682 tristate "Ingenic JZ4740 SoC"
1683 depends on MIPS || COMPILE_TEST
1684 depends on OF
1685 help
1686 If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
1687 controllers.
1688
1689 This driver can also be built as a module. If so, the module
1690 will be called rtc-jz4740.
1691
1692config RTC_DRV_LPC24XX
1693 tristate "NXP RTC for LPC178x/18xx/408x/43xx"
1694 depends on ARCH_LPC18XX || COMPILE_TEST
1695 depends on OF && HAS_IOMEM
1696 help
1697 This enables support for the NXP RTC found which can be found on
1698 NXP LPC178x/18xx/408x/43xx devices.
1699
1700 If you have one of the devices above enable this driver to use
1701 the hardware RTC. This driver can also be built as a module. If
1702 so, the module will be called rtc-lpc24xx.
1703
1704config RTC_DRV_LPC32XX
1705 depends on ARCH_LPC32XX || COMPILE_TEST
1706 tristate "NXP LPC32XX RTC"
1707 help
1708 This enables support for the NXP RTC in the LPC32XX
1709
1710 This driver can also be built as a module. If so, the module
1711 will be called rtc-lpc32xx.
1712
1713config RTC_DRV_PM8XXX
1714 tristate "Qualcomm PMIC8XXX RTC"
1715 depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
1716 help
1717 If you say yes here you get support for the
1718 Qualcomm PMIC8XXX RTC.
1719
1720 To compile this driver as a module, choose M here: the
1721 module will be called rtc-pm8xxx.
1722
1723config RTC_DRV_TEGRA
1724 tristate "NVIDIA Tegra Internal RTC driver"
1725 depends on ARCH_TEGRA || COMPILE_TEST
1726 help
1727 If you say yes here you get support for the
1728 Tegra 200 series internal RTC module.
1729
1730 This drive can also be built as a module. If so, the module
1731 will be called rtc-tegra.
1732
1733config RTC_DRV_LOONGSON1
1734 tristate "loongson1 RTC support"
1735 depends on MACH_LOONGSON32
1736 help
1737 This is a driver for the loongson1 on-chip Counter0 (Time-Of-Year
1738 counter) to be used as a RTC.
1739
1740 This driver can also be built as a module. If so, the module
1741 will be called rtc-ls1x.
1742
1743config RTC_DRV_MXC
1744 tristate "Freescale MXC Real Time Clock"
1745 depends on ARCH_MXC
1746 help
1747 If you say yes here you get support for the Freescale MXC
1748 RTC module.
1749
1750 This driver can also be built as a module, if so, the module
1751 will be called "rtc-mxc".
1752
1753config RTC_DRV_MXC_V2
1754 tristate "Freescale MXC Real Time Clock for i.MX53"
1755 depends on ARCH_MXC
1756 help
1757 If you say yes here you get support for the Freescale MXC
1758 SRTC module in i.MX53 processor.
1759
1760 This driver can also be built as a module, if so, the module
1761 will be called "rtc-mxc_v2".
1762
1763config RTC_DRV_SNVS
1764 tristate "Freescale SNVS RTC support"
1765 select REGMAP_MMIO
1766 depends on ARCH_MXC || COMPILE_TEST
1767 depends on HAS_IOMEM
1768 depends on OF
1769 help
1770 If you say yes here you get support for the Freescale SNVS
1771 Low Power (LP) RTC module.
1772
1773 This driver can also be built as a module, if so, the module
1774 will be called "rtc-snvs".
1775
1776config RTC_DRV_IMX_SC
1777 depends on IMX_SCU
1778 depends on HAVE_ARM_SMCCC
1779 tristate "NXP i.MX System Controller RTC support"
1780 help
1781 If you say yes here you get support for the NXP i.MX System
1782 Controller RTC module.
1783
1784config RTC_DRV_SIRFSOC
1785 tristate "SiRFSOC RTC"
1786 depends on ARCH_SIRF
1787 help
1788 Say "yes" here to support the real time clock on SiRF SOC chips.
1789 This driver can also be built as a module called rtc-sirfsoc.
1790
1791config RTC_DRV_ST_LPC
1792 tristate "STMicroelectronics LPC RTC"
1793 depends on ARCH_STI
1794 depends on OF
1795 help
1796 Say Y here to include STMicroelectronics Low Power Controller
1797 (LPC) based RTC support.
1798
1799 To compile this driver as a module, choose M here: the
1800 module will be called rtc-st-lpc.
1801
1802config RTC_DRV_MOXART
1803 tristate "MOXA ART RTC"
1804 depends on ARCH_MOXART || COMPILE_TEST
1805 help
1806 If you say yes here you get support for the MOXA ART
1807 RTC module.
1808
1809 This driver can also be built as a module. If so, the module
1810 will be called rtc-moxart
1811
1812config RTC_DRV_MT2712
1813 tristate "MediaTek MT2712 SoC based RTC"
1814 depends on ARCH_MEDIATEK || COMPILE_TEST
1815 help
1816 This enables support for the real time clock built in the MediaTek
1817 SoCs for MT2712.
1818
1819 This drive can also be built as a module. If so, the module
1820 will be called rtc-mt2712.
1821
1822config RTC_DRV_MT6397
1823 tristate "MediaTek PMIC based RTC"
1824 depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
1825 help
1826 This selects the MediaTek(R) RTC driver. RTC is part of MediaTek
1827 MT6397 PMIC. You should enable MT6397 PMIC MFD before select
1828 MediaTek(R) RTC driver.
1829
1830 If you want to use MediaTek(R) RTC interface, select Y or M here.
1831
1832config RTC_DRV_MT7622
1833 tristate "MediaTek SoC based RTC"
1834 depends on ARCH_MEDIATEK || COMPILE_TEST
1835 help
1836 This enables support for the real time clock built in the MediaTek
1837 SoCs.
1838
1839 This drive can also be built as a module. If so, the module
1840 will be called rtc-mt7622.
1841
1842config RTC_DRV_XGENE
1843 tristate "APM X-Gene RTC"
1844 depends on HAS_IOMEM
1845 depends on ARCH_XGENE || COMPILE_TEST
1846 help
1847 If you say yes here you get support for the APM X-Gene SoC real time
1848 clock.
1849
1850 This driver can also be built as a module, if so, the module
1851 will be called "rtc-xgene".
1852
1853config RTC_DRV_PIC32
1854 tristate "Microchip PIC32 RTC"
1855 depends on MACH_PIC32
1856 default y
1857 help
1858 If you say yes here you get support for the PIC32 RTC module.
1859
1860 This driver can also be built as a module. If so, the module
1861 will be called rtc-pic32
1862
1863config RTC_DRV_R7301
1864 tristate "EPSON TOYOCOM RTC-7301SF/DG"
1865 select REGMAP_MMIO
1866 depends on OF && HAS_IOMEM
1867 help
1868 If you say yes here you get support for the EPSON TOYOCOM
1869 RTC-7301SF/DG chips.
1870
1871 This driver can also be built as a module. If so, the module
1872 will be called rtc-r7301.
1873
1874config RTC_DRV_STM32
1875 tristate "STM32 RTC"
1876 select REGMAP_MMIO
1877 depends on ARCH_STM32 || COMPILE_TEST
1878 help
1879 If you say yes here you get support for the STM32 On-Chip
1880 Real Time Clock.
1881
1882 This driver can also be built as a module, if so, the module
1883 will be called "rtc-stm32".
1884
1885config RTC_DRV_CPCAP
1886 depends on MFD_CPCAP
1887 tristate "Motorola CPCAP RTC"
1888 help
1889 Say y here for CPCAP rtc found on some Motorola phones
1890 and tablets such as Droid 4.
1891
1892config RTC_DRV_RTD119X
1893 bool "Realtek RTD129x RTC"
1894 depends on ARCH_REALTEK || COMPILE_TEST
1895 default ARCH_REALTEK
1896 help
1897 If you say yes here, you get support for the RTD1295 SoC
1898 Real Time Clock.
1899
1900config RTC_DRV_ASPEED
1901 tristate "ASPEED RTC"
1902 depends on OF
1903 depends on ARCH_ASPEED || COMPILE_TEST
1904 help
1905 If you say yes here you get support for the ASPEED BMC SoC real time
1906 clocks.
1907
1908 This driver can also be built as a module, if so, the module
1909 will be called "rtc-aspeed".
1910
1911comment "HID Sensor RTC drivers"
1912
1913config RTC_DRV_HID_SENSOR_TIME
1914 tristate "HID Sensor Time"
1915 depends on USB_HID
1916 depends on HID_SENSOR_HUB && IIO
1917 select HID_SENSOR_IIO_COMMON
1918 help
1919 Say yes here to build support for the HID Sensors of type Time.
1920 This drivers makes such sensors available as RTCs.
1921
1922 If this driver is compiled as a module, it will be named
1923 rtc-hid-sensor-time.
1924
1925config RTC_DRV_GOLDFISH
1926 tristate "Goldfish Real Time Clock"
1927 depends on OF && HAS_IOMEM
1928 depends on GOLDFISH || COMPILE_TEST
1929 help
1930 Say yes to enable RTC driver for the Goldfish based virtual platform.
1931
1932 Goldfish is a code name for the virtual platform developed by Google
1933 for Android emulation.
1934
1935config RTC_DRV_WILCO_EC
1936 tristate "Wilco EC RTC"
1937 depends on WILCO_EC
1938 default m
1939 help
1940 If you say yes here, you get read/write support for the Real Time
1941 Clock on the Wilco Embedded Controller (Wilco is a kind of Chromebook)
1942
1943 This can also be built as a module. If so, the module will
1944 be named "rtc_wilco_ec".
1945
1946endif # RTC_CLASS
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# RTC class/drivers configuration
4#
5
6config RTC_LIB
7 bool
8
9config RTC_MC146818_LIB
10 bool
11 select RTC_LIB
12
13menuconfig RTC_CLASS
14 bool "Real Time Clock"
15 default n
16 depends on !S390
17 select RTC_LIB
18 help
19 Generic RTC class support. If you say yes here, you will
20 be allowed to plug one or more RTCs to your system. You will
21 probably want to enable one or more of the interfaces below.
22
23if RTC_CLASS
24
25config RTC_HCTOSYS
26 bool "Set system time from RTC on startup and resume"
27 default y
28 help
29 If you say yes here, the system time (wall clock) will be set using
30 the value read from a specified RTC device. This is useful to avoid
31 unnecessary fsck runs at boot time, and to network better.
32
33config RTC_HCTOSYS_DEVICE
34 string "RTC used to set the system time"
35 depends on RTC_HCTOSYS
36 default "rtc0"
37 help
38 The RTC device that will be used to (re)initialize the system
39 clock, usually rtc0. Initialization is done when the system
40 starts up, and when it resumes from a low power state. This
41 device should record time in UTC, since the kernel won't do
42 timezone correction.
43
44 This clock should be battery-backed, so that it reads the correct
45 time when the system boots from a power-off state. Otherwise, your
46 system will need an external clock source (like an NTP server).
47
48 If the clock you specify here is not battery backed, it may still
49 be useful to reinitialize system time when resuming from system
50 sleep states. Do not specify an RTC here unless it stays powered
51 during all this system's supported sleep states.
52
53config RTC_SYSTOHC
54 bool "Set the RTC time based on NTP synchronization"
55 default y
56 help
57 If you say yes here, the system time (wall clock) will be stored
58 in the RTC specified by RTC_HCTOSYS_DEVICE approximately every 11
59 minutes if userspace reports synchronized NTP status.
60
61config RTC_SYSTOHC_DEVICE
62 string "RTC used to synchronize NTP adjustment"
63 depends on RTC_SYSTOHC
64 default RTC_HCTOSYS_DEVICE if RTC_HCTOSYS
65 default "rtc0"
66 help
67 The RTC device used for NTP synchronization. The main difference
68 between RTC_HCTOSYS_DEVICE and RTC_SYSTOHC_DEVICE is that this
69 one can sleep when setting time, because it runs in the workqueue
70 context.
71
72config RTC_DEBUG
73 bool "RTC debug support"
74 help
75 Say yes here to enable debugging support in the RTC framework
76 and individual RTC drivers.
77
78config RTC_LIB_KUNIT_TEST
79 tristate "KUnit test for RTC lib functions" if !KUNIT_ALL_TESTS
80 depends on KUNIT
81 default KUNIT_ALL_TESTS
82 help
83 Enable this option to test RTC library functions.
84
85 If unsure, say N.
86
87config RTC_NVMEM
88 bool "RTC non volatile storage support"
89 select NVMEM
90 default RTC_CLASS
91 help
92 Say yes here to add support for the non volatile (often battery
93 backed) storage present on RTCs.
94
95comment "RTC interfaces"
96
97config RTC_INTF_SYSFS
98 bool "/sys/class/rtc/rtcN (sysfs)"
99 depends on SYSFS
100 default RTC_CLASS
101 help
102 Say yes here if you want to use your RTCs using sysfs interfaces,
103 /sys/class/rtc/rtc0 through /sys/.../rtcN.
104
105 If unsure, say Y.
106
107config RTC_INTF_PROC
108 bool "/proc/driver/rtc (procfs for rtcN)"
109 depends on PROC_FS
110 default RTC_CLASS
111 help
112 Say yes here if you want to use your system clock RTC through
113 the proc interface, /proc/driver/rtc.
114 Other RTCs will not be available through that API.
115 If there is no RTC for the system clock, then the first RTC(rtc0)
116 is used by default.
117
118 If unsure, say Y.
119
120config RTC_INTF_DEV
121 bool "/dev/rtcN (character devices)"
122 default RTC_CLASS
123 help
124 Say yes here if you want to use your RTCs using the /dev
125 interfaces, which "udev" sets up as /dev/rtc0 through
126 /dev/rtcN.
127
128 You may want to set up a symbolic link so one of these
129 can be accessed as /dev/rtc, which is a name
130 expected by "hwclock" and some other programs. Recent
131 versions of "udev" are known to set up the symlink for you.
132
133 If unsure, say Y.
134
135config RTC_INTF_DEV_UIE_EMUL
136 bool "RTC UIE emulation on dev interface"
137 depends on RTC_INTF_DEV
138 help
139 Provides an emulation for RTC_UIE if the underlying rtc chip
140 driver does not expose RTC_UIE ioctls. Those requests generate
141 once-per-second update interrupts, used for synchronization.
142
143 The emulation code will read the time from the hardware
144 clock several times per second, please enable this option
145 only if you know that you really need it.
146
147config RTC_DRV_TEST
148 tristate "Test driver/device"
149 help
150 If you say yes here you get support for the
151 RTC test driver. It's a software RTC which can be
152 used to test the RTC subsystem APIs. It gets
153 the time from the system clock.
154 You want this driver only if you are doing development
155 on the RTC subsystem. Please read the source code
156 for further details.
157
158 This driver can also be built as a module. If so, the module
159 will be called rtc-test.
160
161comment "I2C RTC drivers"
162
163if I2C
164
165config RTC_DRV_88PM860X
166 tristate "Marvell 88PM860x"
167 depends on MFD_88PM860X
168 help
169 If you say yes here you get support for RTC function in Marvell
170 88PM860x chips.
171
172 This driver can also be built as a module. If so, the module
173 will be called rtc-88pm860x.
174
175config RTC_DRV_88PM80X
176 tristate "Marvell 88PM80x"
177 depends on MFD_88PM800
178 help
179 If you say yes here you get support for RTC function in Marvell
180 88PM80x chips.
181
182 This driver can also be built as a module. If so, the module
183 will be called rtc-88pm80x.
184
185config RTC_DRV_ABB5ZES3
186 select REGMAP_I2C
187 tristate "Abracon AB-RTCMC-32.768kHz-B5ZE-S3"
188 help
189 If you say yes here you get support for the Abracon
190 AB-RTCMC-32.768kHz-B5ZE-S3 I2C RTC chip.
191
192 This driver can also be built as a module. If so, the module
193 will be called rtc-ab-b5ze-s3.
194
195config RTC_DRV_ABEOZ9
196 select REGMAP_I2C
197 tristate "Abracon AB-RTCMC-32.768kHz-EOZ9"
198 help
199 If you say yes here you get support for the Abracon
200 AB-RTCMC-32.768kHz-EOA9 I2C RTC chip.
201
202 This driver can also be built as a module. If so, the module
203 will be called rtc-ab-e0z9.
204
205config RTC_DRV_ABX80X
206 tristate "Abracon ABx80x"
207 select WATCHDOG_CORE if WATCHDOG
208 help
209 If you say yes here you get support for Abracon AB080X and AB180X
210 families of ultra-low-power battery- and capacitor-backed real-time
211 clock chips.
212
213 This driver can also be built as a module. If so, the module
214 will be called rtc-abx80x.
215
216config RTC_DRV_AC100
217 tristate "X-Powers AC100"
218 depends on MFD_AC100
219 help
220 If you say yes here you get support for the real-time clock found
221 in X-Powers AC100 family peripheral ICs.
222
223 This driver can also be built as a module. If so, the module
224 will be called rtc-ac100.
225
226config RTC_DRV_BRCMSTB
227 tristate "Broadcom STB wake-timer"
228 depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST
229 default ARCH_BRCMSTB || BMIPS_GENERIC
230 help
231 If you say yes here you get support for the wake-timer found on
232 Broadcom STB SoCs (BCM7xxx).
233
234 This driver can also be built as a module. If so, the module will
235 be called rtc-brcmstb-waketimer.
236
237config RTC_DRV_AS3722
238 tristate "ams AS3722 RTC driver"
239 depends on MFD_AS3722
240 help
241 If you say yes here you get support for the RTC of ams AS3722 PMIC
242 chips.
243
244 This driver can also be built as a module. If so, the module
245 will be called rtc-as3722.
246
247config RTC_DRV_DS1307
248 tristate "Dallas/Maxim DS1307/37/38/39/40/41, ST M41T00, EPSON RX-8025, ISL12057"
249 select REGMAP_I2C
250 select WATCHDOG_CORE if WATCHDOG
251 help
252 If you say yes here you get support for various compatible RTC
253 chips (often with battery backup) connected with I2C. This driver
254 should handle DS1307, DS1337, DS1338, DS1339, DS1340, DS1341,
255 ST M41T00, EPSON RX-8025, Intersil ISL12057 and probably other chips.
256 In some cases the RTC must already have been initialized (by
257 manufacturing or a bootloader).
258
259 The first seven registers on these chips hold an RTC, and other
260 registers may add features such as NVRAM, a trickle charger for
261 the RTC/NVRAM backup power, and alarms. NVRAM is visible in
262 sysfs, but other chip features may not be available.
263
264 This driver can also be built as a module. If so, the module
265 will be called rtc-ds1307.
266
267config RTC_DRV_DS1307_CENTURY
268 bool "Century bit support for rtc-ds1307"
269 depends on RTC_DRV_DS1307
270 default n
271 help
272 The DS1307 driver suffered from a bug where it was enabling the
273 century bit inconditionnally but never used it when reading the time.
274 It made the driver unable to support dates beyond 2099.
275 Setting this option will add proper support for the century bit but if
276 the time was previously set using a kernel predating this option,
277 reading the date will return a date in the next century.
278 To solve that, you could boot a kernel without this option set, set
279 the RTC date and then boot a kernel with this option set.
280
281config RTC_DRV_DS1374
282 tristate "Dallas/Maxim DS1374"
283 help
284 If you say yes here you get support for Dallas Semiconductor
285 DS1374 real-time clock chips. If an interrupt is associated
286 with the device, the alarm functionality is supported.
287
288 This driver can also be built as a module. If so, the module
289 will be called rtc-ds1374.
290
291config RTC_DRV_DS1374_WDT
292 bool "Dallas/Maxim DS1374 watchdog timer"
293 depends on RTC_DRV_DS1374 && WATCHDOG
294 select WATCHDOG_CORE
295 help
296 If you say Y here you will get support for the
297 watchdog timer in the Dallas Semiconductor DS1374
298 real-time clock chips.
299
300config RTC_DRV_DS1672
301 tristate "Dallas/Maxim DS1672"
302 help
303 If you say yes here you get support for the
304 Dallas/Maxim DS1672 timekeeping chip.
305
306 This driver can also be built as a module. If so, the module
307 will be called rtc-ds1672.
308
309config RTC_DRV_HYM8563
310 tristate "Haoyu Microelectronics HYM8563"
311 depends on OF
312 help
313 Say Y to enable support for the HYM8563 I2C RTC chip. Apart
314 from the usual rtc functions it provides a clock output of
315 up to 32kHz.
316
317 This driver can also be built as a module. If so, the module
318 will be called rtc-hym8563.
319
320config RTC_DRV_LP8788
321 tristate "TI LP8788 RTC driver"
322 depends on MFD_LP8788
323 help
324 Say Y to enable support for the LP8788 RTC/ALARM driver.
325
326config RTC_DRV_MAX6900
327 tristate "Maxim MAX6900"
328 help
329 If you say yes here you will get support for the
330 Maxim MAX6900 I2C RTC chip.
331
332 This driver can also be built as a module. If so, the module
333 will be called rtc-max6900.
334
335config RTC_DRV_MAX8907
336 tristate "Maxim MAX8907"
337 depends on MFD_MAX8907 || COMPILE_TEST
338 select REGMAP_IRQ
339 help
340 If you say yes here you will get support for the
341 RTC of Maxim MAX8907 PMIC.
342
343 This driver can also be built as a module. If so, the module
344 will be called rtc-max8907.
345
346config RTC_DRV_MAX8925
347 tristate "Maxim MAX8925"
348 depends on MFD_MAX8925
349 help
350 If you say yes here you will get support for the
351 RTC of Maxim MAX8925 PMIC.
352
353 This driver can also be built as a module. If so, the module
354 will be called rtc-max8925.
355
356config RTC_DRV_MAX8998
357 tristate "Maxim MAX8998"
358 depends on MFD_MAX8998
359 help
360 If you say yes here you will get support for the
361 RTC of Maxim MAX8998 PMIC.
362
363 This driver can also be built as a module. If so, the module
364 will be called rtc-max8998.
365
366config RTC_DRV_MAX8997
367 tristate "Maxim MAX8997"
368 depends on MFD_MAX8997
369 help
370 If you say yes here you will get support for the
371 RTC of Maxim MAX8997 PMIC.
372
373 This driver can also be built as a module. If so, the module
374 will be called rtc-max8997.
375
376config RTC_DRV_MAX31335
377 tristate "Analog Devices MAX31335"
378 depends on I2C
379 depends on COMMON_CLK
380 depends on HWMON || HWMON=n
381 select REGMAP_I2C
382 help
383 If you say yes here you get support for the Analog Devices
384 MAX31335.
385
386 This driver can also be built as a module. If so, the module
387 will be called rtc-max31335.
388
389config RTC_DRV_MAX77686
390 tristate "Maxim MAX77686"
391 depends on MFD_MAX77686 || MFD_MAX77620 || MFD_MAX77714 || COMPILE_TEST
392 help
393 If you say yes here you will get support for the
394 RTC of Maxim MAX77686/MAX77620/MAX77802 PMIC.
395
396 This driver can also be built as a module. If so, the module
397 will be called rtc-max77686.
398
399config RTC_DRV_NCT3018Y
400 tristate "Nuvoton NCT3018Y"
401 depends on OF
402 help
403 If you say yes here you get support for the Nuvoton NCT3018Y I2C RTC
404 chip.
405
406 This driver can also be built as a module, if so, the module will be
407 called "rtc-nct3018y".
408
409config RTC_DRV_RK808
410 tristate "Rockchip RK805/RK808/RK809/RK817/RK818 RTC"
411 depends on MFD_RK8XX
412 help
413 If you say yes here you will get support for the
414 RTC of RK805, RK809 and RK817, RK808 and RK818 PMIC.
415
416 This driver can also be built as a module. If so, the module
417 will be called rk808-rtc.
418
419config RTC_DRV_RS5C372
420 tristate "Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A"
421 help
422 If you say yes here you get support for the
423 Ricoh R2025S/D, RS5C372A, RS5C372B, RV5C386, and RV5C387A RTC chips.
424
425 This driver can also be built as a module. If so, the module
426 will be called rtc-rs5c372.
427
428config RTC_DRV_ISL1208
429 tristate "Intersil ISL1208"
430 help
431 If you say yes here you get support for the
432 Intersil ISL1208 RTC chip.
433
434 This driver can also be built as a module. If so, the module
435 will be called rtc-isl1208.
436
437config RTC_DRV_ISL12022
438 tristate "Intersil ISL12022"
439 select REGMAP_I2C
440 help
441 If you say yes here you get support for the
442 Intersil ISL12022 RTC chip.
443
444 This driver can also be built as a module. If so, the module
445 will be called rtc-isl12022.
446
447config RTC_DRV_ISL12026
448 tristate "Intersil ISL12026"
449 depends on OF
450 help
451 If you say yes here you get support for the
452 Intersil ISL12026 RTC chip.
453
454 This driver can also be built as a module. If so, the module
455 will be called rtc-isl12026.
456
457config RTC_DRV_X1205
458 tristate "Xicor/Intersil X1205"
459 help
460 If you say yes here you get support for the
461 Xicor/Intersil X1205 RTC chip.
462
463 This driver can also be built as a module. If so, the module
464 will be called rtc-x1205.
465
466config RTC_DRV_PCF8523
467 tristate "NXP PCF8523"
468 select REGMAP_I2C
469 help
470 If you say yes here you get support for the NXP PCF8523 RTC
471 chips.
472
473 This driver can also be built as a module. If so, the module
474 will be called rtc-pcf8523.
475
476config RTC_DRV_PCF85063
477 tristate "NXP PCF85063"
478 select REGMAP_I2C
479 help
480 If you say yes here you get support for the PCF85063 RTC chip
481
482 This driver can also be built as a module. If so, the module
483 will be called rtc-pcf85063.
484
485config RTC_DRV_PCF85363
486 tristate "NXP PCF85363"
487 select REGMAP_I2C
488 help
489 If you say yes here you get support for the PCF85363 RTC chip.
490
491 This driver can also be built as a module. If so, the module
492 will be called rtc-pcf85363.
493
494 The nvmem interface will be named pcf85363-#, where # is the
495 zero-based instance number.
496
497config RTC_DRV_PCF8563
498 tristate "Philips PCF8563/Epson RTC8564"
499 help
500 If you say yes here you get support for the
501 Philips PCF8563 RTC chip. The Epson RTC8564
502 should work as well.
503
504 This driver can also be built as a module. If so, the module
505 will be called rtc-pcf8563.
506
507config RTC_DRV_PCF8583
508 tristate "Philips PCF8583"
509 help
510 If you say yes here you get support for the Philips PCF8583
511 RTC chip found on Acorn RiscPCs. This driver supports the
512 platform specific method of retrieving the current year from
513 the RTC's SRAM. It will work on other platforms with the same
514 chip, but the year will probably have to be tweaked.
515
516 This driver can also be built as a module. If so, the module
517 will be called rtc-pcf8583.
518
519config RTC_DRV_M41T80
520 tristate "ST M41T62/65/M41T80/81/82/83/84/85/87 and compatible"
521 help
522 If you say Y here you will get support for the ST M41T60
523 and M41T80 RTC chips series. Currently, the following chips are
524 supported: M41T62, M41T65, M41T80, M41T81, M41T82, M41T83, M41ST84,
525 M41ST85, M41ST87, and MicroCrystal RV4162.
526
527 This driver can also be built as a module. If so, the module
528 will be called rtc-m41t80.
529
530config RTC_DRV_M41T80_WDT
531 bool "ST M41T65/M41T80 series RTC watchdog timer"
532 depends on RTC_DRV_M41T80
533 help
534 If you say Y here you will get support for the
535 watchdog timer in the ST M41T60 and M41T80 RTC chips series.
536
537config RTC_DRV_BD70528
538 tristate "ROHM BD71815 and BD71828 PMIC RTC"
539 depends on MFD_ROHM_BD71828
540 help
541 If you say Y here you will get support for the RTC
542 block on ROHM BD71815 and BD71828 Power Management IC.
543
544 This driver can also be built as a module. If so, the module
545 will be called rtc-bd70528.
546
547config RTC_DRV_BQ32K
548 tristate "TI BQ32000"
549 help
550 If you say Y here you will get support for the TI
551 BQ32000 I2C RTC chip.
552
553 This driver can also be built as a module. If so, the module
554 will be called rtc-bq32k.
555
556config RTC_DRV_TWL92330
557 bool "TI TWL92330/Menelaus"
558 depends on MENELAUS
559 help
560 If you say yes here you get support for the RTC on the
561 TWL92330 "Menelaus" power management chip, used with OMAP2
562 platforms. The support is integrated with the rest of
563 the Menelaus driver; it's not separate module.
564
565config RTC_DRV_TWL4030
566 tristate "TI TWL4030/TWL5030/TWL6030/TPS659x0"
567 depends on TWL4030_CORE
568 depends on OF
569 help
570 If you say yes here you get support for the RTC on the
571 TWL4030/TWL5030/TWL6030 family chips, used mostly with OMAP3 platforms.
572
573 This driver can also be built as a module. If so, the module
574 will be called rtc-twl.
575
576config RTC_DRV_PALMAS
577 tristate "TI Palmas RTC driver"
578 depends on MFD_PALMAS
579 help
580 If you say yes here you get support for the RTC of TI PALMA series PMIC
581 chips.
582
583 This driver can also be built as a module. If so, the module
584 will be called rtc-palma.
585
586config RTC_DRV_TPS6586X
587 tristate "TI TPS6586X RTC driver"
588 depends on MFD_TPS6586X
589 help
590 TI Power Management IC TPS6586X supports RTC functionality
591 along with alarm. This driver supports the RTC driver for
592 the TPS6586X RTC module.
593
594config RTC_DRV_TPS6594
595 tristate "TI TPS6594 RTC driver"
596 depends on MFD_TPS6594
597 default MFD_TPS6594
598 help
599 TI Power Management IC TPS6594 supports RTC functionality
600 along with alarm. This driver supports the RTC driver for
601 the TPS6594 RTC module.
602
603 This driver can also be built as a module. If so, the module
604 will be called rtc-tps6594.
605
606config RTC_DRV_TPS65910
607 tristate "TI TPS65910 RTC driver"
608 depends on MFD_TPS65910
609 help
610 If you say yes here you get support for the RTC on the
611 TPS65910 chips.
612
613 This driver can also be built as a module. If so, the module
614 will be called rtc-tps65910.
615
616config RTC_DRV_RC5T583
617 tristate "RICOH 5T583 RTC driver"
618 depends on MFD_RC5T583
619 help
620 If you say yes here you get support for the RTC on the
621 RICOH 5T583 chips.
622
623 This driver can also be built as a module. If so, the module
624 will be called rtc-rc5t583.
625
626config RTC_DRV_RC5T619
627 tristate "RICOH RC5T619 RTC driver"
628 depends on MFD_RN5T618
629 help
630 If you say yes here you get support for the RTC on the
631 RICOH RC5T619 chips.
632
633 This driver can also be built as a module. If so, the module
634 will be called rtc-rc5t619.
635
636config RTC_DRV_S35390A
637 tristate "Seiko Instruments S-35390A"
638 select BITREVERSE
639 help
640 If you say yes here you will get support for the Seiko
641 Instruments S-35390A.
642
643 This driver can also be built as a module. If so the module
644 will be called rtc-s35390a.
645
646config RTC_DRV_FM3130
647 tristate "Ramtron FM3130"
648 help
649 If you say Y here you will get support for the
650 Ramtron FM3130 RTC chips.
651 Ramtron FM3130 is a chip with two separate devices inside,
652 RTC clock and FRAM. This driver provides only RTC functionality.
653
654 This driver can also be built as a module. If so the module
655 will be called rtc-fm3130.
656
657config RTC_DRV_RX8010
658 tristate "Epson RX8010SJ"
659 select REGMAP_I2C
660 help
661 If you say yes here you get support for the Epson RX8010SJ RTC
662 chip.
663
664 This driver can also be built as a module. If so, the module
665 will be called rtc-rx8010.
666
667config RTC_DRV_RX8581
668 tristate "Epson RX-8571/RX-8581"
669 select REGMAP_I2C
670 help
671 If you say yes here you will get support for the Epson RX-8571/
672 RX-8581.
673
674 This driver can also be built as a module. If so the module
675 will be called rtc-rx8581.
676
677config RTC_DRV_RX8025
678 tristate "Epson RX-8025SA/NB"
679 help
680 If you say yes here you get support for the Epson
681 RX-8025SA/NB RTC chips.
682
683 This driver can also be built as a module. If so, the module
684 will be called rtc-rx8025.
685
686config RTC_DRV_EM3027
687 tristate "EM Microelectronic EM3027"
688 help
689 If you say yes here you get support for the EM
690 Microelectronic EM3027 RTC chips.
691
692 This driver can also be built as a module. If so, the module
693 will be called rtc-em3027.
694
695config RTC_DRV_RV3028
696 tristate "Micro Crystal RV3028"
697 select REGMAP_I2C
698 help
699 If you say yes here you get support for the Micro Crystal
700 RV3028.
701
702 This driver can also be built as a module. If so, the module
703 will be called rtc-rv3028.
704
705config RTC_DRV_RV3032
706 tristate "Micro Crystal RV3032"
707 select REGMAP_I2C
708 help
709 If you say yes here you get support for the Micro Crystal
710 RV3032.
711
712 This driver can also be built as a module. If so, the module
713 will be called rtc-rv3032.
714
715config RTC_DRV_RV8803
716 tristate "Micro Crystal RV8803, Epson RX8900"
717 help
718 If you say yes here you get support for the Micro Crystal RV8803 and
719 Epson RX8900 RTC chips.
720
721 This driver can also be built as a module. If so, the module
722 will be called rtc-rv8803.
723
724config RTC_DRV_S5M
725 tristate "Samsung S2M/S5M series"
726 depends on MFD_SEC_CORE || COMPILE_TEST
727 select REGMAP_IRQ
728 select REGMAP_I2C
729 help
730 If you say yes here you will get support for the
731 RTC of Samsung S2MPS14 and S5M PMIC series.
732
733 This driver can also be built as a module. If so, the module
734 will be called rtc-s5m.
735
736config RTC_DRV_SD3078
737 tristate "ZXW Shenzhen whwave SD3078"
738 select REGMAP_I2C
739 help
740 If you say yes here you get support for the ZXW Shenzhen whwave
741 SD3078 RTC chips.
742
743 This driver can also be built as a module. If so, the module
744 will be called rtc-sd3078
745
746endif # I2C
747
748comment "SPI RTC drivers"
749
750if SPI_MASTER
751
752config RTC_DRV_M41T93
753 tristate "ST M41T93"
754 help
755 If you say yes here you will get support for the
756 ST M41T93 SPI RTC chip.
757
758 This driver can also be built as a module. If so, the module
759 will be called rtc-m41t93.
760
761config RTC_DRV_M41T94
762 tristate "ST M41T94"
763 help
764 If you say yes here you will get support for the
765 ST M41T94 SPI RTC chip.
766
767 This driver can also be built as a module. If so, the module
768 will be called rtc-m41t94.
769
770config RTC_DRV_DS1302
771 tristate "Dallas/Maxim DS1302"
772 depends on SPI
773 help
774 If you say yes here you get support for the Dallas DS1302 RTC chips.
775
776 This driver can also be built as a module. If so, the module
777 will be called rtc-ds1302.
778
779config RTC_DRV_DS1305
780 tristate "Dallas/Maxim DS1305/DS1306"
781 help
782 Select this driver to get support for the Dallas/Maxim DS1305
783 and DS1306 real time clock chips. These support a trickle
784 charger, alarms, and NVRAM in addition to the clock.
785
786 This driver can also be built as a module. If so, the module
787 will be called rtc-ds1305.
788
789config RTC_DRV_DS1343
790 select REGMAP_SPI
791 tristate "Dallas/Maxim DS1343/DS1344"
792 help
793 If you say yes here you get support for the
794 Dallas/Maxim DS1343 and DS1344 real time clock chips.
795 Support for trickle charger, alarm is provided.
796
797 This driver can also be built as a module. If so, the module
798 will be called rtc-ds1343.
799
800config RTC_DRV_DS1347
801 select REGMAP_SPI
802 tristate "Dallas/Maxim DS1347"
803 help
804 If you say yes here you get support for the
805 Dallas/Maxim DS1347 chips.
806
807 This driver only supports the RTC feature, and not other chip
808 features such as alarms.
809
810 This driver can also be built as a module. If so, the module
811 will be called rtc-ds1347.
812
813config RTC_DRV_DS1390
814 tristate "Dallas/Maxim DS1390/93/94"
815 help
816 If you say yes here you get support for the
817 Dallas/Maxim DS1390/93/94 chips.
818
819 This driver supports the RTC feature and trickle charging but not
820 other chip features such as alarms.
821
822 This driver can also be built as a module. If so, the module
823 will be called rtc-ds1390.
824
825config RTC_DRV_MAX6916
826 tristate "Maxim MAX6916"
827 help
828 If you say yes here you will get support for the
829 Maxim MAX6916 SPI RTC chip.
830
831 This driver only supports the RTC feature, and not other chip
832 features such as alarms.
833
834 This driver can also be built as a module. If so, the module
835 will be called rtc-max6916.
836
837config RTC_DRV_R9701
838 tristate "Epson RTC-9701JE"
839 help
840 If you say yes here you will get support for the
841 Epson RTC-9701JE SPI RTC chip.
842
843 This driver can also be built as a module. If so, the module
844 will be called rtc-r9701.
845
846config RTC_DRV_RX4581
847 tristate "Epson RX-4581"
848 help
849 If you say yes here you will get support for the Epson RX-4581.
850
851 This driver can also be built as a module. If so the module
852 will be called rtc-rx4581.
853
854config RTC_DRV_RS5C348
855 tristate "Ricoh RS5C348A/B"
856 help
857 If you say yes here you get support for the
858 Ricoh RS5C348A and RS5C348B RTC chips.
859
860 This driver can also be built as a module. If so, the module
861 will be called rtc-rs5c348.
862
863config RTC_DRV_MAX6902
864 tristate "Maxim MAX6902"
865 help
866 If you say yes here you will get support for the
867 Maxim MAX6902 SPI RTC chip.
868
869 This driver can also be built as a module. If so, the module
870 will be called rtc-max6902.
871
872config RTC_DRV_PCF2123
873 tristate "NXP PCF2123"
874 select REGMAP_SPI
875 help
876 If you say yes here you get support for the NXP PCF2123
877 RTC chip.
878
879 This driver can also be built as a module. If so, the module
880 will be called rtc-pcf2123.
881
882config RTC_DRV_MCP795
883 tristate "Microchip MCP795"
884 help
885 If you say yes here you will get support for the Microchip MCP795.
886
887 This driver can also be built as a module. If so the module
888 will be called rtc-mcp795.
889
890endif # SPI_MASTER
891
892#
893# Helper to resolve issues with configs that have SPI enabled but I2C
894# modular. See SND_SOC_I2C_AND_SPI for more information
895#
896config RTC_I2C_AND_SPI
897 tristate
898 default m if I2C=m
899 default y if I2C=y
900 default y if SPI_MASTER=y
901
902comment "SPI and I2C RTC drivers"
903
904config RTC_DRV_DS3232
905 tristate "Dallas/Maxim DS3232/DS3234"
906 depends on RTC_I2C_AND_SPI
907 select REGMAP_I2C if I2C
908 select REGMAP_SPI if SPI_MASTER
909 help
910 If you say yes here you get support for Dallas Semiconductor
911 DS3232 and DS3234 real-time clock chips. If an interrupt is associated
912 with the device, the alarm functionality is supported.
913
914 This driver can also be built as a module. If so, the module
915 will be called rtc-ds3232.
916
917config RTC_DRV_DS3232_HWMON
918 bool "HWMON support for Dallas/Maxim DS3232/DS3234"
919 depends on RTC_DRV_DS3232 && HWMON && !(RTC_DRV_DS3232=y && HWMON=m)
920 default y
921 help
922 Say Y here if you want to expose temperature sensor data on
923 rtc-ds3232
924
925config RTC_DRV_PCF2127
926 tristate "NXP PCF2127"
927 depends on RTC_I2C_AND_SPI
928 select REGMAP_I2C if I2C
929 select REGMAP_SPI if SPI_MASTER
930 select WATCHDOG_CORE if WATCHDOG
931 help
932 If you say yes here you get support for the NXP PCF2127/29/31 RTC
933 chips with integrated quartz crystal for industrial applications.
934 These chips also have watchdog timer and tamper switch detection
935 features.
936
937 PCF2127 has an additional feature of 512 bytes battery backed
938 memory that's accessible using nvmem interface.
939
940 This driver can also be built as a module. If so, the module
941 will be called rtc-pcf2127.
942
943config RTC_DRV_RV3029C2
944 tristate "Micro Crystal RV3029/3049"
945 depends on RTC_I2C_AND_SPI
946 select REGMAP_I2C if I2C
947 select REGMAP_SPI if SPI_MASTER
948 help
949 If you say yes here you get support for the Micro Crystal
950 RV3029 and RV3049 RTC chips.
951
952 This driver can also be built as a module. If so, the module
953 will be called rtc-rv3029c2.
954
955config RTC_DRV_RV3029_HWMON
956 bool "HWMON support for RV3029/3049"
957 depends on RTC_DRV_RV3029C2 && HWMON
958 depends on !(RTC_DRV_RV3029C2=y && HWMON=m)
959 default y
960 help
961 Say Y here if you want to expose temperature sensor data on
962 rtc-rv3029.
963
964config RTC_DRV_RX6110
965 tristate "Epson RX-6110"
966 depends on RTC_I2C_AND_SPI
967 select REGMAP_SPI if SPI_MASTER
968 select REGMAP_I2C if I2C
969 help
970 If you say yes here you will get support for the Epson RX-6110.
971
972 This driver can also be built as a module. If so the module
973 will be called rtc-rx6110.
974
975comment "Platform RTC drivers"
976
977# this 'CMOS' RTC driver is arch dependent because it requires
978# <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
979# global rtc_lock ... it's not yet just another platform_device.
980
981config RTC_DRV_CMOS
982 tristate "PC-style 'CMOS'"
983 depends on X86 || ARM || PPC || MIPS || SPARC64
984 depends on HAS_IOPORT || MACH_DECSTATION
985 default y if X86
986 select RTC_MC146818_LIB
987 help
988 Say "yes" here to get direct support for the real time clock
989 found in every PC or ACPI-based system, and some other boards.
990 Specifically the original MC146818, compatibles like those in
991 PC south bridges, the DS12887 or M48T86, some multifunction
992 or LPC bus chips, and so on.
993
994 Your system will need to define the platform device used by
995 this driver, otherwise it won't be accessible. This means
996 you can safely enable this driver if you don't know whether
997 or not your board has this kind of hardware.
998
999 This driver can also be built as a module. If so, the module
1000 will be called rtc-cmos.
1001
1002config RTC_DRV_ALPHA
1003 bool "Alpha PC-style CMOS"
1004 depends on ALPHA
1005 depends on HAS_IOPORT
1006 select RTC_MC146818_LIB
1007 default y
1008 help
1009 Direct support for the real-time clock found on every Alpha
1010 system, specifically MC146818 compatibles. If in doubt, say Y.
1011
1012config RTC_DRV_DS1216
1013 tristate "Dallas DS1216"
1014 depends on SNI_RM
1015 help
1016 If you say yes here you get support for the Dallas DS1216 RTC chips.
1017
1018config RTC_DRV_DS1286
1019 tristate "Dallas DS1286"
1020 depends on HAS_IOMEM
1021 help
1022 If you say yes here you get support for the Dallas DS1286 RTC chips.
1023
1024config RTC_DRV_DS1511
1025 tristate "Dallas DS1511"
1026 depends on HAS_IOMEM
1027 help
1028 If you say yes here you get support for the
1029 Dallas DS1511 timekeeping/watchdog chip.
1030
1031 This driver can also be built as a module. If so, the module
1032 will be called rtc-ds1511.
1033
1034config RTC_DRV_DS1553
1035 tristate "Maxim/Dallas DS1553"
1036 depends on HAS_IOMEM
1037 help
1038 If you say yes here you get support for the
1039 Maxim/Dallas DS1553 timekeeping chip.
1040
1041 This driver can also be built as a module. If so, the module
1042 will be called rtc-ds1553.
1043
1044config RTC_DRV_DS1685_FAMILY
1045 tristate "Dallas/Maxim DS1685 Family"
1046 depends on HAS_IOMEM
1047 help
1048 If you say yes here you get support for the Dallas/Maxim DS1685
1049 family of real time chips. This family includes the DS1685/DS1687,
1050 DS1689/DS1693, DS17285/DS17287, DS17485/DS17487, and
1051 DS17885/DS17887 chips.
1052
1053 This driver can also be built as a module. If so, the module
1054 will be called rtc-ds1685.
1055
1056choice
1057 prompt "Subtype"
1058 depends on RTC_DRV_DS1685_FAMILY
1059 default RTC_DRV_DS1685
1060
1061config RTC_DRV_DS1685
1062 bool "DS1685/DS1687"
1063 help
1064 This enables support for the Dallas/Maxim DS1685/DS1687 real time
1065 clock chip.
1066
1067 This chip is commonly found in SGI O2 (IP32) and SGI Octane (IP30)
1068 systems, as well as EPPC-405-UC modules by electronic system design
1069 GmbH.
1070
1071config RTC_DRV_DS1689
1072 bool "DS1689/DS1693"
1073 help
1074 This enables support for the Dallas/Maxim DS1689/DS1693 real time
1075 clock chip.
1076
1077 This is an older RTC chip, supplanted by the DS1685/DS1687 above,
1078 which supports a few minor features such as Vcc, Vbat, and Power
1079 Cycle counters, plus a customer-specific, 8-byte ROM/Serial number.
1080
1081 It also works for the even older DS1688/DS1691 RTC chips, which are
1082 virtually the same and carry the same model number. Both chips
1083 have 114 bytes of user NVRAM.
1084
1085config RTC_DRV_DS17285
1086 bool "DS17285/DS17287"
1087 help
1088 This enables support for the Dallas/Maxim DS17285/DS17287 real time
1089 clock chip.
1090
1091 This chip features 2kb of extended NV-SRAM. It may possibly be
1092 found in some SGI O2 systems (rare).
1093
1094config RTC_DRV_DS17485
1095 bool "DS17485/DS17487"
1096 help
1097 This enables support for the Dallas/Maxim DS17485/DS17487 real time
1098 clock chip.
1099
1100 This chip features 4kb of extended NV-SRAM.
1101
1102config RTC_DRV_DS17885
1103 bool "DS17885/DS17887"
1104 help
1105 This enables support for the Dallas/Maxim DS17885/DS17887 real time
1106 clock chip.
1107
1108 This chip features 8kb of extended NV-SRAM.
1109
1110endchoice
1111
1112config RTC_DRV_DS1742
1113 tristate "Maxim/Dallas DS1742/1743"
1114 depends on HAS_IOMEM
1115 help
1116 If you say yes here you get support for the
1117 Maxim/Dallas DS1742/1743 timekeeping chip.
1118
1119 This driver can also be built as a module. If so, the module
1120 will be called rtc-ds1742.
1121
1122config RTC_DRV_DS2404
1123 tristate "Maxim/Dallas DS2404"
1124 help
1125 If you say yes here you get support for the
1126 Dallas DS2404 RTC chip.
1127
1128 This driver can also be built as a module. If so, the module
1129 will be called rtc-ds2404.
1130
1131config RTC_DRV_DA9052
1132 tristate "Dialog DA9052/DA9053 RTC"
1133 depends on PMIC_DA9052
1134 help
1135 Say y here to support the RTC driver for Dialog Semiconductor
1136 DA9052-BC and DA9053-AA/Bx PMICs.
1137
1138config RTC_DRV_DA9055
1139 tristate "Dialog Semiconductor DA9055 RTC"
1140 depends on MFD_DA9055
1141 help
1142 If you say yes here you will get support for the
1143 RTC of the Dialog DA9055 PMIC.
1144
1145 This driver can also be built as a module. If so, the module
1146 will be called rtc-da9055
1147
1148config RTC_DRV_DA9063
1149 tristate "Dialog Semiconductor DA9063/DA9062 RTC"
1150 depends on MFD_DA9063 || MFD_DA9062
1151 help
1152 If you say yes here you will get support for the RTC subsystem
1153 for the Dialog Semiconductor PMIC chips DA9063 and DA9062.
1154
1155 This driver can also be built as a module. If so, the module
1156 will be called "rtc-da9063".
1157
1158config RTC_DRV_EFI
1159 tristate "EFI RTC"
1160 depends on EFI && !X86
1161 help
1162 If you say yes here you will get support for the EFI
1163 Real Time Clock.
1164
1165 This driver can also be built as a module. If so, the module
1166 will be called rtc-efi.
1167
1168config RTC_DRV_STK17TA8
1169 tristate "Simtek STK17TA8"
1170 depends on HAS_IOMEM
1171 help
1172 If you say yes here you get support for the
1173 Simtek STK17TA8 timekeeping chip.
1174
1175 This driver can also be built as a module. If so, the module
1176 will be called rtc-stk17ta8.
1177
1178config RTC_DRV_M48T86
1179 tristate "ST M48T86/Dallas DS12887"
1180 depends on HAS_IOMEM
1181 help
1182 If you say Y here you will get support for the
1183 ST M48T86 and Dallas DS12887 RTC chips.
1184
1185 This driver can also be built as a module. If so, the module
1186 will be called rtc-m48t86.
1187
1188config RTC_DRV_M48T35
1189 tristate "ST M48T35"
1190 depends on HAS_IOMEM
1191 help
1192 If you say Y here you will get support for the
1193 ST M48T35 RTC chip.
1194
1195 This driver can also be built as a module, if so, the module
1196 will be called "rtc-m48t35".
1197
1198config RTC_DRV_M48T59
1199 tristate "ST M48T59/M48T08/M48T02"
1200 depends on HAS_IOMEM
1201 help
1202 If you say Y here you will get support for the
1203 ST M48T59 RTC chip and compatible ST M48T08 and M48T02.
1204
1205 These chips are usually found in Sun SPARC and UltraSPARC
1206 workstations.
1207
1208 This driver can also be built as a module, if so, the module
1209 will be called "rtc-m48t59".
1210
1211config RTC_DRV_MSM6242
1212 tristate "Oki MSM6242"
1213 depends on HAS_IOMEM
1214 help
1215 If you say yes here you get support for the Oki MSM6242
1216 timekeeping chip. It is used in some Amiga models (e.g. A2000).
1217
1218 This driver can also be built as a module. If so, the module
1219 will be called rtc-msm6242.
1220
1221config RTC_DRV_BQ4802
1222 tristate "TI BQ4802"
1223 depends on HAS_IOMEM && HAS_IOPORT
1224 depends on SPARC || COMPILE_TEST
1225 help
1226 If you say Y here you will get support for the TI
1227 BQ4802 RTC chip.
1228
1229 This driver can also be built as a module. If so, the module
1230 will be called rtc-bq4802.
1231
1232config RTC_DRV_RP5C01
1233 tristate "Ricoh RP5C01"
1234 depends on HAS_IOMEM
1235 help
1236 If you say yes here you get support for the Ricoh RP5C01
1237 timekeeping chip. It is used in some Amiga models (e.g. A3000
1238 and A4000).
1239
1240 This driver can also be built as a module. If so, the module
1241 will be called rtc-rp5c01.
1242
1243config RTC_DRV_GAMECUBE
1244 tristate "Nintendo GameCube, Wii and Wii U RTC"
1245 depends on GAMECUBE || WII || COMPILE_TEST
1246 select REGMAP
1247 help
1248 If you say yes here you will get support for the RTC subsystem
1249 of the Nintendo GameCube, Wii and Wii U.
1250
1251 This driver can also be built as a module. If so, the module
1252 will be called "rtc-gamecube".
1253
1254config RTC_DRV_WM831X
1255 tristate "Wolfson Microelectronics WM831x RTC"
1256 depends on MFD_WM831X
1257 help
1258 If you say yes here you will get support for the RTC subsystem
1259 of the Wolfson Microelectronics WM831X series PMICs.
1260
1261 This driver can also be built as a module. If so, the module
1262 will be called "rtc-wm831x".
1263
1264config RTC_DRV_WM8350
1265 tristate "Wolfson Microelectronics WM8350 RTC"
1266 depends on MFD_WM8350
1267 help
1268 If you say yes here you will get support for the RTC subsystem
1269 of the Wolfson Microelectronics WM8350.
1270
1271 This driver can also be built as a module. If so, the module
1272 will be called "rtc-wm8350".
1273
1274config RTC_DRV_SC27XX
1275 tristate "Spreadtrum SC27xx RTC"
1276 depends on MFD_SC27XX_PMIC || COMPILE_TEST
1277 help
1278 If you say Y here you will get support for the RTC subsystem
1279 of the Spreadtrum SC27xx series PMICs. The SC27xx series PMICs
1280 includes the SC2720, SC2721, SC2723, SC2730 and SC2731 chips.
1281
1282 This driver can also be built as a module. If so, the module
1283 will be called rtc-sc27xx.
1284
1285config RTC_DRV_SPEAR
1286 tristate "SPEAR ST RTC"
1287 depends on PLAT_SPEAR || COMPILE_TEST
1288 default y
1289 help
1290 If you say Y here you will get support for the RTC found on
1291 spear
1292
1293config RTC_DRV_PCF50633
1294 depends on MFD_PCF50633
1295 tristate "NXP PCF50633 RTC"
1296 help
1297 If you say yes here you get support for the RTC subsystem of the
1298 NXP PCF50633 used in embedded systems.
1299
1300config RTC_DRV_AB8500
1301 tristate "ST-Ericsson AB8500 RTC"
1302 depends on AB8500_CORE
1303 select RTC_INTF_DEV
1304 select RTC_INTF_DEV_UIE_EMUL
1305 help
1306 Select this to enable the ST-Ericsson AB8500 power management IC RTC
1307 support. This chip contains a battery- and capacitor-backed RTC.
1308
1309config RTC_DRV_OPAL
1310 tristate "IBM OPAL RTC driver"
1311 depends on PPC_POWERNV
1312 default y
1313 help
1314 If you say yes here you get support for the PowerNV platform RTC
1315 driver based on OPAL interfaces.
1316
1317 This driver can also be built as a module. If so, the module
1318 will be called rtc-opal.
1319
1320config RTC_DRV_OPTEE
1321 tristate "OP-TEE based RTC driver"
1322 depends on OPTEE
1323 help
1324 Select this to get support for OP-TEE based RTC control on SoCs where
1325 RTC are not accessible to the normal world (Linux).
1326
1327 This driver can also be built as a module. If so, the module
1328 will be called rtc-optee.
1329
1330config RTC_DRV_ZYNQMP
1331 tristate "Xilinx Zynq Ultrascale+ MPSoC RTC"
1332 depends on OF && HAS_IOMEM
1333 help
1334 If you say yes here you get support for the RTC controller found on
1335 Xilinx Zynq Ultrascale+ MPSoC.
1336
1337config RTC_DRV_CROS_EC
1338 tristate "Chrome OS EC RTC driver"
1339 depends on CROS_EC
1340 help
1341 If you say yes here you will get support for the
1342 Chrome OS Embedded Controller's RTC.
1343
1344 This driver can also be built as a module. If so, the module
1345 will be called rtc-cros-ec.
1346
1347config RTC_DRV_NTXEC
1348 tristate "Netronix embedded controller RTC"
1349 depends on MFD_NTXEC
1350 help
1351 Say yes here if you want to support the RTC functionality of the
1352 embedded controller found in certain e-book readers designed by the
1353 original design manufacturer Netronix.
1354
1355comment "on-CPU RTC drivers"
1356
1357config RTC_DRV_ASM9260
1358 tristate "Alphascale asm9260 RTC"
1359 depends on MACH_ASM9260 || COMPILE_TEST
1360 help
1361 If you say yes here you get support for the RTC on the
1362 Alphascale asm9260 SoC.
1363
1364 This driver can also be built as a module. If so, the module
1365 will be called rtc-asm9260.
1366
1367config RTC_DRV_DIGICOLOR
1368 tristate "Conexant Digicolor RTC"
1369 depends on ARCH_DIGICOLOR || COMPILE_TEST
1370 help
1371 If you say yes here you get support for the RTC on Conexant
1372 Digicolor platforms. This currently includes the CX92755 SoC.
1373
1374 This driver can also be built as a module. If so, the module
1375 will be called rtc-digicolor.
1376
1377config RTC_DRV_IMXDI
1378 tristate "Freescale IMX DryIce Real Time Clock"
1379 depends on ARCH_MXC || COMPILE_TEST
1380 depends on OF
1381 help
1382 Support for Freescale IMX DryIce RTC
1383
1384 This driver can also be built as a module, if so, the module
1385 will be called "rtc-imxdi".
1386
1387config RTC_DRV_FSL_FTM_ALARM
1388 tristate "Freescale FlexTimer alarm timer"
1389 depends on ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
1390 help
1391 For the FlexTimer in LS1012A, LS1021A, LS1028A, LS1043A, LS1046A,
1392 LS1088A, LS208xA, we can use FTM as the wakeup source.
1393
1394 Say y here to enable FTM alarm support. The FTM alarm provides
1395 alarm functions for wakeup system from deep sleep.
1396
1397 This driver can also be built as a module, if so, the module
1398 will be called "rtc-fsl-ftm-alarm".
1399
1400config RTC_DRV_MESON
1401 tristate "Amlogic Meson RTC"
1402 depends on (ARM && ARCH_MESON) || COMPILE_TEST
1403 select REGMAP_MMIO
1404 help
1405 Support for the RTC block on the Amlogic Meson6, Meson8, Meson8b
1406 and Meson8m2 SoCs.
1407
1408 This driver can also be built as a module, if so, the module
1409 will be called "rtc-meson".
1410
1411config RTC_DRV_MESON_VRTC
1412 tristate "Amlogic Meson Virtual RTC"
1413 depends on ARCH_MESON || COMPILE_TEST
1414 default m if ARCH_MESON
1415 help
1416 If you say yes here you will get support for the
1417 Virtual RTC of Amlogic SoCs.
1418
1419 This driver can also be built as a module. If so, the module
1420 will be called rtc-meson-vrtc.
1421
1422config RTC_DRV_OMAP
1423 tristate "TI OMAP Real Time Clock"
1424 depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
1425 depends on OF
1426 depends on PINCTRL
1427 select GENERIC_PINCONF
1428 help
1429 Say "yes" here to support the on chip real time clock
1430 present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
1431
1432 This driver can also be built as a module, if so, module
1433 will be called rtc-omap.
1434
1435config RTC_DRV_S3C
1436 tristate "Samsung S3C series SoC RTC"
1437 depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || \
1438 COMPILE_TEST
1439 help
1440 RTC (Realtime Clock) driver for the clock inbuilt into the
1441 Samsung S3C64XX series of SoCs. This can provide periodic
1442 interrupt rates from 1Hz to 64Hz for user programs, and
1443 wakeup from Alarm.
1444
1445 This driver can also be build as a module. If so, the module
1446 will be called rtc-s3c.
1447
1448config RTC_DRV_EP93XX
1449 tristate "Cirrus Logic EP93XX"
1450 depends on ARCH_EP93XX || COMPILE_TEST
1451 help
1452 If you say yes here you get support for the
1453 RTC embedded in the Cirrus Logic EP93XX processors.
1454
1455 This driver can also be built as a module. If so, the module
1456 will be called rtc-ep93xx.
1457
1458config RTC_DRV_SA1100
1459 tristate "SA11x0/PXA2xx/PXA910"
1460 depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
1461 help
1462 If you say Y here you will get access to the real time clock
1463 built into your SA11x0 or PXA2xx CPU.
1464
1465 To compile this driver as a module, choose M here: the
1466 module will be called rtc-sa1100.
1467
1468config RTC_DRV_SH
1469 tristate "SuperH On-Chip RTC"
1470 depends on SUPERH || ARCH_RENESAS
1471 help
1472 Say Y here to enable support for the on-chip RTC found in
1473 most SuperH processors. This RTC is also found in RZ/A SoCs.
1474
1475 To compile this driver as a module, choose M here: the
1476 module will be called rtc-sh.
1477
1478config RTC_DRV_SUNPLUS
1479 tristate "Sunplus SP7021 RTC"
1480 depends on SOC_SP7021
1481 help
1482 Say 'yes' to get support for the real-time clock present in
1483 Sunplus SP7021 - a SoC for industrial applications. It provides
1484 RTC status check, timer/alarm functionalities, user data
1485 reservation with the battery over 2.5V, RTC power status check
1486 and battery charge.
1487
1488 This driver can also be built as a module. If so, the module
1489 will be called rtc-sunplus.
1490
1491config RTC_DRV_PL030
1492 tristate "ARM AMBA PL030 RTC"
1493 depends on ARM_AMBA
1494 help
1495 If you say Y here you will get access to ARM AMBA
1496 PrimeCell PL030 RTC found on certain ARM SOCs.
1497
1498 To compile this driver as a module, choose M here: the
1499 module will be called rtc-pl030.
1500
1501config RTC_DRV_PL031
1502 tristate "ARM AMBA PL031 RTC"
1503 depends on ARM_AMBA
1504 help
1505 If you say Y here you will get access to ARM AMBA
1506 PrimeCell PL031 RTC found on certain ARM SOCs.
1507
1508 To compile this driver as a module, choose M here: the
1509 module will be called rtc-pl031.
1510
1511config RTC_DRV_AT91RM9200
1512 tristate "AT91RM9200 or some AT91SAM9 RTC"
1513 depends on ARCH_AT91 || COMPILE_TEST
1514 depends on OF
1515 help
1516 Driver for the internal RTC (Realtime Clock) module found on
1517 Atmel AT91RM9200's and some AT91SAM9 chips. On AT91SAM9 chips
1518 this is powered by the backup power supply.
1519
1520config RTC_DRV_AT91SAM9
1521 tristate "AT91SAM9 RTT as RTC"
1522 depends on ARCH_AT91 || COMPILE_TEST
1523 depends on OF && HAS_IOMEM
1524 select MFD_SYSCON
1525 help
1526 Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
1527 can be used as an RTC thanks to the backup power supply (e.g. a
1528 small coin cell battery) which keeps this block and the GPBR
1529 (General Purpose Backup Registers) block powered when the device
1530 is shutdown.
1531 Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
1532 probably want to use the real RTC block instead of the "RTT as an
1533 RTC" driver.
1534
1535config RTC_DRV_AU1XXX
1536 tristate "Au1xxx Counter0 RTC support"
1537 depends on MIPS_ALCHEMY
1538 help
1539 This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
1540 counter) to be used as a RTC.
1541
1542 This driver can also be built as a module. If so, the module
1543 will be called rtc-au1xxx.
1544
1545config RTC_DRV_RS5C313
1546 tristate "Ricoh RS5C313"
1547 depends on SH_LANDISK
1548 help
1549 If you say yes here you get support for the Ricoh RS5C313 RTC chips.
1550
1551config RTC_DRV_RZN1
1552 tristate "Renesas RZ/N1 RTC"
1553 depends on ARCH_RZN1 || COMPILE_TEST
1554 depends on OF && HAS_IOMEM
1555 help
1556 If you say yes here you get support for the Renesas RZ/N1 RTC.
1557
1558config RTC_DRV_GENERIC
1559 tristate "Generic RTC support"
1560 # Please consider writing a new RTC driver instead of using the generic
1561 # RTC abstraction
1562 depends on PARISC || M68K || PPC || SUPERH || COMPILE_TEST
1563 help
1564 Say Y or M here to enable RTC support on systems using the generic
1565 RTC abstraction. If you do not know what you are doing, you should
1566 just say Y.
1567
1568config RTC_DRV_PXA
1569 tristate "PXA27x/PXA3xx"
1570 depends on ARCH_PXA
1571 select RTC_DRV_SA1100
1572 help
1573 If you say Y here you will get access to the real time clock
1574 built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
1575 consisting of an SA1100 compatible RTC and the extended PXA RTC.
1576
1577 This RTC driver uses PXA RTC registers available since pxa27x
1578 series (RDxR, RYxR) instead of legacy RCNR, RTAR.
1579
1580config RTC_DRV_VT8500
1581 tristate "VIA/WonderMedia 85xx SoC RTC"
1582 depends on ARCH_VT8500 || COMPILE_TEST
1583 help
1584 If you say Y here you will get access to the real time clock
1585 built into your VIA VT8500 SoC or its relatives.
1586
1587
1588config RTC_DRV_SUN4V
1589 bool "SUN4V Hypervisor RTC"
1590 depends on SPARC64
1591 help
1592 If you say Y here you will get support for the Hypervisor
1593 based RTC on SUN4V systems.
1594
1595config RTC_DRV_SUN6I
1596 bool "Allwinner A31 RTC"
1597 default MACH_SUN6I || MACH_SUN8I
1598 depends on COMMON_CLK
1599 depends on ARCH_SUNXI || COMPILE_TEST
1600 help
1601 If you say Y here you will get support for the RTC found in
1602 some Allwinner SoCs like the A31 or the A64.
1603
1604config RTC_DRV_SUNXI
1605 tristate "Allwinner sun4i/sun7i RTC"
1606 depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
1607 help
1608 If you say Y here you will get support for the RTC found on
1609 Allwinner A10/A20.
1610
1611config RTC_DRV_STARFIRE
1612 bool "Starfire RTC"
1613 depends on SPARC64
1614 help
1615 If you say Y here you will get support for the RTC found on
1616 Starfire systems.
1617
1618config RTC_DRV_MV
1619 tristate "Marvell SoC RTC"
1620 depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
1621 help
1622 If you say yes here you will get support for the in-chip RTC
1623 that can be found in some of Marvell's SoC devices, such as
1624 the Kirkwood 88F6281 and 88F6192.
1625
1626 This driver can also be built as a module. If so, the module
1627 will be called rtc-mv.
1628
1629config RTC_DRV_ARMADA38X
1630 tristate "Armada 38x Marvell SoC RTC"
1631 depends on ARCH_MVEBU || COMPILE_TEST
1632 depends on OF
1633 help
1634 If you say yes here you will get support for the in-chip RTC
1635 that can be found in the Armada 38x Marvell's SoC device
1636
1637 This driver can also be built as a module. If so, the module
1638 will be called armada38x-rtc.
1639
1640config RTC_DRV_CADENCE
1641 tristate "Cadence RTC driver"
1642 depends on OF && HAS_IOMEM
1643 help
1644 If you say Y here you will get access to Cadence RTC IP
1645 found on certain SOCs.
1646
1647 To compile this driver as a module, choose M here: the
1648 module will be called rtc-cadence.
1649
1650config RTC_DRV_FTRTC010
1651 tristate "Faraday Technology FTRTC010 RTC"
1652 depends on HAS_IOMEM
1653 default ARCH_GEMINI
1654 help
1655 If you say Y here you will get support for the
1656 Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.
1657
1658 This driver can also be built as a module. If so, the module
1659 will be called rtc-ftrtc010.
1660
1661config RTC_DRV_PS3
1662 tristate "PS3 RTC"
1663 depends on PPC_PS3
1664 help
1665 If you say yes here you will get support for the RTC on PS3.
1666
1667 This driver can also be built as a module. If so, the module
1668 will be called rtc-ps3.
1669
1670config RTC_DRV_STMP
1671 tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
1672 depends on ARCH_MXS || COMPILE_TEST
1673 select STMP_DEVICE
1674 help
1675 If you say yes here you will get support for the onboard
1676 STMP3xxx/i.MX23/i.MX28 RTC.
1677
1678 This driver can also be built as a module. If so, the module
1679 will be called rtc-stmp3xxx.
1680
1681config RTC_DRV_PCAP
1682 tristate "PCAP RTC"
1683 depends on EZX_PCAP
1684 help
1685 If you say Y here you will get support for the RTC found on
1686 the PCAP2 ASIC used on some Motorola phones.
1687
1688config RTC_DRV_MC13XXX
1689 depends on MFD_MC13XXX
1690 tristate "Freescale MC13xxx RTC"
1691 help
1692 This enables support for the RTCs found on Freescale's PMICs
1693 MC13783 and MC13892.
1694
1695config RTC_DRV_MPC5121
1696 tristate "Freescale MPC5121 built-in RTC"
1697 depends on PPC_MPC512x || PPC_MPC52xx
1698 help
1699 If you say yes here you will get support for the
1700 built-in RTC on MPC5121 or on MPC5200.
1701
1702 This driver can also be built as a module. If so, the module
1703 will be called rtc-mpc5121.
1704
1705config RTC_DRV_JZ4740
1706 tristate "Ingenic JZ4740 SoC"
1707 depends on MIPS || COMPILE_TEST
1708 depends on OF && COMMON_CLK
1709 help
1710 If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
1711 controllers.
1712
1713 This driver can also be built as a module. If so, the module
1714 will be called rtc-jz4740.
1715
1716config RTC_DRV_LOONGSON
1717 tristate "Loongson On-chip RTC"
1718 depends on MACH_LOONGSON32 || MACH_LOONGSON64 || COMPILE_TEST
1719 select REGMAP_MMIO
1720 help
1721 This is a driver for the Loongson on-chip Counter0 (Time-Of-Year
1722 counter) to be used as a RTC.
1723 It can be found on Loongson-1 series cpu, Loongson-2K series cpu
1724 and Loongson LS7A bridge chips.
1725
1726 This driver can also be built as a module. If so, the module
1727 will be called rtc-loongson.
1728
1729config RTC_DRV_LPC24XX
1730 tristate "NXP RTC for LPC178x/18xx/408x/43xx"
1731 depends on ARCH_LPC18XX || COMPILE_TEST
1732 depends on OF && HAS_IOMEM
1733 depends on COMMON_CLK
1734 help
1735 This enables support for the NXP RTC found which can be found on
1736 NXP LPC178x/18xx/408x/43xx devices.
1737
1738 If you have one of the devices above enable this driver to use
1739 the hardware RTC. This driver can also be built as a module. If
1740 so, the module will be called rtc-lpc24xx.
1741
1742config RTC_DRV_LPC32XX
1743 depends on ARCH_LPC32XX || COMPILE_TEST
1744 tristate "NXP LPC32XX RTC"
1745 help
1746 This enables support for the NXP RTC in the LPC32XX
1747
1748 This driver can also be built as a module. If so, the module
1749 will be called rtc-lpc32xx.
1750
1751config RTC_DRV_PM8XXX
1752 tristate "Qualcomm PMIC8XXX RTC"
1753 depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
1754 help
1755 If you say yes here you get support for the
1756 Qualcomm PMIC8XXX RTC.
1757
1758 To compile this driver as a module, choose M here: the
1759 module will be called rtc-pm8xxx.
1760
1761config RTC_DRV_TEGRA
1762 tristate "NVIDIA Tegra Internal RTC driver"
1763 depends on ARCH_TEGRA || COMPILE_TEST
1764 help
1765 If you say yes here you get support for the
1766 Tegra 200 series internal RTC module.
1767
1768 This drive can also be built as a module. If so, the module
1769 will be called rtc-tegra.
1770
1771config RTC_DRV_MXC
1772 tristate "Freescale MXC Real Time Clock"
1773 depends on ARCH_MXC || COMPILE_TEST
1774 depends on HAS_IOMEM
1775 depends on OF
1776 help
1777 If you say yes here you get support for the Freescale MXC
1778 RTC module.
1779
1780 This driver can also be built as a module, if so, the module
1781 will be called "rtc-mxc".
1782
1783config RTC_DRV_MXC_V2
1784 tristate "Freescale MXC Real Time Clock for i.MX53"
1785 depends on ARCH_MXC || COMPILE_TEST
1786 depends on HAS_IOMEM
1787 depends on OF
1788 help
1789 If you say yes here you get support for the Freescale MXC
1790 SRTC module in i.MX53 processor.
1791
1792 This driver can also be built as a module, if so, the module
1793 will be called "rtc-mxc_v2".
1794
1795config RTC_DRV_SNVS
1796 tristate "Freescale SNVS RTC support"
1797 select REGMAP_MMIO
1798 depends on ARCH_MXC || COMPILE_TEST
1799 depends on HAS_IOMEM
1800 depends on OF
1801 help
1802 If you say yes here you get support for the Freescale SNVS
1803 Low Power (LP) RTC module.
1804
1805 This driver can also be built as a module, if so, the module
1806 will be called "rtc-snvs".
1807
1808config RTC_DRV_BBNSM
1809 tristate "NXP BBNSM RTC support"
1810 select REGMAP_MMIO
1811 depends on ARCH_MXC || COMPILE_TEST
1812 depends on HAS_IOMEM
1813 depends on OF
1814 help
1815 If you say yes here you get support for the NXP BBNSM RTC module.
1816
1817 This driver can also be built as a module, if so, the module
1818 will be called "rtc-bbnsm".
1819
1820config RTC_DRV_IMX_SC
1821 depends on IMX_SCU
1822 depends on HAVE_ARM_SMCCC
1823 tristate "NXP i.MX System Controller RTC support"
1824 help
1825 If you say yes here you get support for the NXP i.MX System
1826 Controller RTC module.
1827
1828config RTC_DRV_ST_LPC
1829 tristate "STMicroelectronics LPC RTC"
1830 depends on ARCH_STI
1831 depends on OF
1832 help
1833 Say Y here to include STMicroelectronics Low Power Controller
1834 (LPC) based RTC support.
1835
1836 To compile this driver as a module, choose M here: the
1837 module will be called rtc-st-lpc.
1838
1839config RTC_DRV_MOXART
1840 tristate "MOXA ART RTC"
1841 depends on ARCH_MOXART || COMPILE_TEST
1842 help
1843 If you say yes here you get support for the MOXA ART
1844 RTC module.
1845
1846 This driver can also be built as a module. If so, the module
1847 will be called rtc-moxart
1848
1849config RTC_DRV_MT2712
1850 tristate "MediaTek MT2712 SoC based RTC"
1851 depends on ARCH_MEDIATEK || COMPILE_TEST
1852 help
1853 This enables support for the real time clock built in the MediaTek
1854 SoCs for MT2712.
1855
1856 This drive can also be built as a module. If so, the module
1857 will be called rtc-mt2712.
1858
1859config RTC_DRV_MT6397
1860 tristate "MediaTek PMIC based RTC"
1861 depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
1862 help
1863 This selects the MediaTek(R) RTC driver. RTC is part of MediaTek
1864 MT6397 PMIC. You should enable MT6397 PMIC MFD before select
1865 MediaTek(R) RTC driver.
1866
1867 If you want to use MediaTek(R) RTC interface, select Y or M here.
1868
1869config RTC_DRV_MT7622
1870 tristate "MediaTek SoC based RTC"
1871 depends on ARCH_MEDIATEK || COMPILE_TEST
1872 help
1873 This enables support for the real time clock built in the MediaTek
1874 SoCs.
1875
1876 This drive can also be built as a module. If so, the module
1877 will be called rtc-mt7622.
1878
1879config RTC_DRV_XGENE
1880 tristate "APM X-Gene RTC"
1881 depends on HAS_IOMEM
1882 depends on ARCH_XGENE || COMPILE_TEST
1883 help
1884 If you say yes here you get support for the APM X-Gene SoC real time
1885 clock.
1886
1887 This driver can also be built as a module, if so, the module
1888 will be called "rtc-xgene".
1889
1890config RTC_DRV_PIC32
1891 tristate "Microchip PIC32 RTC"
1892 depends on MACH_PIC32
1893 default y
1894 help
1895 If you say yes here you get support for the PIC32 RTC module.
1896
1897 This driver can also be built as a module. If so, the module
1898 will be called rtc-pic32
1899
1900config RTC_DRV_R7301
1901 tristate "EPSON TOYOCOM RTC-7301SF/DG"
1902 select REGMAP_MMIO
1903 depends on OF && HAS_IOMEM
1904 help
1905 If you say yes here you get support for the EPSON TOYOCOM
1906 RTC-7301SF/DG chips.
1907
1908 This driver can also be built as a module. If so, the module
1909 will be called rtc-r7301.
1910
1911config RTC_DRV_STM32
1912 tristate "STM32 RTC"
1913 select REGMAP_MMIO
1914 depends on ARCH_STM32 || COMPILE_TEST
1915 help
1916 If you say yes here you get support for the STM32 On-Chip
1917 Real Time Clock.
1918
1919 This driver can also be built as a module, if so, the module
1920 will be called "rtc-stm32".
1921
1922config RTC_DRV_CPCAP
1923 depends on MFD_CPCAP
1924 tristate "Motorola CPCAP RTC"
1925 help
1926 Say y here for CPCAP rtc found on some Motorola phones
1927 and tablets such as Droid 4.
1928
1929config RTC_DRV_RTD119X
1930 bool "Realtek RTD129x RTC"
1931 depends on ARCH_REALTEK || COMPILE_TEST
1932 default ARCH_REALTEK
1933 help
1934 If you say yes here, you get support for the RTD1295 SoC
1935 Real Time Clock.
1936
1937config RTC_DRV_ASPEED
1938 tristate "ASPEED RTC"
1939 depends on OF
1940 depends on ARCH_ASPEED || COMPILE_TEST
1941 help
1942 If you say yes here you get support for the ASPEED BMC SoC real time
1943 clocks.
1944
1945 This driver can also be built as a module, if so, the module
1946 will be called "rtc-aspeed".
1947
1948config RTC_DRV_TI_K3
1949 tristate "TI K3 RTC"
1950 depends on ARCH_K3 || COMPILE_TEST
1951 select REGMAP_MMIO
1952 help
1953 If you say yes here you get support for the Texas Instruments's
1954 Real Time Clock for K3 architecture.
1955
1956 This driver can also be built as a module, if so, the module
1957 will be called "rtc-ti-k3".
1958
1959config RTC_DRV_MA35D1
1960 tristate "Nuvoton MA35D1 RTC"
1961 depends on ARCH_MA35 || COMPILE_TEST
1962 select REGMAP_MMIO
1963 help
1964 If you say yes here you get support for the Nuvoton MA35D1
1965 On-Chip Real Time Clock.
1966
1967 This driver can also be built as a module, if so, the module
1968 will be called "rtc-ma35d1".
1969
1970comment "HID Sensor RTC drivers"
1971
1972config RTC_DRV_HID_SENSOR_TIME
1973 tristate "HID Sensor Time"
1974 depends on USB_HID
1975 depends on HID_SENSOR_HUB && IIO
1976 select HID_SENSOR_IIO_COMMON
1977 help
1978 Say yes here to build support for the HID Sensors of type Time.
1979 This drivers makes such sensors available as RTCs.
1980
1981 If this driver is compiled as a module, it will be named
1982 rtc-hid-sensor-time.
1983
1984config RTC_DRV_GOLDFISH
1985 tristate "Goldfish Real Time Clock"
1986 depends on HAS_IOMEM
1987 help
1988 Say yes to enable RTC driver for the Goldfish based virtual platform.
1989
1990 Goldfish is a code name for the virtual platform developed by Google
1991 for Android emulation.
1992
1993config RTC_DRV_WILCO_EC
1994 tristate "Wilco EC RTC"
1995 depends on WILCO_EC
1996 default m
1997 help
1998 If you say yes here, you get read/write support for the Real Time
1999 Clock on the Wilco Embedded Controller (Wilco is a kind of Chromebook)
2000
2001 This can also be built as a module. If so, the module will
2002 be named "rtc_wilco_ec".
2003
2004config RTC_DRV_MSC313
2005 tristate "MStar MSC313 RTC"
2006 depends on ARCH_MSTARV7 || COMPILE_TEST
2007 help
2008 If you say yes here you get support for the Mstar MSC313e On-Chip
2009 Real Time Clock.
2010
2011 This driver can also be built as a module, if so, the module
2012 will be called "rtc-msc313".
2013
2014config RTC_DRV_POLARFIRE_SOC
2015 tristate "Microchip PolarFire SoC built-in RTC"
2016 depends on ARCH_MICROCHIP_POLARFIRE
2017 help
2018 If you say yes here you will get support for the
2019 built-in RTC on Polarfire SoC.
2020
2021 This driver can also be built as a module, if so, the module
2022 will be called "rtc-mpfs".
2023
2024config RTC_DRV_SSD202D
2025 tristate "SigmaStar SSD202D RTC"
2026 depends on ARCH_MSTARV7 || COMPILE_TEST
2027 default ARCH_MSTARV7
2028 help
2029 If you say yes here you get support for the SigmaStar SSD202D On-Chip
2030 Real Time Clock.
2031
2032 This driver can also be built as a module, if so, the module
2033 will be called "rtc-ssd20xd".
2034
2035endif # RTC_CLASS