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