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