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