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