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