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