Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux
[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
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 && 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
291 config 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
300 config 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
311 config 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
317 config 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
326 config 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
337 config 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
347 config 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
357 config 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
367 config 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
377 config 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
387 config 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
396 config 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
405 config 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
414 config 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
424 config 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
433 config 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
442 config 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
451 config 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
463 config 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
473 config 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
485 config 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
496 config 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
503 config RTC_DRV_BD70528
504         tristate "ROHM BD70528, BD71815 and BD71828 PMIC RTC"
505         depends on MFD_ROHM_BD71828 || 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, BD71815 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
513 config 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
522 config 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
528 config 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
537 config 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
548 config 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
558 config 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
566 config 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
576 config 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
584 config 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
594 config 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
604 config 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
614 config 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
625 config 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
634 config 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
644 config 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
653 config 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
662 config 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
672 config RTC_DRV_RV3032
673         tristate "Micro Crystal RV3032"
674         select REGMAP_I2C
675         help
676           If you say yes here you get support for the Micro Crystal
677           RV3032.
678
679           This driver can also be built as a module. If so, the module
680           will be called rtc-rv3032.
681
682 config RTC_DRV_RV8803
683         tristate "Micro Crystal RV8803, Epson RX8900"
684         help
685           If you say yes here you get support for the Micro Crystal RV8803 and
686           Epson RX8900 RTC chips.
687
688           This driver can also be built as a module. If so, the module
689           will be called rtc-rv8803.
690
691 config RTC_DRV_S5M
692         tristate "Samsung S2M/S5M series"
693         depends on MFD_SEC_CORE || COMPILE_TEST
694         select REGMAP_IRQ
695         select REGMAP_I2C
696         help
697           If you say yes here you will get support for the
698           RTC of Samsung S2MPS14 and S5M PMIC series.
699
700           This driver can also be built as a module. If so, the module
701           will be called rtc-s5m.
702
703 config RTC_DRV_SD3078
704         tristate "ZXW Shenzhen whwave SD3078"
705         select REGMAP_I2C
706         help
707           If you say yes here you get support for the ZXW Shenzhen whwave
708           SD3078 RTC chips.
709
710           This driver can also be built as a module. If so, the module
711           will be called rtc-sd3078
712
713 endif # I2C
714
715 comment "SPI RTC drivers"
716
717 if SPI_MASTER
718
719 config RTC_DRV_M41T93
720         tristate "ST M41T93"
721         help
722           If you say yes here you will get support for the
723           ST M41T93 SPI RTC chip.
724
725           This driver can also be built as a module. If so, the module
726           will be called rtc-m41t93.
727
728 config RTC_DRV_M41T94
729         tristate "ST M41T94"
730         help
731           If you say yes here you will get support for the
732           ST M41T94 SPI RTC chip.
733
734           This driver can also be built as a module. If so, the module
735           will be called rtc-m41t94.
736
737 config RTC_DRV_DS1302
738         tristate "Dallas/Maxim DS1302"
739         depends on SPI
740         help
741           If you say yes here you get support for the Dallas DS1302 RTC chips.
742
743           This driver can also be built as a module. If so, the module
744           will be called rtc-ds1302.
745
746 config RTC_DRV_DS1305
747         tristate "Dallas/Maxim DS1305/DS1306"
748         help
749           Select this driver to get support for the Dallas/Maxim DS1305
750           and DS1306 real time clock chips. These support a trickle
751           charger, alarms, and NVRAM in addition to the clock.
752
753           This driver can also be built as a module. If so, the module
754           will be called rtc-ds1305.
755
756 config RTC_DRV_DS1343
757         select REGMAP_SPI
758         tristate "Dallas/Maxim DS1343/DS1344"
759         help
760           If you say yes here you get support for the
761           Dallas/Maxim DS1343 and DS1344 real time clock chips.
762           Support for trickle charger, alarm is provided.
763
764           This driver can also be built as a module. If so, the module
765           will be called rtc-ds1343.
766
767 config RTC_DRV_DS1347
768         select REGMAP_SPI
769         tristate "Dallas/Maxim DS1347"
770         help
771           If you say yes here you get support for the
772           Dallas/Maxim DS1347 chips.
773
774           This driver only supports the RTC feature, and not other chip
775           features such as alarms.
776
777           This driver can also be built as a module. If so, the module
778           will be called rtc-ds1347.
779
780 config RTC_DRV_DS1390
781         tristate "Dallas/Maxim DS1390/93/94"
782         help
783           If you say yes here you get support for the
784           Dallas/Maxim DS1390/93/94 chips.
785
786           This driver supports the RTC feature and trickle charging but not
787           other chip features such as alarms.
788
789           This driver can also be built as a module. If so, the module
790           will be called rtc-ds1390.
791
792 config RTC_DRV_MAX6916
793         tristate "Maxim MAX6916"
794         help
795           If you say yes here you will get support for the
796           Maxim MAX6916 SPI RTC chip.
797
798           This driver only supports the RTC feature, and not other chip
799           features such as alarms.
800
801           This driver can also be built as a module. If so, the module
802           will be called rtc-max6916.
803
804 config RTC_DRV_R9701
805         tristate "Epson RTC-9701JE"
806         help
807           If you say yes here you will get support for the
808           Epson RTC-9701JE SPI RTC chip.
809
810           This driver can also be built as a module. If so, the module
811           will be called rtc-r9701.
812
813 config RTC_DRV_RX4581
814         tristate "Epson RX-4581"
815         help
816           If you say yes here you will get support for the Epson RX-4581.
817
818           This driver can also be built as a module. If so the module
819           will be called rtc-rx4581.
820
821 config RTC_DRV_RS5C348
822         tristate "Ricoh RS5C348A/B"
823         help
824           If you say yes here you get support for the
825           Ricoh RS5C348A and RS5C348B RTC chips.
826
827           This driver can also be built as a module. If so, the module
828           will be called rtc-rs5c348.
829
830 config RTC_DRV_MAX6902
831         tristate "Maxim MAX6902"
832         help
833           If you say yes here you will get support for the
834           Maxim MAX6902 SPI RTC chip.
835
836           This driver can also be built as a module. If so, the module
837           will be called rtc-max6902.
838
839 config RTC_DRV_PCF2123
840         tristate "NXP PCF2123"
841         select REGMAP_SPI
842         help
843           If you say yes here you get support for the NXP PCF2123
844           RTC chip.
845
846           This driver can also be built as a module. If so, the module
847           will be called rtc-pcf2123.
848
849 config RTC_DRV_MCP795
850         tristate "Microchip MCP795"
851         help
852           If you say yes here you will get support for the Microchip MCP795.
853
854           This driver can also be built as a module. If so the module
855           will be called rtc-mcp795.
856
857 endif # SPI_MASTER
858
859 #
860 # Helper to resolve issues with configs that have SPI enabled but I2C
861 # modular.  See SND_SOC_I2C_AND_SPI for more information
862 #
863 config RTC_I2C_AND_SPI
864         tristate
865         default m if I2C=m
866         default y if I2C=y
867         default y if SPI_MASTER=y
868
869 comment "SPI and I2C RTC drivers"
870
871 config RTC_DRV_DS3232
872         tristate "Dallas/Maxim DS3232/DS3234"
873         depends on RTC_I2C_AND_SPI
874         select REGMAP_I2C if I2C
875         select REGMAP_SPI if SPI_MASTER
876         help
877           If you say yes here you get support for Dallas Semiconductor
878           DS3232 and DS3234 real-time clock chips. If an interrupt is associated
879           with the device, the alarm functionality is supported.
880
881           This driver can also be built as a module.  If so, the module
882           will be called rtc-ds3232.
883
884 config RTC_DRV_DS3232_HWMON
885         bool "HWMON support for Dallas/Maxim DS3232/DS3234"
886         depends on RTC_DRV_DS3232 && HWMON && !(RTC_DRV_DS3232=y && HWMON=m)
887         default y
888         help
889           Say Y here if you want to expose temperature sensor data on
890           rtc-ds3232
891
892 config RTC_DRV_PCF2127
893         tristate "NXP PCF2127"
894         depends on RTC_I2C_AND_SPI
895         select REGMAP_I2C if I2C
896         select REGMAP_SPI if SPI_MASTER
897         select WATCHDOG_CORE if WATCHDOG
898         help
899           If you say yes here you get support for the NXP PCF2127/29 RTC
900           chips with integrated quartz crystal for industrial applications.
901           Both chips also have watchdog timer and tamper switch detection
902           features.
903
904           PCF2127 has an additional feature of 512 bytes battery backed
905           memory that's accessible using nvmem interface.
906
907           This driver can also be built as a module. If so, the module
908           will be called rtc-pcf2127.
909
910 config RTC_DRV_RV3029C2
911         tristate "Micro Crystal RV3029/3049"
912         depends on RTC_I2C_AND_SPI
913         select REGMAP_I2C if I2C
914         select REGMAP_SPI if SPI_MASTER
915         help
916           If you say yes here you get support for the Micro Crystal
917           RV3029 and RV3049 RTC chips.
918
919           This driver can also be built as a module. If so, the module
920           will be called rtc-rv3029c2.
921
922 config RTC_DRV_RV3029_HWMON
923         bool "HWMON support for RV3029/3049"
924         depends on RTC_DRV_RV3029C2 && HWMON
925         depends on !(RTC_DRV_RV3029C2=y && HWMON=m)
926         default y
927         help
928           Say Y here if you want to expose temperature sensor data on
929           rtc-rv3029.
930
931 config RTC_DRV_RX6110
932         tristate "Epson RX-6110"
933         depends on RTC_I2C_AND_SPI
934         select REGMAP_SPI if SPI_MASTER
935         select REGMAP_I2C if I2C
936         help
937           If you say yes here you will get support for the Epson RX-6110.
938
939           This driver can also be built as a module. If so the module
940           will be called rtc-rx6110.
941
942 comment "Platform RTC drivers"
943
944 # this 'CMOS' RTC driver is arch dependent because it requires
945 # <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
946 # global rtc_lock ... it's not yet just another platform_device.
947
948 config RTC_DRV_CMOS
949         tristate "PC-style 'CMOS'"
950         depends on X86 || ARM || PPC || MIPS || SPARC64
951         default y if X86
952         select RTC_MC146818_LIB
953         help
954           Say "yes" here to get direct support for the real time clock
955           found in every PC or ACPI-based system, and some other boards.
956           Specifically the original MC146818, compatibles like those in
957           PC south bridges, the DS12887 or M48T86, some multifunction
958           or LPC bus chips, and so on.
959
960           Your system will need to define the platform device used by
961           this driver, otherwise it won't be accessible. This means
962           you can safely enable this driver if you don't know whether
963           or not your board has this kind of hardware.
964
965           This driver can also be built as a module. If so, the module
966           will be called rtc-cmos.
967
968 config RTC_DRV_ALPHA
969         bool "Alpha PC-style CMOS"
970         depends on ALPHA
971         select RTC_MC146818_LIB
972         default y
973         help
974           Direct support for the real-time clock found on every Alpha
975           system, specifically MC146818 compatibles.  If in doubt, say Y.
976
977 config RTC_DRV_DS1216
978         tristate "Dallas DS1216"
979         depends on SNI_RM
980         help
981           If you say yes here you get support for the Dallas DS1216 RTC chips.
982
983 config RTC_DRV_DS1286
984         tristate "Dallas DS1286"
985         depends on HAS_IOMEM
986         help
987           If you say yes here you get support for the Dallas DS1286 RTC chips.
988
989 config RTC_DRV_DS1511
990         tristate "Dallas DS1511"
991         depends on HAS_IOMEM
992         help
993           If you say yes here you get support for the
994           Dallas DS1511 timekeeping/watchdog chip.
995
996           This driver can also be built as a module. If so, the module
997           will be called rtc-ds1511.
998
999 config RTC_DRV_DS1553
1000         tristate "Maxim/Dallas DS1553"
1001         depends on HAS_IOMEM
1002         help
1003           If you say yes here you get support for the
1004           Maxim/Dallas DS1553 timekeeping chip.
1005
1006           This driver can also be built as a module. If so, the module
1007           will be called rtc-ds1553.
1008
1009 config RTC_DRV_DS1685_FAMILY
1010         tristate "Dallas/Maxim DS1685 Family"
1011         depends on HAS_IOMEM
1012         help
1013           If you say yes here you get support for the Dallas/Maxim DS1685
1014           family of real time chips.  This family includes the DS1685/DS1687,
1015           DS1689/DS1693, DS17285/DS17287, DS17485/DS17487, and
1016           DS17885/DS17887 chips.
1017
1018           This driver can also be built as a module. If so, the module
1019           will be called rtc-ds1685.
1020
1021 choice
1022         prompt "Subtype"
1023         depends on RTC_DRV_DS1685_FAMILY
1024         default RTC_DRV_DS1685
1025
1026 config RTC_DRV_DS1685
1027         bool "DS1685/DS1687"
1028         help
1029           This enables support for the Dallas/Maxim DS1685/DS1687 real time
1030           clock chip.
1031
1032           This chip is commonly found in SGI O2 (IP32) and SGI Octane (IP30)
1033           systems, as well as EPPC-405-UC modules by electronic system design
1034           GmbH.
1035
1036 config RTC_DRV_DS1689
1037         bool "DS1689/DS1693"
1038         help
1039           This enables support for the Dallas/Maxim DS1689/DS1693 real time
1040           clock chip.
1041
1042           This is an older RTC chip, supplanted by the DS1685/DS1687 above,
1043           which supports a few minor features such as Vcc, Vbat, and Power
1044           Cycle counters, plus a customer-specific, 8-byte ROM/Serial number.
1045
1046           It also works for the even older DS1688/DS1691 RTC chips, which are
1047           virtually the same and carry the same model number.  Both chips
1048           have 114 bytes of user NVRAM.
1049
1050 config RTC_DRV_DS17285
1051         bool "DS17285/DS17287"
1052         help
1053           This enables support for the Dallas/Maxim DS17285/DS17287 real time
1054           clock chip.
1055
1056           This chip features 2kb of extended NV-SRAM.  It may possibly be
1057           found in some SGI O2 systems (rare).
1058
1059 config RTC_DRV_DS17485
1060         bool "DS17485/DS17487"
1061         help
1062           This enables support for the Dallas/Maxim DS17485/DS17487 real time
1063           clock chip.
1064
1065           This chip features 4kb of extended NV-SRAM.
1066
1067 config RTC_DRV_DS17885
1068         bool "DS17885/DS17887"
1069         help
1070           This enables support for the Dallas/Maxim DS17885/DS17887 real time
1071           clock chip.
1072
1073           This chip features 8kb of extended NV-SRAM.
1074
1075 endchoice
1076
1077 config RTC_DRV_DS1742
1078         tristate "Maxim/Dallas DS1742/1743"
1079         depends on HAS_IOMEM
1080         help
1081           If you say yes here you get support for the
1082           Maxim/Dallas DS1742/1743 timekeeping chip.
1083
1084           This driver can also be built as a module. If so, the module
1085           will be called rtc-ds1742.
1086
1087 config RTC_DRV_DS2404
1088         tristate "Maxim/Dallas DS2404"
1089         help
1090           If you say yes here you get support for the
1091           Dallas DS2404 RTC chip.
1092
1093           This driver can also be built as a module. If so, the module
1094           will be called rtc-ds2404.
1095
1096 config RTC_DRV_DA9052
1097         tristate "Dialog DA9052/DA9053 RTC"
1098         depends on PMIC_DA9052
1099         help
1100           Say y here to support the RTC driver for Dialog Semiconductor
1101           DA9052-BC and DA9053-AA/Bx PMICs.
1102
1103 config RTC_DRV_DA9055
1104         tristate "Dialog Semiconductor DA9055 RTC"
1105         depends on MFD_DA9055
1106         help
1107           If you say yes here you will get support for the
1108           RTC of the Dialog DA9055 PMIC.
1109
1110           This driver can also be built as a module. If so, the module
1111           will be called rtc-da9055
1112
1113 config RTC_DRV_DA9063
1114         tristate "Dialog Semiconductor DA9063/DA9062 RTC"
1115         depends on MFD_DA9063 || MFD_DA9062
1116         help
1117           If you say yes here you will get support for the RTC subsystem
1118           for the Dialog Semiconductor PMIC chips DA9063 and DA9062.
1119
1120           This driver can also be built as a module. If so, the module
1121           will be called "rtc-da9063".
1122
1123 config RTC_DRV_EFI
1124         tristate "EFI RTC"
1125         depends on EFI && !X86
1126         help
1127           If you say yes here you will get support for the EFI
1128           Real Time Clock.
1129
1130           This driver can also be built as a module. If so, the module
1131           will be called rtc-efi.
1132
1133 config RTC_DRV_STK17TA8
1134         tristate "Simtek STK17TA8"
1135         depends on HAS_IOMEM
1136         help
1137           If you say yes here you get support for the
1138           Simtek STK17TA8 timekeeping chip.
1139
1140           This driver can also be built as a module. If so, the module
1141           will be called rtc-stk17ta8.
1142
1143 config RTC_DRV_M48T86
1144         tristate "ST M48T86/Dallas DS12887"
1145         depends on HAS_IOMEM
1146         help
1147           If you say Y here you will get support for the
1148           ST M48T86 and Dallas DS12887 RTC chips.
1149
1150           This driver can also be built as a module. If so, the module
1151           will be called rtc-m48t86.
1152
1153 config RTC_DRV_M48T35
1154         tristate "ST M48T35"
1155         depends on HAS_IOMEM
1156         help
1157           If you say Y here you will get support for the
1158           ST M48T35 RTC chip.
1159
1160           This driver can also be built as a module, if so, the module
1161           will be called "rtc-m48t35".
1162
1163 config RTC_DRV_M48T59
1164         tristate "ST M48T59/M48T08/M48T02"
1165         depends on HAS_IOMEM
1166         help
1167           If you say Y here you will get support for the
1168           ST M48T59 RTC chip and compatible ST M48T08 and M48T02.
1169
1170           These chips are usually found in Sun SPARC and UltraSPARC
1171           workstations.
1172
1173           This driver can also be built as a module, if so, the module
1174           will be called "rtc-m48t59".
1175
1176 config RTC_DRV_MSM6242
1177         tristate "Oki MSM6242"
1178         depends on HAS_IOMEM
1179         help
1180           If you say yes here you get support for the Oki MSM6242
1181           timekeeping chip. It is used in some Amiga models (e.g. A2000).
1182
1183           This driver can also be built as a module. If so, the module
1184           will be called rtc-msm6242.
1185
1186 config RTC_DRV_BQ4802
1187         tristate "TI BQ4802"
1188         depends on HAS_IOMEM
1189         help
1190           If you say Y here you will get support for the TI
1191           BQ4802 RTC chip.
1192
1193           This driver can also be built as a module. If so, the module
1194           will be called rtc-bq4802.
1195
1196 config RTC_DRV_RP5C01
1197         tristate "Ricoh RP5C01"
1198         depends on HAS_IOMEM
1199         help
1200           If you say yes here you get support for the Ricoh RP5C01
1201           timekeeping chip. It is used in some Amiga models (e.g. A3000
1202           and A4000).
1203
1204           This driver can also be built as a module. If so, the module
1205           will be called rtc-rp5c01.
1206
1207 config RTC_DRV_V3020
1208         tristate "EM Microelectronic V3020"
1209         help
1210           If you say yes here you will get support for the
1211           EM Microelectronic v3020 RTC chip.
1212
1213           This driver can also be built as a module. If so, the module
1214           will be called rtc-v3020.
1215
1216 config RTC_DRV_WM831X
1217         tristate "Wolfson Microelectronics WM831x RTC"
1218         depends on MFD_WM831X
1219         help
1220           If you say yes here you will get support for the RTC subsystem
1221           of the Wolfson Microelectronics WM831X series PMICs.
1222
1223           This driver can also be built as a module. If so, the module
1224           will be called "rtc-wm831x".
1225
1226 config RTC_DRV_WM8350
1227         tristate "Wolfson Microelectronics WM8350 RTC"
1228         depends on MFD_WM8350
1229         help
1230           If you say yes here you will get support for the RTC subsystem
1231           of the Wolfson Microelectronics WM8350.
1232
1233           This driver can also be built as a module. If so, the module
1234           will be called "rtc-wm8350".
1235
1236 config RTC_DRV_SC27XX
1237         tristate "Spreadtrum SC27xx RTC"
1238         depends on MFD_SC27XX_PMIC || COMPILE_TEST
1239         help
1240           If you say Y here you will get support for the RTC subsystem
1241           of the Spreadtrum SC27xx series PMICs. The SC27xx series PMICs
1242           includes the SC2720, SC2721, SC2723, SC2730 and SC2731 chips.
1243
1244           This driver can also be built as a module. If so, the module
1245           will be called rtc-sc27xx.
1246
1247 config RTC_DRV_SPEAR
1248         tristate "SPEAR ST RTC"
1249         depends on PLAT_SPEAR || COMPILE_TEST
1250         default y
1251         help
1252          If you say Y here you will get support for the RTC found on
1253          spear
1254
1255 config RTC_DRV_PCF50633
1256         depends on MFD_PCF50633
1257         tristate "NXP PCF50633 RTC"
1258         help
1259           If you say yes here you get support for the RTC subsystem of the
1260           NXP PCF50633 used in embedded systems.
1261
1262 config RTC_DRV_AB8500
1263         tristate "ST-Ericsson AB8500 RTC"
1264         depends on AB8500_CORE
1265         select RTC_INTF_DEV
1266         select RTC_INTF_DEV_UIE_EMUL
1267         help
1268           Select this to enable the ST-Ericsson AB8500 power management IC RTC
1269           support. This chip contains a battery- and capacitor-backed RTC.
1270
1271 config RTC_DRV_OPAL
1272         tristate "IBM OPAL RTC driver"
1273         depends on PPC_POWERNV
1274         default y
1275         help
1276           If you say yes here you get support for the PowerNV platform RTC
1277           driver based on OPAL interfaces.
1278
1279           This driver can also be built as a module. If so, the module
1280           will be called rtc-opal.
1281
1282 config RTC_DRV_ZYNQMP
1283         tristate "Xilinx Zynq Ultrascale+ MPSoC RTC"
1284         depends on OF && HAS_IOMEM
1285         help
1286           If you say yes here you get support for the RTC controller found on
1287           Xilinx Zynq Ultrascale+ MPSoC.
1288
1289 config RTC_DRV_CROS_EC
1290         tristate "Chrome OS EC RTC driver"
1291         depends on CROS_EC
1292         help
1293           If you say yes here you will get support for the
1294           Chrome OS Embedded Controller's RTC.
1295
1296           This driver can also be built as a module. If so, the module
1297           will be called rtc-cros-ec.
1298
1299 config RTC_DRV_NTXEC
1300         tristate "Netronix embedded controller RTC"
1301         depends on MFD_NTXEC
1302         help
1303           Say yes here if you want to support the RTC functionality of the
1304           embedded controller found in certain e-book readers designed by the
1305           original design manufacturer Netronix.
1306
1307 comment "on-CPU RTC drivers"
1308
1309 config RTC_DRV_ASM9260
1310         tristate "Alphascale asm9260 RTC"
1311         depends on MACH_ASM9260 || COMPILE_TEST
1312         help
1313           If you say yes here you get support for the RTC on the
1314           Alphascale asm9260 SoC.
1315
1316           This driver can also be built as a module. If so, the module
1317           will be called rtc-asm9260.
1318
1319 config RTC_DRV_DAVINCI
1320         tristate "TI DaVinci RTC"
1321         depends on ARCH_DAVINCI_DM365 || COMPILE_TEST
1322         help
1323           If you say yes here you get support for the RTC on the
1324           DaVinci platforms (DM365).
1325
1326           This driver can also be built as a module. If so, the module
1327           will be called rtc-davinci.
1328
1329 config RTC_DRV_DIGICOLOR
1330         tristate "Conexant Digicolor RTC"
1331         depends on ARCH_DIGICOLOR || COMPILE_TEST
1332         help
1333           If you say yes here you get support for the RTC on Conexant
1334           Digicolor platforms. This currently includes the CX92755 SoC.
1335
1336           This driver can also be built as a module. If so, the module
1337           will be called rtc-digicolor.
1338
1339 config RTC_DRV_IMXDI
1340         tristate "Freescale IMX DryIce Real Time Clock"
1341         depends on ARCH_MXC
1342         help
1343            Support for Freescale IMX DryIce RTC
1344
1345            This driver can also be built as a module, if so, the module
1346            will be called "rtc-imxdi".
1347
1348 config RTC_DRV_FSL_FTM_ALARM
1349         tristate "Freescale FlexTimer alarm timer"
1350         depends on ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
1351         help
1352            For the FlexTimer in LS1012A, LS1021A, LS1028A, LS1043A, LS1046A,
1353            LS1088A, LS208xA, we can use FTM as the wakeup source.
1354
1355            Say y here to enable FTM alarm support. The FTM alarm provides
1356            alarm functions for wakeup system from deep sleep.
1357
1358            This driver can also be built as a module, if so, the module
1359            will be called "rtc-fsl-ftm-alarm".
1360
1361 config RTC_DRV_MESON
1362         tristate "Amlogic Meson RTC"
1363         depends on (ARM && ARCH_MESON) || COMPILE_TEST
1364         select REGMAP_MMIO
1365         help
1366            Support for the RTC block on the Amlogic Meson6, Meson8, Meson8b
1367            and Meson8m2 SoCs.
1368
1369            This driver can also be built as a module, if so, the module
1370            will be called "rtc-meson".
1371
1372 config RTC_DRV_MESON_VRTC
1373         tristate "Amlogic Meson Virtual RTC"
1374         depends on ARCH_MESON || COMPILE_TEST
1375         default m if ARCH_MESON
1376         help
1377           If you say yes here you will get support for the
1378           Virtual RTC of Amlogic SoCs.
1379
1380           This driver can also be built as a module. If so, the module
1381           will be called rtc-meson-vrtc.
1382
1383 config RTC_DRV_OMAP
1384         tristate "TI OMAP Real Time Clock"
1385         depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
1386         depends on OF
1387         depends on PINCTRL
1388         select GENERIC_PINCONF
1389         help
1390           Say "yes" here to support the on chip real time clock
1391           present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
1392
1393           This driver can also be built as a module, if so, module
1394           will be called rtc-omap.
1395
1396 config HAVE_S3C_RTC
1397         bool
1398         help
1399           This will include RTC support for Samsung SoCs. If
1400           you want to include RTC support for any machine, kindly
1401           select this in the respective mach-XXXX/Kconfig file.
1402
1403 config RTC_DRV_S3C
1404         tristate "Samsung S3C series SoC RTC"
1405         depends on ARCH_S3C64XX || HAVE_S3C_RTC || COMPILE_TEST
1406         help
1407           RTC (Realtime Clock) driver for the clock inbuilt into the
1408           Samsung S3C24XX series of SoCs. This can provide periodic
1409           interrupt rates from 1Hz to 64Hz for user programs, and
1410           wakeup from Alarm.
1411
1412           The driver currently supports the common features on all the
1413           S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
1414           and S3C2442.
1415
1416           This driver can also be build as a module. If so, the module
1417           will be called rtc-s3c.
1418
1419 config RTC_DRV_EP93XX
1420         tristate "Cirrus Logic EP93XX"
1421         depends on ARCH_EP93XX || COMPILE_TEST
1422         help
1423           If you say yes here you get support for the
1424           RTC embedded in the Cirrus Logic EP93XX processors.
1425
1426           This driver can also be built as a module. If so, the module
1427           will be called rtc-ep93xx.
1428
1429 config RTC_DRV_SA1100
1430         tristate "SA11x0/PXA2xx/PXA910"
1431         depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
1432         help
1433           If you say Y here you will get access to the real time clock
1434           built into your SA11x0 or PXA2xx CPU.
1435
1436           To compile this driver as a module, choose M here: the
1437           module will be called rtc-sa1100.
1438
1439 config RTC_DRV_SH
1440         tristate "SuperH On-Chip RTC"
1441         depends on SUPERH || ARCH_RENESAS
1442         help
1443           Say Y here to enable support for the on-chip RTC found in
1444           most SuperH processors. This RTC is also found in RZ/A SoCs.
1445
1446           To compile this driver as a module, choose M here: the
1447           module will be called rtc-sh.
1448
1449 config RTC_DRV_VR41XX
1450         tristate "NEC VR41XX"
1451         depends on CPU_VR41XX || COMPILE_TEST
1452         help
1453           If you say Y here you will get access to the real time clock
1454           built into your NEC VR41XX CPU.
1455
1456           To compile this driver as a module, choose M here: the
1457           module will be called rtc-vr41xx.
1458
1459 config RTC_DRV_PL030
1460         tristate "ARM AMBA PL030 RTC"
1461         depends on ARM_AMBA
1462         help
1463           If you say Y here you will get access to ARM AMBA
1464           PrimeCell PL030 RTC found on certain ARM SOCs.
1465
1466           To compile this driver as a module, choose M here: the
1467           module will be called rtc-pl030.
1468
1469 config RTC_DRV_PL031
1470         tristate "ARM AMBA PL031 RTC"
1471         depends on ARM_AMBA
1472         help
1473           If you say Y here you will get access to ARM AMBA
1474           PrimeCell PL031 RTC found on certain ARM SOCs.
1475
1476           To compile this driver as a module, choose M here: the
1477           module will be called rtc-pl031.
1478
1479 config RTC_DRV_AT91RM9200
1480         tristate "AT91RM9200 or some AT91SAM9 RTC"
1481         depends on ARCH_AT91 || COMPILE_TEST
1482         depends on OF
1483         help
1484           Driver for the internal RTC (Realtime Clock) module found on
1485           Atmel AT91RM9200's and some  AT91SAM9 chips. On AT91SAM9 chips
1486           this is powered by the backup power supply.
1487
1488 config RTC_DRV_AT91SAM9
1489         tristate "AT91SAM9 RTT as RTC"
1490         depends on ARCH_AT91 || COMPILE_TEST
1491         depends on OF && HAS_IOMEM
1492         select MFD_SYSCON
1493         help
1494           Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
1495           can be used as an RTC thanks to the backup power supply (e.g. a
1496           small coin cell battery) which keeps this block and the GPBR
1497           (General Purpose Backup Registers) block powered when the device
1498           is shutdown.
1499           Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
1500           probably want to use the real RTC block instead of the "RTT as an
1501           RTC" driver.
1502
1503 config RTC_DRV_AU1XXX
1504         tristate "Au1xxx Counter0 RTC support"
1505         depends on MIPS_ALCHEMY
1506         help
1507           This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
1508           counter) to be used as a RTC.
1509
1510           This driver can also be built as a module. If so, the module
1511           will be called rtc-au1xxx.
1512
1513 config RTC_DRV_RS5C313
1514         tristate "Ricoh RS5C313"
1515         depends on SH_LANDISK
1516         help
1517           If you say yes here you get support for the Ricoh RS5C313 RTC chips.
1518
1519 config RTC_DRV_GENERIC
1520         tristate "Generic RTC support"
1521         # Please consider writing a new RTC driver instead of using the generic
1522         # RTC abstraction
1523         depends on PARISC || M68K || PPC || SUPERH || COMPILE_TEST
1524         help
1525           Say Y or M here to enable RTC support on systems using the generic
1526           RTC abstraction. If you do not know what you are doing, you should
1527           just say Y.
1528
1529 config RTC_DRV_PXA
1530         tristate "PXA27x/PXA3xx"
1531         depends on ARCH_PXA
1532         select RTC_DRV_SA1100
1533         help
1534          If you say Y here you will get access to the real time clock
1535          built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
1536          consisting of an SA1100 compatible RTC and the extended PXA RTC.
1537
1538          This RTC driver uses PXA RTC registers available since pxa27x
1539          series (RDxR, RYxR) instead of legacy RCNR, RTAR.
1540
1541 config RTC_DRV_VT8500
1542         tristate "VIA/WonderMedia 85xx SoC RTC"
1543         depends on ARCH_VT8500 || COMPILE_TEST
1544         help
1545           If you say Y here you will get access to the real time clock
1546           built into your VIA VT8500 SoC or its relatives.
1547
1548
1549 config RTC_DRV_SUN4V
1550         bool "SUN4V Hypervisor RTC"
1551         depends on SPARC64
1552         help
1553           If you say Y here you will get support for the Hypervisor
1554           based RTC on SUN4V systems.
1555
1556 config RTC_DRV_SUN6I
1557         bool "Allwinner A31 RTC"
1558         default MACH_SUN6I || MACH_SUN8I
1559         depends on COMMON_CLK
1560         depends on ARCH_SUNXI || COMPILE_TEST
1561         help
1562           If you say Y here you will get support for the RTC found in
1563           some Allwinner SoCs like the A31 or the A64.
1564
1565 config RTC_DRV_SUNXI
1566         tristate "Allwinner sun4i/sun7i RTC"
1567         depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
1568         help
1569           If you say Y here you will get support for the RTC found on
1570           Allwinner A10/A20.
1571
1572 config RTC_DRV_STARFIRE
1573         bool "Starfire RTC"
1574         depends on SPARC64
1575         help
1576           If you say Y here you will get support for the RTC found on
1577           Starfire systems.
1578
1579 config RTC_DRV_MV
1580         tristate "Marvell SoC RTC"
1581         depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
1582         help
1583           If you say yes here you will get support for the in-chip RTC
1584           that can be found in some of Marvell's SoC devices, such as
1585           the Kirkwood 88F6281 and 88F6192.
1586
1587           This driver can also be built as a module. If so, the module
1588           will be called rtc-mv.
1589
1590 config RTC_DRV_ARMADA38X
1591         tristate "Armada 38x Marvell SoC RTC"
1592         depends on ARCH_MVEBU || COMPILE_TEST
1593         depends on OF
1594         help
1595           If you say yes here you will get support for the in-chip RTC
1596           that can be found in the Armada 38x Marvell's SoC device
1597
1598           This driver can also be built as a module. If so, the module
1599           will be called armada38x-rtc.
1600
1601 config RTC_DRV_CADENCE
1602         tristate "Cadence RTC driver"
1603         depends on OF && HAS_IOMEM
1604         help
1605           If you say Y here you will get access to Cadence RTC IP
1606           found on certain SOCs.
1607
1608           To compile this driver as a module, choose M here: the
1609           module will be called rtc-cadence.
1610
1611 config RTC_DRV_FTRTC010
1612         tristate "Faraday Technology FTRTC010 RTC"
1613         depends on HAS_IOMEM
1614         default ARCH_GEMINI
1615         help
1616           If you say Y here you will get support for the
1617           Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.
1618
1619           This driver can also be built as a module. If so, the module
1620           will be called rtc-ftrtc010.
1621
1622 config RTC_DRV_PS3
1623         tristate "PS3 RTC"
1624         depends on PPC_PS3
1625         help
1626           If you say yes here you will get support for the RTC on PS3.
1627
1628           This driver can also be built as a module. If so, the module
1629           will be called rtc-ps3.
1630
1631 config RTC_DRV_STMP
1632         tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
1633         depends on ARCH_MXS || COMPILE_TEST
1634         select STMP_DEVICE
1635         help
1636           If you say yes here you will get support for the onboard
1637           STMP3xxx/i.MX23/i.MX28 RTC.
1638
1639           This driver can also be built as a module. If so, the module
1640           will be called rtc-stmp3xxx.
1641
1642 config RTC_DRV_PCAP
1643         tristate "PCAP RTC"
1644         depends on EZX_PCAP
1645         help
1646           If you say Y here you will get support for the RTC found on
1647           the PCAP2 ASIC used on some Motorola phones.
1648
1649 config RTC_DRV_MC13XXX
1650         depends on MFD_MC13XXX
1651         tristate "Freescale MC13xxx RTC"
1652         help
1653           This enables support for the RTCs found on Freescale's PMICs
1654           MC13783 and MC13892.
1655
1656 config RTC_DRV_MPC5121
1657         tristate "Freescale MPC5121 built-in RTC"
1658         depends on PPC_MPC512x || PPC_MPC52xx
1659         help
1660           If you say yes here you will get support for the
1661           built-in RTC on MPC5121 or on MPC5200.
1662
1663           This driver can also be built as a module. If so, the module
1664           will be called rtc-mpc5121.
1665
1666 config RTC_DRV_JZ4740
1667         tristate "Ingenic JZ4740 SoC"
1668         depends on MIPS || COMPILE_TEST
1669         depends on OF
1670         help
1671           If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
1672           controllers.
1673
1674           This driver can also be built as a module. If so, the module
1675           will be called rtc-jz4740.
1676
1677 config RTC_DRV_LPC24XX
1678         tristate "NXP RTC for LPC178x/18xx/408x/43xx"
1679         depends on ARCH_LPC18XX || COMPILE_TEST
1680         depends on OF && HAS_IOMEM
1681         help
1682           This enables support for the NXP RTC found which can be found on
1683           NXP LPC178x/18xx/408x/43xx devices.
1684
1685           If you have one of the devices above enable this driver to use
1686           the hardware RTC. This driver can also be built as a module. If
1687           so, the module will be called rtc-lpc24xx.
1688
1689 config RTC_DRV_LPC32XX
1690         depends on ARCH_LPC32XX || COMPILE_TEST
1691         tristate "NXP LPC32XX RTC"
1692         help
1693           This enables support for the NXP RTC in the LPC32XX
1694
1695           This driver can also be built as a module. If so, the module
1696           will be called rtc-lpc32xx.
1697
1698 config RTC_DRV_PM8XXX
1699         tristate "Qualcomm PMIC8XXX RTC"
1700         depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
1701         help
1702           If you say yes here you get support for the
1703           Qualcomm PMIC8XXX RTC.
1704
1705           To compile this driver as a module, choose M here: the
1706           module will be called rtc-pm8xxx.
1707
1708 config RTC_DRV_TEGRA
1709         tristate "NVIDIA Tegra Internal RTC driver"
1710         depends on ARCH_TEGRA || COMPILE_TEST
1711         help
1712           If you say yes here you get support for the
1713           Tegra 200 series internal RTC module.
1714
1715           This drive can also be built as a module. If so, the module
1716           will be called rtc-tegra.
1717
1718 config RTC_DRV_LOONGSON1
1719         tristate "loongson1 RTC support"
1720         depends on MACH_LOONGSON32
1721         help
1722           This is a driver for the loongson1 on-chip Counter0 (Time-Of-Year
1723           counter) to be used as a RTC.
1724
1725           This driver can also be built as a module. If so, the module
1726           will be called rtc-ls1x.
1727
1728 config RTC_DRV_MXC
1729         tristate "Freescale MXC Real Time Clock"
1730         depends on ARCH_MXC || COMPILE_TEST
1731         depends on HAS_IOMEM
1732         depends on OF
1733         help
1734            If you say yes here you get support for the Freescale MXC
1735            RTC module.
1736
1737            This driver can also be built as a module, if so, the module
1738            will be called "rtc-mxc".
1739
1740 config RTC_DRV_MXC_V2
1741         tristate "Freescale MXC Real Time Clock for i.MX53"
1742         depends on ARCH_MXC || COMPILE_TEST
1743         depends on HAS_IOMEM
1744         depends on OF
1745         help
1746            If you say yes here you get support for the Freescale MXC
1747            SRTC module in i.MX53 processor.
1748
1749            This driver can also be built as a module, if so, the module
1750            will be called "rtc-mxc_v2".
1751
1752 config RTC_DRV_SNVS
1753         tristate "Freescale SNVS RTC support"
1754         select REGMAP_MMIO
1755         depends on ARCH_MXC || COMPILE_TEST
1756         depends on HAS_IOMEM
1757         depends on OF
1758         help
1759            If you say yes here you get support for the Freescale SNVS
1760            Low Power (LP) RTC module.
1761
1762            This driver can also be built as a module, if so, the module
1763            will be called "rtc-snvs".
1764
1765 config RTC_DRV_IMX_SC
1766         depends on IMX_SCU
1767         depends on HAVE_ARM_SMCCC
1768         tristate "NXP i.MX System Controller RTC support"
1769         help
1770            If you say yes here you get support for the NXP i.MX System
1771            Controller RTC module.
1772
1773 config RTC_DRV_ST_LPC
1774         tristate "STMicroelectronics LPC RTC"
1775         depends on ARCH_STI
1776         depends on OF
1777         help
1778           Say Y here to include STMicroelectronics Low Power Controller
1779           (LPC) based RTC support.
1780
1781           To compile this driver as a module, choose M here: the
1782           module will be called rtc-st-lpc.
1783
1784 config RTC_DRV_MOXART
1785         tristate "MOXA ART RTC"
1786         depends on ARCH_MOXART || COMPILE_TEST
1787         help
1788            If you say yes here you get support for the MOXA ART
1789            RTC module.
1790
1791            This driver can also be built as a module. If so, the module
1792            will be called rtc-moxart
1793
1794 config RTC_DRV_MT2712
1795         tristate "MediaTek MT2712 SoC based RTC"
1796         depends on ARCH_MEDIATEK || COMPILE_TEST
1797         help
1798           This enables support for the real time clock built in the MediaTek
1799           SoCs for MT2712.
1800
1801           This drive can also be built as a module. If so, the module
1802           will be called rtc-mt2712.
1803
1804 config RTC_DRV_MT6397
1805         tristate "MediaTek PMIC based RTC"
1806         depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
1807         help
1808           This selects the MediaTek(R) RTC driver. RTC is part of MediaTek
1809           MT6397 PMIC. You should enable MT6397 PMIC MFD before select
1810           MediaTek(R) RTC driver.
1811
1812           If you want to use MediaTek(R) RTC interface, select Y or M here.
1813
1814 config RTC_DRV_MT7622
1815         tristate "MediaTek SoC based RTC"
1816         depends on ARCH_MEDIATEK || COMPILE_TEST
1817         help
1818           This enables support for the real time clock built in the MediaTek
1819           SoCs.
1820
1821           This drive can also be built as a module. If so, the module
1822           will be called rtc-mt7622.
1823
1824 config RTC_DRV_XGENE
1825         tristate "APM X-Gene RTC"
1826         depends on HAS_IOMEM
1827         depends on ARCH_XGENE || COMPILE_TEST
1828         help
1829           If you say yes here you get support for the APM X-Gene SoC real time
1830           clock.
1831
1832           This driver can also be built as a module, if so, the module
1833           will be called "rtc-xgene".
1834
1835 config RTC_DRV_PIC32
1836         tristate "Microchip PIC32 RTC"
1837         depends on MACH_PIC32
1838         default y
1839         help
1840            If you say yes here you get support for the PIC32 RTC module.
1841
1842            This driver can also be built as a module. If so, the module
1843            will be called rtc-pic32
1844
1845 config RTC_DRV_R7301
1846         tristate "EPSON TOYOCOM RTC-7301SF/DG"
1847         select REGMAP_MMIO
1848         depends on OF && HAS_IOMEM
1849         help
1850            If you say yes here you get support for the EPSON TOYOCOM
1851            RTC-7301SF/DG chips.
1852
1853            This driver can also be built as a module. If so, the module
1854            will be called rtc-r7301.
1855
1856 config RTC_DRV_STM32
1857         tristate "STM32 RTC"
1858         select REGMAP_MMIO
1859         depends on ARCH_STM32 || COMPILE_TEST
1860         help
1861            If you say yes here you get support for the STM32 On-Chip
1862            Real Time Clock.
1863
1864            This driver can also be built as a module, if so, the module
1865            will be called "rtc-stm32".
1866
1867 config RTC_DRV_CPCAP
1868         depends on MFD_CPCAP
1869         tristate "Motorola CPCAP RTC"
1870         help
1871            Say y here for CPCAP rtc found on some Motorola phones
1872            and tablets such as Droid 4.
1873
1874 config RTC_DRV_RTD119X
1875         bool "Realtek RTD129x RTC"
1876         depends on ARCH_REALTEK || COMPILE_TEST
1877         default ARCH_REALTEK
1878         help
1879           If you say yes here, you get support for the RTD1295 SoC
1880           Real Time Clock.
1881
1882 config RTC_DRV_ASPEED
1883         tristate "ASPEED RTC"
1884         depends on OF
1885         depends on ARCH_ASPEED || COMPILE_TEST
1886         help
1887           If you say yes here you get support for the ASPEED BMC SoC real time
1888           clocks.
1889
1890           This driver can also be built as a module, if so, the module
1891           will be called "rtc-aspeed".
1892
1893 comment "HID Sensor RTC drivers"
1894
1895 config RTC_DRV_HID_SENSOR_TIME
1896         tristate "HID Sensor Time"
1897         depends on USB_HID
1898         depends on HID_SENSOR_HUB && IIO
1899         select HID_SENSOR_IIO_COMMON
1900         help
1901           Say yes here to build support for the HID Sensors of type Time.
1902           This drivers makes such sensors available as RTCs.
1903
1904           If this driver is compiled as a module, it will be named
1905           rtc-hid-sensor-time.
1906
1907 config RTC_DRV_GOLDFISH
1908         tristate "Goldfish Real Time Clock"
1909         depends on OF && HAS_IOMEM
1910         help
1911           Say yes to enable RTC driver for the Goldfish based virtual platform.
1912
1913           Goldfish is a code name for the virtual platform developed by Google
1914           for Android emulation.
1915
1916 config RTC_DRV_WILCO_EC
1917         tristate "Wilco EC RTC"
1918         depends on WILCO_EC
1919         default m
1920         help
1921           If you say yes here, you get read/write support for the Real Time
1922           Clock on the Wilco Embedded Controller (Wilco is a kind of Chromebook)
1923
1924           This can also be built as a module. If so, the module will
1925           be named "rtc_wilco_ec".
1926
1927 endif # RTC_CLASS