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