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