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