Merge tag 'drm-misc-next-2021-07-22' of git://anongit.freedesktop.org/drm/drm-misc...
[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 BD71815 and BD71828 PMIC RTC"
505         depends on MFD_ROHM_BD71828
506         help
507           If you say Y here you will get support for the RTC
508           block on ROHM BD71815 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 config RTC_DRV_NTXEC
1300         tristate "Netronix embedded controller RTC"
1301         depends on MFD_NTXEC
1302         help
1303           Say yes here if you want to support the RTC functionality of the
1304           embedded controller found in certain e-book readers designed by the
1305           original design manufacturer Netronix.
1306
1307 comment "on-CPU RTC drivers"
1308
1309 config RTC_DRV_ASM9260
1310         tristate "Alphascale asm9260 RTC"
1311         depends on MACH_ASM9260 || COMPILE_TEST
1312         help
1313           If you say yes here you get support for the RTC on the
1314           Alphascale asm9260 SoC.
1315
1316           This driver can also be built as a module. If so, the module
1317           will be called rtc-asm9260.
1318
1319 config RTC_DRV_DAVINCI
1320         tristate "TI DaVinci RTC"
1321         depends on ARCH_DAVINCI_DM365 || COMPILE_TEST
1322         help
1323           If you say yes here you get support for the RTC on the
1324           DaVinci platforms (DM365).
1325
1326           This driver can also be built as a module. If so, the module
1327           will be called rtc-davinci.
1328
1329 config RTC_DRV_DIGICOLOR
1330         tristate "Conexant Digicolor RTC"
1331         depends on ARCH_DIGICOLOR || COMPILE_TEST
1332         help
1333           If you say yes here you get support for the RTC on Conexant
1334           Digicolor platforms. This currently includes the CX92755 SoC.
1335
1336           This driver can also be built as a module. If so, the module
1337           will be called rtc-digicolor.
1338
1339 config RTC_DRV_IMXDI
1340         tristate "Freescale IMX DryIce Real Time Clock"
1341         depends on ARCH_MXC
1342         depends on OF
1343         help
1344            Support for Freescale IMX DryIce RTC
1345
1346            This driver can also be built as a module, if so, the module
1347            will be called "rtc-imxdi".
1348
1349 config RTC_DRV_FSL_FTM_ALARM
1350         tristate "Freescale FlexTimer alarm timer"
1351         depends on ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
1352         help
1353            For the FlexTimer in LS1012A, LS1021A, LS1028A, LS1043A, LS1046A,
1354            LS1088A, LS208xA, we can use FTM as the wakeup source.
1355
1356            Say y here to enable FTM alarm support. The FTM alarm provides
1357            alarm functions for wakeup system from deep sleep.
1358
1359            This driver can also be built as a module, if so, the module
1360            will be called "rtc-fsl-ftm-alarm".
1361
1362 config RTC_DRV_MESON
1363         tristate "Amlogic Meson RTC"
1364         depends on (ARM && ARCH_MESON) || COMPILE_TEST
1365         select REGMAP_MMIO
1366         help
1367            Support for the RTC block on the Amlogic Meson6, Meson8, Meson8b
1368            and Meson8m2 SoCs.
1369
1370            This driver can also be built as a module, if so, the module
1371            will be called "rtc-meson".
1372
1373 config RTC_DRV_MESON_VRTC
1374         tristate "Amlogic Meson Virtual RTC"
1375         depends on ARCH_MESON || COMPILE_TEST
1376         default m if ARCH_MESON
1377         help
1378           If you say yes here you will get support for the
1379           Virtual RTC of Amlogic SoCs.
1380
1381           This driver can also be built as a module. If so, the module
1382           will be called rtc-meson-vrtc.
1383
1384 config RTC_DRV_OMAP
1385         tristate "TI OMAP Real Time Clock"
1386         depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
1387         depends on OF
1388         depends on PINCTRL
1389         select GENERIC_PINCONF
1390         help
1391           Say "yes" here to support the on chip real time clock
1392           present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
1393
1394           This driver can also be built as a module, if so, module
1395           will be called rtc-omap.
1396
1397 config HAVE_S3C_RTC
1398         bool
1399         help
1400           This will include RTC support for Samsung SoCs. If
1401           you want to include RTC support for any machine, kindly
1402           select this in the respective mach-XXXX/Kconfig file.
1403
1404 config RTC_DRV_S3C
1405         tristate "Samsung S3C series SoC RTC"
1406         depends on ARCH_S3C64XX || HAVE_S3C_RTC || COMPILE_TEST
1407         help
1408           RTC (Realtime Clock) driver for the clock inbuilt into the
1409           Samsung S3C24XX series of SoCs. This can provide periodic
1410           interrupt rates from 1Hz to 64Hz for user programs, and
1411           wakeup from Alarm.
1412
1413           The driver currently supports the common features on all the
1414           S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
1415           and S3C2442.
1416
1417           This driver can also be build as a module. If so, the module
1418           will be called rtc-s3c.
1419
1420 config RTC_DRV_EP93XX
1421         tristate "Cirrus Logic EP93XX"
1422         depends on ARCH_EP93XX || COMPILE_TEST
1423         help
1424           If you say yes here you get support for the
1425           RTC embedded in the Cirrus Logic EP93XX processors.
1426
1427           This driver can also be built as a module. If so, the module
1428           will be called rtc-ep93xx.
1429
1430 config RTC_DRV_SA1100
1431         tristate "SA11x0/PXA2xx/PXA910"
1432         depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
1433         help
1434           If you say Y here you will get access to the real time clock
1435           built into your SA11x0 or PXA2xx CPU.
1436
1437           To compile this driver as a module, choose M here: the
1438           module will be called rtc-sa1100.
1439
1440 config RTC_DRV_SH
1441         tristate "SuperH On-Chip RTC"
1442         depends on SUPERH || ARCH_RENESAS
1443         help
1444           Say Y here to enable support for the on-chip RTC found in
1445           most SuperH processors. This RTC is also found in RZ/A SoCs.
1446
1447           To compile this driver as a module, choose M here: the
1448           module will be called rtc-sh.
1449
1450 config RTC_DRV_VR41XX
1451         tristate "NEC VR41XX"
1452         depends on CPU_VR41XX || COMPILE_TEST
1453         help
1454           If you say Y here you will get access to the real time clock
1455           built into your NEC VR41XX CPU.
1456
1457           To compile this driver as a module, choose M here: the
1458           module will be called rtc-vr41xx.
1459
1460 config RTC_DRV_PL030
1461         tristate "ARM AMBA PL030 RTC"
1462         depends on ARM_AMBA
1463         help
1464           If you say Y here you will get access to ARM AMBA
1465           PrimeCell PL030 RTC found on certain ARM SOCs.
1466
1467           To compile this driver as a module, choose M here: the
1468           module will be called rtc-pl030.
1469
1470 config RTC_DRV_PL031
1471         tristate "ARM AMBA PL031 RTC"
1472         depends on ARM_AMBA
1473         help
1474           If you say Y here you will get access to ARM AMBA
1475           PrimeCell PL031 RTC found on certain ARM SOCs.
1476
1477           To compile this driver as a module, choose M here: the
1478           module will be called rtc-pl031.
1479
1480 config RTC_DRV_AT91RM9200
1481         tristate "AT91RM9200 or some AT91SAM9 RTC"
1482         depends on ARCH_AT91 || COMPILE_TEST
1483         depends on OF
1484         help
1485           Driver for the internal RTC (Realtime Clock) module found on
1486           Atmel AT91RM9200's and some  AT91SAM9 chips. On AT91SAM9 chips
1487           this is powered by the backup power supply.
1488
1489 config RTC_DRV_AT91SAM9
1490         tristate "AT91SAM9 RTT as RTC"
1491         depends on ARCH_AT91 || COMPILE_TEST
1492         depends on OF && HAS_IOMEM
1493         select MFD_SYSCON
1494         help
1495           Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
1496           can be used as an RTC thanks to the backup power supply (e.g. a
1497           small coin cell battery) which keeps this block and the GPBR
1498           (General Purpose Backup Registers) block powered when the device
1499           is shutdown.
1500           Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
1501           probably want to use the real RTC block instead of the "RTT as an
1502           RTC" driver.
1503
1504 config RTC_DRV_AU1XXX
1505         tristate "Au1xxx Counter0 RTC support"
1506         depends on MIPS_ALCHEMY
1507         help
1508           This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
1509           counter) to be used as a RTC.
1510
1511           This driver can also be built as a module. If so, the module
1512           will be called rtc-au1xxx.
1513
1514 config RTC_DRV_RS5C313
1515         tristate "Ricoh RS5C313"
1516         depends on SH_LANDISK
1517         help
1518           If you say yes here you get support for the Ricoh RS5C313 RTC chips.
1519
1520 config RTC_DRV_GENERIC
1521         tristate "Generic RTC support"
1522         # Please consider writing a new RTC driver instead of using the generic
1523         # RTC abstraction
1524         depends on PARISC || M68K || PPC || SUPERH || COMPILE_TEST
1525         help
1526           Say Y or M here to enable RTC support on systems using the generic
1527           RTC abstraction. If you do not know what you are doing, you should
1528           just say Y.
1529
1530 config RTC_DRV_PXA
1531         tristate "PXA27x/PXA3xx"
1532         depends on ARCH_PXA
1533         select RTC_DRV_SA1100
1534         help
1535          If you say Y here you will get access to the real time clock
1536          built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
1537          consisting of an SA1100 compatible RTC and the extended PXA RTC.
1538
1539          This RTC driver uses PXA RTC registers available since pxa27x
1540          series (RDxR, RYxR) instead of legacy RCNR, RTAR.
1541
1542 config RTC_DRV_VT8500
1543         tristate "VIA/WonderMedia 85xx SoC RTC"
1544         depends on ARCH_VT8500 || COMPILE_TEST
1545         help
1546           If you say Y here you will get access to the real time clock
1547           built into your VIA VT8500 SoC or its relatives.
1548
1549
1550 config RTC_DRV_SUN4V
1551         bool "SUN4V Hypervisor RTC"
1552         depends on SPARC64
1553         help
1554           If you say Y here you will get support for the Hypervisor
1555           based RTC on SUN4V systems.
1556
1557 config RTC_DRV_SUN6I
1558         bool "Allwinner A31 RTC"
1559         default MACH_SUN6I || MACH_SUN8I
1560         depends on COMMON_CLK
1561         depends on ARCH_SUNXI || COMPILE_TEST
1562         help
1563           If you say Y here you will get support for the RTC found in
1564           some Allwinner SoCs like the A31 or the A64.
1565
1566 config RTC_DRV_SUNXI
1567         tristate "Allwinner sun4i/sun7i RTC"
1568         depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
1569         help
1570           If you say Y here you will get support for the RTC found on
1571           Allwinner A10/A20.
1572
1573 config RTC_DRV_STARFIRE
1574         bool "Starfire RTC"
1575         depends on SPARC64
1576         help
1577           If you say Y here you will get support for the RTC found on
1578           Starfire systems.
1579
1580 config RTC_DRV_MV
1581         tristate "Marvell SoC RTC"
1582         depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
1583         help
1584           If you say yes here you will get support for the in-chip RTC
1585           that can be found in some of Marvell's SoC devices, such as
1586           the Kirkwood 88F6281 and 88F6192.
1587
1588           This driver can also be built as a module. If so, the module
1589           will be called rtc-mv.
1590
1591 config RTC_DRV_ARMADA38X
1592         tristate "Armada 38x Marvell SoC RTC"
1593         depends on ARCH_MVEBU || COMPILE_TEST
1594         depends on OF
1595         help
1596           If you say yes here you will get support for the in-chip RTC
1597           that can be found in the Armada 38x Marvell's SoC device
1598
1599           This driver can also be built as a module. If so, the module
1600           will be called armada38x-rtc.
1601
1602 config RTC_DRV_CADENCE
1603         tristate "Cadence RTC driver"
1604         depends on OF && HAS_IOMEM
1605         help
1606           If you say Y here you will get access to Cadence RTC IP
1607           found on certain SOCs.
1608
1609           To compile this driver as a module, choose M here: the
1610           module will be called rtc-cadence.
1611
1612 config RTC_DRV_FTRTC010
1613         tristate "Faraday Technology FTRTC010 RTC"
1614         depends on HAS_IOMEM
1615         default ARCH_GEMINI
1616         help
1617           If you say Y here you will get support for the
1618           Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.
1619
1620           This driver can also be built as a module. If so, the module
1621           will be called rtc-ftrtc010.
1622
1623 config RTC_DRV_PS3
1624         tristate "PS3 RTC"
1625         depends on PPC_PS3
1626         help
1627           If you say yes here you will get support for the RTC on PS3.
1628
1629           This driver can also be built as a module. If so, the module
1630           will be called rtc-ps3.
1631
1632 config RTC_DRV_STMP
1633         tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
1634         depends on ARCH_MXS || COMPILE_TEST
1635         select STMP_DEVICE
1636         help
1637           If you say yes here you will get support for the onboard
1638           STMP3xxx/i.MX23/i.MX28 RTC.
1639
1640           This driver can also be built as a module. If so, the module
1641           will be called rtc-stmp3xxx.
1642
1643 config RTC_DRV_PCAP
1644         tristate "PCAP RTC"
1645         depends on EZX_PCAP
1646         help
1647           If you say Y here you will get support for the RTC found on
1648           the PCAP2 ASIC used on some Motorola phones.
1649
1650 config RTC_DRV_MC13XXX
1651         depends on MFD_MC13XXX
1652         tristate "Freescale MC13xxx RTC"
1653         help
1654           This enables support for the RTCs found on Freescale's PMICs
1655           MC13783 and MC13892.
1656
1657 config RTC_DRV_MPC5121
1658         tristate "Freescale MPC5121 built-in RTC"
1659         depends on PPC_MPC512x || PPC_MPC52xx
1660         help
1661           If you say yes here you will get support for the
1662           built-in RTC on MPC5121 or on MPC5200.
1663
1664           This driver can also be built as a module. If so, the module
1665           will be called rtc-mpc5121.
1666
1667 config RTC_DRV_JZ4740
1668         tristate "Ingenic JZ4740 SoC"
1669         depends on MIPS || COMPILE_TEST
1670         depends on OF
1671         help
1672           If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
1673           controllers.
1674
1675           This driver can also be built as a module. If so, the module
1676           will be called rtc-jz4740.
1677
1678 config RTC_DRV_LPC24XX
1679         tristate "NXP RTC for LPC178x/18xx/408x/43xx"
1680         depends on ARCH_LPC18XX || COMPILE_TEST
1681         depends on OF && HAS_IOMEM
1682         help
1683           This enables support for the NXP RTC found which can be found on
1684           NXP LPC178x/18xx/408x/43xx devices.
1685
1686           If you have one of the devices above enable this driver to use
1687           the hardware RTC. This driver can also be built as a module. If
1688           so, the module will be called rtc-lpc24xx.
1689
1690 config RTC_DRV_LPC32XX
1691         depends on ARCH_LPC32XX || COMPILE_TEST
1692         tristate "NXP LPC32XX RTC"
1693         help
1694           This enables support for the NXP RTC in the LPC32XX
1695
1696           This driver can also be built as a module. If so, the module
1697           will be called rtc-lpc32xx.
1698
1699 config RTC_DRV_PM8XXX
1700         tristate "Qualcomm PMIC8XXX RTC"
1701         depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
1702         help
1703           If you say yes here you get support for the
1704           Qualcomm PMIC8XXX RTC.
1705
1706           To compile this driver as a module, choose M here: the
1707           module will be called rtc-pm8xxx.
1708
1709 config RTC_DRV_TEGRA
1710         tristate "NVIDIA Tegra Internal RTC driver"
1711         depends on ARCH_TEGRA || COMPILE_TEST
1712         help
1713           If you say yes here you get support for the
1714           Tegra 200 series internal RTC module.
1715
1716           This drive can also be built as a module. If so, the module
1717           will be called rtc-tegra.
1718
1719 config RTC_DRV_LOONGSON1
1720         tristate "loongson1 RTC support"
1721         depends on MACH_LOONGSON32
1722         help
1723           This is a driver for the loongson1 on-chip Counter0 (Time-Of-Year
1724           counter) to be used as a RTC.
1725
1726           This driver can also be built as a module. If so, the module
1727           will be called rtc-ls1x.
1728
1729 config RTC_DRV_MXC
1730         tristate "Freescale MXC Real Time Clock"
1731         depends on ARCH_MXC || COMPILE_TEST
1732         depends on HAS_IOMEM
1733         depends on OF
1734         help
1735            If you say yes here you get support for the Freescale MXC
1736            RTC module.
1737
1738            This driver can also be built as a module, if so, the module
1739            will be called "rtc-mxc".
1740
1741 config RTC_DRV_MXC_V2
1742         tristate "Freescale MXC Real Time Clock for i.MX53"
1743         depends on ARCH_MXC || COMPILE_TEST
1744         depends on HAS_IOMEM
1745         depends on OF
1746         help
1747            If you say yes here you get support for the Freescale MXC
1748            SRTC module in i.MX53 processor.
1749
1750            This driver can also be built as a module, if so, the module
1751            will be called "rtc-mxc_v2".
1752
1753 config RTC_DRV_SNVS
1754         tristate "Freescale SNVS RTC support"
1755         select REGMAP_MMIO
1756         depends on ARCH_MXC || COMPILE_TEST
1757         depends on HAS_IOMEM
1758         depends on OF
1759         help
1760            If you say yes here you get support for the Freescale SNVS
1761            Low Power (LP) RTC module.
1762
1763            This driver can also be built as a module, if so, the module
1764            will be called "rtc-snvs".
1765
1766 config RTC_DRV_IMX_SC
1767         depends on IMX_SCU
1768         depends on HAVE_ARM_SMCCC
1769         tristate "NXP i.MX System Controller RTC support"
1770         help
1771            If you say yes here you get support for the NXP i.MX System
1772            Controller RTC module.
1773
1774 config RTC_DRV_ST_LPC
1775         tristate "STMicroelectronics LPC RTC"
1776         depends on ARCH_STI
1777         depends on OF
1778         help
1779           Say Y here to include STMicroelectronics Low Power Controller
1780           (LPC) based RTC support.
1781
1782           To compile this driver as a module, choose M here: the
1783           module will be called rtc-st-lpc.
1784
1785 config RTC_DRV_MOXART
1786         tristate "MOXA ART RTC"
1787         depends on ARCH_MOXART || COMPILE_TEST
1788         help
1789            If you say yes here you get support for the MOXA ART
1790            RTC module.
1791
1792            This driver can also be built as a module. If so, the module
1793            will be called rtc-moxart
1794
1795 config RTC_DRV_MT2712
1796         tristate "MediaTek MT2712 SoC based RTC"
1797         depends on ARCH_MEDIATEK || COMPILE_TEST
1798         help
1799           This enables support for the real time clock built in the MediaTek
1800           SoCs for MT2712.
1801
1802           This drive can also be built as a module. If so, the module
1803           will be called rtc-mt2712.
1804
1805 config RTC_DRV_MT6397
1806         tristate "MediaTek PMIC based RTC"
1807         depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
1808         help
1809           This selects the MediaTek(R) RTC driver. RTC is part of MediaTek
1810           MT6397 PMIC. You should enable MT6397 PMIC MFD before select
1811           MediaTek(R) RTC driver.
1812
1813           If you want to use MediaTek(R) RTC interface, select Y or M here.
1814
1815 config RTC_DRV_MT7622
1816         tristate "MediaTek SoC based RTC"
1817         depends on ARCH_MEDIATEK || COMPILE_TEST
1818         help
1819           This enables support for the real time clock built in the MediaTek
1820           SoCs.
1821
1822           This drive can also be built as a module. If so, the module
1823           will be called rtc-mt7622.
1824
1825 config RTC_DRV_XGENE
1826         tristate "APM X-Gene RTC"
1827         depends on HAS_IOMEM
1828         depends on ARCH_XGENE || COMPILE_TEST
1829         help
1830           If you say yes here you get support for the APM X-Gene SoC real time
1831           clock.
1832
1833           This driver can also be built as a module, if so, the module
1834           will be called "rtc-xgene".
1835
1836 config RTC_DRV_PIC32
1837         tristate "Microchip PIC32 RTC"
1838         depends on MACH_PIC32
1839         default y
1840         help
1841            If you say yes here you get support for the PIC32 RTC module.
1842
1843            This driver can also be built as a module. If so, the module
1844            will be called rtc-pic32
1845
1846 config RTC_DRV_R7301
1847         tristate "EPSON TOYOCOM RTC-7301SF/DG"
1848         select REGMAP_MMIO
1849         depends on OF && HAS_IOMEM
1850         help
1851            If you say yes here you get support for the EPSON TOYOCOM
1852            RTC-7301SF/DG chips.
1853
1854            This driver can also be built as a module. If so, the module
1855            will be called rtc-r7301.
1856
1857 config RTC_DRV_STM32
1858         tristate "STM32 RTC"
1859         select REGMAP_MMIO
1860         depends on ARCH_STM32 || COMPILE_TEST
1861         help
1862            If you say yes here you get support for the STM32 On-Chip
1863            Real Time Clock.
1864
1865            This driver can also be built as a module, if so, the module
1866            will be called "rtc-stm32".
1867
1868 config RTC_DRV_CPCAP
1869         depends on MFD_CPCAP
1870         tristate "Motorola CPCAP RTC"
1871         help
1872            Say y here for CPCAP rtc found on some Motorola phones
1873            and tablets such as Droid 4.
1874
1875 config RTC_DRV_RTD119X
1876         bool "Realtek RTD129x RTC"
1877         depends on ARCH_REALTEK || COMPILE_TEST
1878         default ARCH_REALTEK
1879         help
1880           If you say yes here, you get support for the RTD1295 SoC
1881           Real Time Clock.
1882
1883 config RTC_DRV_ASPEED
1884         tristate "ASPEED RTC"
1885         depends on OF
1886         depends on ARCH_ASPEED || COMPILE_TEST
1887         help
1888           If you say yes here you get support for the ASPEED BMC SoC real time
1889           clocks.
1890
1891           This driver can also be built as a module, if so, the module
1892           will be called "rtc-aspeed".
1893
1894 comment "HID Sensor RTC drivers"
1895
1896 config RTC_DRV_HID_SENSOR_TIME
1897         tristate "HID Sensor Time"
1898         depends on USB_HID
1899         depends on HID_SENSOR_HUB && IIO
1900         select HID_SENSOR_IIO_COMMON
1901         help
1902           Say yes here to build support for the HID Sensors of type Time.
1903           This drivers makes such sensors available as RTCs.
1904
1905           If this driver is compiled as a module, it will be named
1906           rtc-hid-sensor-time.
1907
1908 config RTC_DRV_GOLDFISH
1909         tristate "Goldfish Real Time Clock"
1910         depends on HAS_IOMEM
1911         help
1912           Say yes to enable RTC driver for the Goldfish based virtual platform.
1913
1914           Goldfish is a code name for the virtual platform developed by Google
1915           for Android emulation.
1916
1917 config RTC_DRV_WILCO_EC
1918         tristate "Wilco EC RTC"
1919         depends on WILCO_EC
1920         default m
1921         help
1922           If you say yes here, you get read/write support for the Real Time
1923           Clock on the Wilco Embedded Controller (Wilco is a kind of Chromebook)
1924
1925           This can also be built as a module. If so, the module will
1926           be named "rtc_wilco_ec".
1927
1928 endif # RTC_CLASS