Merge tag 'io_uring-5.15-2021-09-11' of git://git.kernel.dk/linux-block
[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         select REGMAP_I2C
637         help
638           If you say yes here you get support for the Epson RX8010SJ RTC
639           chip.
640
641           This driver can also be built as a module. If so, the module
642           will be called rtc-rx8010.
643
644 config RTC_DRV_RX8581
645         tristate "Epson RX-8571/RX-8581"
646         select REGMAP_I2C
647         help
648           If you say yes here you will get support for the Epson RX-8571/
649           RX-8581.
650
651           This driver can also be built as a module. If so the module
652           will be called rtc-rx8581.
653
654 config RTC_DRV_RX8025
655         tristate "Epson RX-8025SA/NB"
656         help
657           If you say yes here you get support for the Epson
658           RX-8025SA/NB RTC chips.
659
660           This driver can also be built as a module. If so, the module
661           will be called rtc-rx8025.
662
663 config RTC_DRV_EM3027
664         tristate "EM Microelectronic EM3027"
665         help
666           If you say yes here you get support for the EM
667           Microelectronic EM3027 RTC chips.
668
669           This driver can also be built as a module. If so, the module
670           will be called rtc-em3027.
671
672 config RTC_DRV_RV3028
673         tristate "Micro Crystal RV3028"
674         select REGMAP_I2C
675         help
676           If you say yes here you get support for the Micro Crystal
677           RV3028.
678
679           This driver can also be built as a module. If so, the module
680           will be called rtc-rv3028.
681
682 config RTC_DRV_RV3032
683         tristate "Micro Crystal RV3032"
684         select REGMAP_I2C
685         help
686           If you say yes here you get support for the Micro Crystal
687           RV3032.
688
689           This driver can also be built as a module. If so, the module
690           will be called rtc-rv3032.
691
692 config RTC_DRV_RV8803
693         tristate "Micro Crystal RV8803, Epson RX8900"
694         help
695           If you say yes here you get support for the Micro Crystal RV8803 and
696           Epson RX8900 RTC chips.
697
698           This driver can also be built as a module. If so, the module
699           will be called rtc-rv8803.
700
701 config RTC_DRV_S5M
702         tristate "Samsung S2M/S5M series"
703         depends on MFD_SEC_CORE || COMPILE_TEST
704         select REGMAP_IRQ
705         select REGMAP_I2C
706         help
707           If you say yes here you will get support for the
708           RTC of Samsung S2MPS14 and S5M PMIC series.
709
710           This driver can also be built as a module. If so, the module
711           will be called rtc-s5m.
712
713 config RTC_DRV_SD3078
714         tristate "ZXW Shenzhen whwave SD3078"
715         select REGMAP_I2C
716         help
717           If you say yes here you get support for the ZXW Shenzhen whwave
718           SD3078 RTC chips.
719
720           This driver can also be built as a module. If so, the module
721           will be called rtc-sd3078
722
723 endif # I2C
724
725 comment "SPI RTC drivers"
726
727 if SPI_MASTER
728
729 config RTC_DRV_M41T93
730         tristate "ST M41T93"
731         help
732           If you say yes here you will get support for the
733           ST M41T93 SPI RTC chip.
734
735           This driver can also be built as a module. If so, the module
736           will be called rtc-m41t93.
737
738 config RTC_DRV_M41T94
739         tristate "ST M41T94"
740         help
741           If you say yes here you will get support for the
742           ST M41T94 SPI RTC chip.
743
744           This driver can also be built as a module. If so, the module
745           will be called rtc-m41t94.
746
747 config RTC_DRV_DS1302
748         tristate "Dallas/Maxim DS1302"
749         depends on SPI
750         help
751           If you say yes here you get support for the Dallas DS1302 RTC chips.
752
753           This driver can also be built as a module. If so, the module
754           will be called rtc-ds1302.
755
756 config RTC_DRV_DS1305
757         tristate "Dallas/Maxim DS1305/DS1306"
758         help
759           Select this driver to get support for the Dallas/Maxim DS1305
760           and DS1306 real time clock chips. These support a trickle
761           charger, alarms, and NVRAM in addition to the clock.
762
763           This driver can also be built as a module. If so, the module
764           will be called rtc-ds1305.
765
766 config RTC_DRV_DS1343
767         select REGMAP_SPI
768         tristate "Dallas/Maxim DS1343/DS1344"
769         help
770           If you say yes here you get support for the
771           Dallas/Maxim DS1343 and DS1344 real time clock chips.
772           Support for trickle charger, alarm is provided.
773
774           This driver can also be built as a module. If so, the module
775           will be called rtc-ds1343.
776
777 config RTC_DRV_DS1347
778         select REGMAP_SPI
779         tristate "Dallas/Maxim DS1347"
780         help
781           If you say yes here you get support for the
782           Dallas/Maxim DS1347 chips.
783
784           This driver only supports the RTC feature, and not other chip
785           features such as alarms.
786
787           This driver can also be built as a module. If so, the module
788           will be called rtc-ds1347.
789
790 config RTC_DRV_DS1390
791         tristate "Dallas/Maxim DS1390/93/94"
792         help
793           If you say yes here you get support for the
794           Dallas/Maxim DS1390/93/94 chips.
795
796           This driver supports the RTC feature and trickle charging but not
797           other chip features such as alarms.
798
799           This driver can also be built as a module. If so, the module
800           will be called rtc-ds1390.
801
802 config RTC_DRV_MAX6916
803         tristate "Maxim MAX6916"
804         help
805           If you say yes here you will get support for the
806           Maxim MAX6916 SPI RTC chip.
807
808           This driver only supports the RTC feature, and not other chip
809           features such as alarms.
810
811           This driver can also be built as a module. If so, the module
812           will be called rtc-max6916.
813
814 config RTC_DRV_R9701
815         tristate "Epson RTC-9701JE"
816         help
817           If you say yes here you will get support for the
818           Epson RTC-9701JE SPI RTC chip.
819
820           This driver can also be built as a module. If so, the module
821           will be called rtc-r9701.
822
823 config RTC_DRV_RX4581
824         tristate "Epson RX-4581"
825         help
826           If you say yes here you will get support for the Epson RX-4581.
827
828           This driver can also be built as a module. If so the module
829           will be called rtc-rx4581.
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 config RTC_DRV_RX6110
942         tristate "Epson RX-6110"
943         depends on RTC_I2C_AND_SPI
944         select REGMAP_SPI if SPI_MASTER
945         select REGMAP_I2C if I2C
946         help
947           If you say yes here you will get support for the Epson RX-6110.
948
949           This driver can also be built as a module. If so the module
950           will be called rtc-rx6110.
951
952 comment "Platform RTC drivers"
953
954 # this 'CMOS' RTC driver is arch dependent because it requires
955 # <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
956 # global rtc_lock ... it's not yet just another platform_device.
957
958 config RTC_DRV_CMOS
959         tristate "PC-style 'CMOS'"
960         depends on X86 || ARM || PPC || MIPS || SPARC64
961         default y if X86
962         select RTC_MC146818_LIB
963         help
964           Say "yes" here to get direct support for the real time clock
965           found in every PC or ACPI-based system, and some other boards.
966           Specifically the original MC146818, compatibles like those in
967           PC south bridges, the DS12887 or M48T86, some multifunction
968           or LPC bus chips, and so on.
969
970           Your system will need to define the platform device used by
971           this driver, otherwise it won't be accessible. This means
972           you can safely enable this driver if you don't know whether
973           or not your board has this kind of hardware.
974
975           This driver can also be built as a module. If so, the module
976           will be called rtc-cmos.
977
978 config RTC_DRV_ALPHA
979         bool "Alpha PC-style CMOS"
980         depends on ALPHA
981         select RTC_MC146818_LIB
982         default y
983         help
984           Direct support for the real-time clock found on every Alpha
985           system, specifically MC146818 compatibles.  If in doubt, say Y.
986
987 config RTC_DRV_DS1216
988         tristate "Dallas DS1216"
989         depends on SNI_RM
990         help
991           If you say yes here you get support for the Dallas DS1216 RTC chips.
992
993 config RTC_DRV_DS1286
994         tristate "Dallas DS1286"
995         depends on HAS_IOMEM
996         help
997           If you say yes here you get support for the Dallas DS1286 RTC chips.
998
999 config RTC_DRV_DS1511
1000         tristate "Dallas DS1511"
1001         depends on HAS_IOMEM
1002         help
1003           If you say yes here you get support for the
1004           Dallas DS1511 timekeeping/watchdog chip.
1005
1006           This driver can also be built as a module. If so, the module
1007           will be called rtc-ds1511.
1008
1009 config RTC_DRV_DS1553
1010         tristate "Maxim/Dallas DS1553"
1011         depends on HAS_IOMEM
1012         help
1013           If you say yes here you get support for the
1014           Maxim/Dallas DS1553 timekeeping chip.
1015
1016           This driver can also be built as a module. If so, the module
1017           will be called rtc-ds1553.
1018
1019 config RTC_DRV_DS1685_FAMILY
1020         tristate "Dallas/Maxim DS1685 Family"
1021         depends on HAS_IOMEM
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         depends on HAS_IOMEM
1156         help
1157           If you say Y here you will get support for the
1158           ST M48T86 and Dallas DS12887 RTC chips.
1159
1160           This driver can also be built as a module. If so, the module
1161           will be called rtc-m48t86.
1162
1163 config RTC_DRV_M48T35
1164         tristate "ST M48T35"
1165         depends on HAS_IOMEM
1166         help
1167           If you say Y here you will get support for the
1168           ST M48T35 RTC chip.
1169
1170           This driver can also be built as a module, if so, the module
1171           will be called "rtc-m48t35".
1172
1173 config RTC_DRV_M48T59
1174         tristate "ST M48T59/M48T08/M48T02"
1175         depends on HAS_IOMEM
1176         help
1177           If you say Y here you will get support for the
1178           ST M48T59 RTC chip and compatible ST M48T08 and M48T02.
1179
1180           These chips are usually found in Sun SPARC and UltraSPARC
1181           workstations.
1182
1183           This driver can also be built as a module, if so, the module
1184           will be called "rtc-m48t59".
1185
1186 config RTC_DRV_MSM6242
1187         tristate "Oki MSM6242"
1188         depends on HAS_IOMEM
1189         help
1190           If you say yes here you get support for the Oki MSM6242
1191           timekeeping chip. It is used in some Amiga models (e.g. A2000).
1192
1193           This driver can also be built as a module. If so, the module
1194           will be called rtc-msm6242.
1195
1196 config RTC_DRV_BQ4802
1197         tristate "TI BQ4802"
1198         depends on HAS_IOMEM
1199         help
1200           If you say Y here you will get support for the TI
1201           BQ4802 RTC chip.
1202
1203           This driver can also be built as a module. If so, the module
1204           will be called rtc-bq4802.
1205
1206 config RTC_DRV_RP5C01
1207         tristate "Ricoh RP5C01"
1208         depends on HAS_IOMEM
1209         help
1210           If you say yes here you get support for the Ricoh RP5C01
1211           timekeeping chip. It is used in some Amiga models (e.g. A3000
1212           and A4000).
1213
1214           This driver can also be built as a module. If so, the module
1215           will be called rtc-rp5c01.
1216
1217 config RTC_DRV_V3020
1218         tristate "EM Microelectronic V3020"
1219         help
1220           If you say yes here you will get support for the
1221           EM Microelectronic v3020 RTC chip.
1222
1223           This driver can also be built as a module. If so, the module
1224           will be called rtc-v3020.
1225
1226 config RTC_DRV_WM831X
1227         tristate "Wolfson Microelectronics WM831x RTC"
1228         depends on MFD_WM831X
1229         help
1230           If you say yes here you will get support for the RTC subsystem
1231           of the Wolfson Microelectronics WM831X series PMICs.
1232
1233           This driver can also be built as a module. If so, the module
1234           will be called "rtc-wm831x".
1235
1236 config RTC_DRV_WM8350
1237         tristate "Wolfson Microelectronics WM8350 RTC"
1238         depends on MFD_WM8350
1239         help
1240           If you say yes here you will get support for the RTC subsystem
1241           of the Wolfson Microelectronics WM8350.
1242
1243           This driver can also be built as a module. If so, the module
1244           will be called "rtc-wm8350".
1245
1246 config RTC_DRV_SC27XX
1247         tristate "Spreadtrum SC27xx RTC"
1248         depends on MFD_SC27XX_PMIC || COMPILE_TEST
1249         help
1250           If you say Y here you will get support for the RTC subsystem
1251           of the Spreadtrum SC27xx series PMICs. The SC27xx series PMICs
1252           includes the SC2720, SC2721, SC2723, SC2730 and SC2731 chips.
1253
1254           This driver can also be built as a module. If so, the module
1255           will be called rtc-sc27xx.
1256
1257 config RTC_DRV_SPEAR
1258         tristate "SPEAR ST RTC"
1259         depends on PLAT_SPEAR || COMPILE_TEST
1260         default y
1261         help
1262          If you say Y here you will get support for the RTC found on
1263          spear
1264
1265 config RTC_DRV_PCF50633
1266         depends on MFD_PCF50633
1267         tristate "NXP PCF50633 RTC"
1268         help
1269           If you say yes here you get support for the RTC subsystem of the
1270           NXP PCF50633 used in embedded systems.
1271
1272 config RTC_DRV_AB8500
1273         tristate "ST-Ericsson AB8500 RTC"
1274         depends on AB8500_CORE
1275         select RTC_INTF_DEV
1276         select RTC_INTF_DEV_UIE_EMUL
1277         help
1278           Select this to enable the ST-Ericsson AB8500 power management IC RTC
1279           support. This chip contains a battery- and capacitor-backed RTC.
1280
1281 config RTC_DRV_OPAL
1282         tristate "IBM OPAL RTC driver"
1283         depends on PPC_POWERNV
1284         default y
1285         help
1286           If you say yes here you get support for the PowerNV platform RTC
1287           driver based on OPAL interfaces.
1288
1289           This driver can also be built as a module. If so, the module
1290           will be called rtc-opal.
1291
1292 config RTC_DRV_ZYNQMP
1293         tristate "Xilinx Zynq Ultrascale+ MPSoC RTC"
1294         depends on OF && HAS_IOMEM
1295         help
1296           If you say yes here you get support for the RTC controller found on
1297           Xilinx Zynq Ultrascale+ MPSoC.
1298
1299 config RTC_DRV_CROS_EC
1300         tristate "Chrome OS EC RTC driver"
1301         depends on CROS_EC
1302         help
1303           If you say yes here you will get support for the
1304           Chrome OS Embedded Controller's RTC.
1305
1306           This driver can also be built as a module. If so, the module
1307           will be called rtc-cros-ec.
1308
1309 config RTC_DRV_NTXEC
1310         tristate "Netronix embedded controller RTC"
1311         depends on MFD_NTXEC
1312         help
1313           Say yes here if you want to support the RTC functionality of the
1314           embedded controller found in certain e-book readers designed by the
1315           original design manufacturer Netronix.
1316
1317 comment "on-CPU RTC drivers"
1318
1319 config RTC_DRV_ASM9260
1320         tristate "Alphascale asm9260 RTC"
1321         depends on MACH_ASM9260 || COMPILE_TEST
1322         help
1323           If you say yes here you get support for the RTC on the
1324           Alphascale asm9260 SoC.
1325
1326           This driver can also be built as a module. If so, the module
1327           will be called rtc-asm9260.
1328
1329 config RTC_DRV_DAVINCI
1330         tristate "TI DaVinci RTC"
1331         depends on ARCH_DAVINCI_DM365 || COMPILE_TEST
1332         help
1333           If you say yes here you get support for the RTC on the
1334           DaVinci platforms (DM365).
1335
1336           This driver can also be built as a module. If so, the module
1337           will be called rtc-davinci.
1338
1339 config RTC_DRV_DIGICOLOR
1340         tristate "Conexant Digicolor RTC"
1341         depends on ARCH_DIGICOLOR || COMPILE_TEST
1342         help
1343           If you say yes here you get support for the RTC on Conexant
1344           Digicolor platforms. This currently includes the CX92755 SoC.
1345
1346           This driver can also be built as a module. If so, the module
1347           will be called rtc-digicolor.
1348
1349 config RTC_DRV_IMXDI
1350         tristate "Freescale IMX DryIce Real Time Clock"
1351         depends on ARCH_MXC
1352         depends on OF
1353         help
1354            Support for Freescale IMX DryIce RTC
1355
1356            This driver can also be built as a module, if so, the module
1357            will be called "rtc-imxdi".
1358
1359 config RTC_DRV_FSL_FTM_ALARM
1360         tristate "Freescale FlexTimer alarm timer"
1361         depends on ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
1362         help
1363            For the FlexTimer in LS1012A, LS1021A, LS1028A, LS1043A, LS1046A,
1364            LS1088A, LS208xA, we can use FTM as the wakeup source.
1365
1366            Say y here to enable FTM alarm support. The FTM alarm provides
1367            alarm functions for wakeup system from deep sleep.
1368
1369            This driver can also be built as a module, if so, the module
1370            will be called "rtc-fsl-ftm-alarm".
1371
1372 config RTC_DRV_MESON
1373         tristate "Amlogic Meson RTC"
1374         depends on (ARM && ARCH_MESON) || COMPILE_TEST
1375         select REGMAP_MMIO
1376         help
1377            Support for the RTC block on the Amlogic Meson6, Meson8, Meson8b
1378            and Meson8m2 SoCs.
1379
1380            This driver can also be built as a module, if so, the module
1381            will be called "rtc-meson".
1382
1383 config RTC_DRV_MESON_VRTC
1384         tristate "Amlogic Meson Virtual RTC"
1385         depends on ARCH_MESON || COMPILE_TEST
1386         default m if ARCH_MESON
1387         help
1388           If you say yes here you will get support for the
1389           Virtual RTC of Amlogic SoCs.
1390
1391           This driver can also be built as a module. If so, the module
1392           will be called rtc-meson-vrtc.
1393
1394 config RTC_DRV_OMAP
1395         tristate "TI OMAP Real Time Clock"
1396         depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
1397         depends on OF
1398         depends on PINCTRL
1399         select GENERIC_PINCONF
1400         help
1401           Say "yes" here to support the on chip real time clock
1402           present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
1403
1404           This driver can also be built as a module, if so, module
1405           will be called rtc-omap.
1406
1407 config HAVE_S3C_RTC
1408         bool
1409         help
1410           This will include RTC support for Samsung SoCs. If
1411           you want to include RTC support for any machine, kindly
1412           select this in the respective mach-XXXX/Kconfig file.
1413
1414 config RTC_DRV_S3C
1415         tristate "Samsung S3C series SoC RTC"
1416         depends on ARCH_S3C64XX || HAVE_S3C_RTC || COMPILE_TEST
1417         help
1418           RTC (Realtime Clock) driver for the clock inbuilt into the
1419           Samsung S3C24XX series of SoCs. This can provide periodic
1420           interrupt rates from 1Hz to 64Hz for user programs, and
1421           wakeup from Alarm.
1422
1423           The driver currently supports the common features on all the
1424           S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
1425           and S3C2442.
1426
1427           This driver can also be build as a module. If so, the module
1428           will be called rtc-s3c.
1429
1430 config RTC_DRV_EP93XX
1431         tristate "Cirrus Logic EP93XX"
1432         depends on ARCH_EP93XX || COMPILE_TEST
1433         help
1434           If you say yes here you get support for the
1435           RTC embedded in the Cirrus Logic EP93XX processors.
1436
1437           This driver can also be built as a module. If so, the module
1438           will be called rtc-ep93xx.
1439
1440 config RTC_DRV_SA1100
1441         tristate "SA11x0/PXA2xx/PXA910"
1442         depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
1443         help
1444           If you say Y here you will get access to the real time clock
1445           built into your SA11x0 or PXA2xx CPU.
1446
1447           To compile this driver as a module, choose M here: the
1448           module will be called rtc-sa1100.
1449
1450 config RTC_DRV_SH
1451         tristate "SuperH On-Chip RTC"
1452         depends on SUPERH || ARCH_RENESAS
1453         help
1454           Say Y here to enable support for the on-chip RTC found in
1455           most SuperH processors. This RTC is also found in RZ/A SoCs.
1456
1457           To compile this driver as a module, choose M here: the
1458           module will be called rtc-sh.
1459
1460 config RTC_DRV_VR41XX
1461         tristate "NEC VR41XX"
1462         depends on CPU_VR41XX || COMPILE_TEST
1463         help
1464           If you say Y here you will get access to the real time clock
1465           built into your NEC VR41XX CPU.
1466
1467           To compile this driver as a module, choose M here: the
1468           module will be called rtc-vr41xx.
1469
1470 config RTC_DRV_PL030
1471         tristate "ARM AMBA PL030 RTC"
1472         depends on ARM_AMBA
1473         help
1474           If you say Y here you will get access to ARM AMBA
1475           PrimeCell PL030 RTC found on certain ARM SOCs.
1476
1477           To compile this driver as a module, choose M here: the
1478           module will be called rtc-pl030.
1479
1480 config RTC_DRV_PL031
1481         tristate "ARM AMBA PL031 RTC"
1482         depends on ARM_AMBA
1483         help
1484           If you say Y here you will get access to ARM AMBA
1485           PrimeCell PL031 RTC found on certain ARM SOCs.
1486
1487           To compile this driver as a module, choose M here: the
1488           module will be called rtc-pl031.
1489
1490 config RTC_DRV_AT91RM9200
1491         tristate "AT91RM9200 or some AT91SAM9 RTC"
1492         depends on ARCH_AT91 || COMPILE_TEST
1493         depends on OF
1494         help
1495           Driver for the internal RTC (Realtime Clock) module found on
1496           Atmel AT91RM9200's and some  AT91SAM9 chips. On AT91SAM9 chips
1497           this is powered by the backup power supply.
1498
1499 config RTC_DRV_AT91SAM9
1500         tristate "AT91SAM9 RTT as RTC"
1501         depends on ARCH_AT91 || COMPILE_TEST
1502         depends on OF && HAS_IOMEM
1503         select MFD_SYSCON
1504         help
1505           Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
1506           can be used as an RTC thanks to the backup power supply (e.g. a
1507           small coin cell battery) which keeps this block and the GPBR
1508           (General Purpose Backup Registers) block powered when the device
1509           is shutdown.
1510           Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
1511           probably want to use the real RTC block instead of the "RTT as an
1512           RTC" driver.
1513
1514 config RTC_DRV_AU1XXX
1515         tristate "Au1xxx Counter0 RTC support"
1516         depends on MIPS_ALCHEMY
1517         help
1518           This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
1519           counter) to be used as a RTC.
1520
1521           This driver can also be built as a module. If so, the module
1522           will be called rtc-au1xxx.
1523
1524 config RTC_DRV_RS5C313
1525         tristate "Ricoh RS5C313"
1526         depends on SH_LANDISK
1527         help
1528           If you say yes here you get support for the Ricoh RS5C313 RTC chips.
1529
1530 config RTC_DRV_GENERIC
1531         tristate "Generic RTC support"
1532         # Please consider writing a new RTC driver instead of using the generic
1533         # RTC abstraction
1534         depends on PARISC || M68K || PPC || SUPERH || COMPILE_TEST
1535         help
1536           Say Y or M here to enable RTC support on systems using the generic
1537           RTC abstraction. If you do not know what you are doing, you should
1538           just say Y.
1539
1540 config RTC_DRV_PXA
1541         tristate "PXA27x/PXA3xx"
1542         depends on ARCH_PXA
1543         select RTC_DRV_SA1100
1544         help
1545          If you say Y here you will get access to the real time clock
1546          built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
1547          consisting of an SA1100 compatible RTC and the extended PXA RTC.
1548
1549          This RTC driver uses PXA RTC registers available since pxa27x
1550          series (RDxR, RYxR) instead of legacy RCNR, RTAR.
1551
1552 config RTC_DRV_VT8500
1553         tristate "VIA/WonderMedia 85xx SoC RTC"
1554         depends on ARCH_VT8500 || COMPILE_TEST
1555         help
1556           If you say Y here you will get access to the real time clock
1557           built into your VIA VT8500 SoC or its relatives.
1558
1559
1560 config RTC_DRV_SUN4V
1561         bool "SUN4V Hypervisor RTC"
1562         depends on SPARC64
1563         help
1564           If you say Y here you will get support for the Hypervisor
1565           based RTC on SUN4V systems.
1566
1567 config RTC_DRV_SUN6I
1568         bool "Allwinner A31 RTC"
1569         default MACH_SUN6I || MACH_SUN8I
1570         depends on COMMON_CLK
1571         depends on ARCH_SUNXI || COMPILE_TEST
1572         help
1573           If you say Y here you will get support for the RTC found in
1574           some Allwinner SoCs like the A31 or the A64.
1575
1576 config RTC_DRV_SUNXI
1577         tristate "Allwinner sun4i/sun7i RTC"
1578         depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
1579         help
1580           If you say Y here you will get support for the RTC found on
1581           Allwinner A10/A20.
1582
1583 config RTC_DRV_STARFIRE
1584         bool "Starfire RTC"
1585         depends on SPARC64
1586         help
1587           If you say Y here you will get support for the RTC found on
1588           Starfire systems.
1589
1590 config RTC_DRV_MV
1591         tristate "Marvell SoC RTC"
1592         depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
1593         help
1594           If you say yes here you will get support for the in-chip RTC
1595           that can be found in some of Marvell's SoC devices, such as
1596           the Kirkwood 88F6281 and 88F6192.
1597
1598           This driver can also be built as a module. If so, the module
1599           will be called rtc-mv.
1600
1601 config RTC_DRV_ARMADA38X
1602         tristate "Armada 38x Marvell SoC RTC"
1603         depends on ARCH_MVEBU || COMPILE_TEST
1604         depends on OF
1605         help
1606           If you say yes here you will get support for the in-chip RTC
1607           that can be found in the Armada 38x Marvell's SoC device
1608
1609           This driver can also be built as a module. If so, the module
1610           will be called armada38x-rtc.
1611
1612 config RTC_DRV_CADENCE
1613         tristate "Cadence RTC driver"
1614         depends on OF && HAS_IOMEM
1615         help
1616           If you say Y here you will get access to Cadence RTC IP
1617           found on certain SOCs.
1618
1619           To compile this driver as a module, choose M here: the
1620           module will be called rtc-cadence.
1621
1622 config RTC_DRV_FTRTC010
1623         tristate "Faraday Technology FTRTC010 RTC"
1624         depends on HAS_IOMEM
1625         default ARCH_GEMINI
1626         help
1627           If you say Y here you will get support for the
1628           Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.
1629
1630           This driver can also be built as a module. If so, the module
1631           will be called rtc-ftrtc010.
1632
1633 config RTC_DRV_PS3
1634         tristate "PS3 RTC"
1635         depends on PPC_PS3
1636         help
1637           If you say yes here you will get support for the RTC on PS3.
1638
1639           This driver can also be built as a module. If so, the module
1640           will be called rtc-ps3.
1641
1642 config RTC_DRV_STMP
1643         tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
1644         depends on ARCH_MXS || COMPILE_TEST
1645         select STMP_DEVICE
1646         help
1647           If you say yes here you will get support for the onboard
1648           STMP3xxx/i.MX23/i.MX28 RTC.
1649
1650           This driver can also be built as a module. If so, the module
1651           will be called rtc-stmp3xxx.
1652
1653 config RTC_DRV_PCAP
1654         tristate "PCAP RTC"
1655         depends on EZX_PCAP
1656         help
1657           If you say Y here you will get support for the RTC found on
1658           the PCAP2 ASIC used on some Motorola phones.
1659
1660 config RTC_DRV_MC13XXX
1661         depends on MFD_MC13XXX
1662         tristate "Freescale MC13xxx RTC"
1663         help
1664           This enables support for the RTCs found on Freescale's PMICs
1665           MC13783 and MC13892.
1666
1667 config RTC_DRV_MPC5121
1668         tristate "Freescale MPC5121 built-in RTC"
1669         depends on PPC_MPC512x || PPC_MPC52xx
1670         help
1671           If you say yes here you will get support for the
1672           built-in RTC on MPC5121 or on MPC5200.
1673
1674           This driver can also be built as a module. If so, the module
1675           will be called rtc-mpc5121.
1676
1677 config RTC_DRV_JZ4740
1678         tristate "Ingenic JZ4740 SoC"
1679         depends on MIPS || COMPILE_TEST
1680         depends on OF
1681         help
1682           If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
1683           controllers.
1684
1685           This driver can also be built as a module. If so, the module
1686           will be called rtc-jz4740.
1687
1688 config RTC_DRV_LPC24XX
1689         tristate "NXP RTC for LPC178x/18xx/408x/43xx"
1690         depends on ARCH_LPC18XX || COMPILE_TEST
1691         depends on OF && HAS_IOMEM
1692         help
1693           This enables support for the NXP RTC found which can be found on
1694           NXP LPC178x/18xx/408x/43xx devices.
1695
1696           If you have one of the devices above enable this driver to use
1697           the hardware RTC. This driver can also be built as a module. If
1698           so, the module will be called rtc-lpc24xx.
1699
1700 config RTC_DRV_LPC32XX
1701         depends on ARCH_LPC32XX || COMPILE_TEST
1702         tristate "NXP LPC32XX RTC"
1703         help
1704           This enables support for the NXP RTC in the LPC32XX
1705
1706           This driver can also be built as a module. If so, the module
1707           will be called rtc-lpc32xx.
1708
1709 config RTC_DRV_PM8XXX
1710         tristate "Qualcomm PMIC8XXX RTC"
1711         depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
1712         help
1713           If you say yes here you get support for the
1714           Qualcomm PMIC8XXX RTC.
1715
1716           To compile this driver as a module, choose M here: the
1717           module will be called rtc-pm8xxx.
1718
1719 config RTC_DRV_TEGRA
1720         tristate "NVIDIA Tegra Internal RTC driver"
1721         depends on ARCH_TEGRA || COMPILE_TEST
1722         help
1723           If you say yes here you get support for the
1724           Tegra 200 series internal RTC module.
1725
1726           This drive can also be built as a module. If so, the module
1727           will be called rtc-tegra.
1728
1729 config RTC_DRV_LOONGSON1
1730         tristate "loongson1 RTC support"
1731         depends on MACH_LOONGSON32
1732         help
1733           This is a driver for the loongson1 on-chip Counter0 (Time-Of-Year
1734           counter) to be used as a RTC.
1735
1736           This driver can also be built as a module. If so, the module
1737           will be called rtc-ls1x.
1738
1739 config RTC_DRV_MXC
1740         tristate "Freescale MXC Real Time Clock"
1741         depends on ARCH_MXC || COMPILE_TEST
1742         depends on HAS_IOMEM
1743         depends on OF
1744         help
1745            If you say yes here you get support for the Freescale MXC
1746            RTC module.
1747
1748            This driver can also be built as a module, if so, the module
1749            will be called "rtc-mxc".
1750
1751 config RTC_DRV_MXC_V2
1752         tristate "Freescale MXC Real Time Clock for i.MX53"
1753         depends on ARCH_MXC || COMPILE_TEST
1754         depends on HAS_IOMEM
1755         depends on OF
1756         help
1757            If you say yes here you get support for the Freescale MXC
1758            SRTC module in i.MX53 processor.
1759
1760            This driver can also be built as a module, if so, the module
1761            will be called "rtc-mxc_v2".
1762
1763 config RTC_DRV_SNVS
1764         tristate "Freescale SNVS RTC support"
1765         select REGMAP_MMIO
1766         depends on ARCH_MXC || COMPILE_TEST
1767         depends on HAS_IOMEM
1768         depends on OF
1769         help
1770            If you say yes here you get support for the Freescale SNVS
1771            Low Power (LP) RTC module.
1772
1773            This driver can also be built as a module, if so, the module
1774            will be called "rtc-snvs".
1775
1776 config RTC_DRV_IMX_SC
1777         depends on IMX_SCU
1778         depends on HAVE_ARM_SMCCC
1779         tristate "NXP i.MX System Controller RTC support"
1780         help
1781            If you say yes here you get support for the NXP i.MX System
1782            Controller RTC module.
1783
1784 config RTC_DRV_ST_LPC
1785         tristate "STMicroelectronics LPC RTC"
1786         depends on ARCH_STI
1787         depends on OF
1788         help
1789           Say Y here to include STMicroelectronics Low Power Controller
1790           (LPC) based RTC support.
1791
1792           To compile this driver as a module, choose M here: the
1793           module will be called rtc-st-lpc.
1794
1795 config RTC_DRV_MOXART
1796         tristate "MOXA ART RTC"
1797         depends on ARCH_MOXART || COMPILE_TEST
1798         help
1799            If you say yes here you get support for the MOXA ART
1800            RTC module.
1801
1802            This driver can also be built as a module. If so, the module
1803            will be called rtc-moxart
1804
1805 config RTC_DRV_MT2712
1806         tristate "MediaTek MT2712 SoC based RTC"
1807         depends on ARCH_MEDIATEK || COMPILE_TEST
1808         help
1809           This enables support for the real time clock built in the MediaTek
1810           SoCs for MT2712.
1811
1812           This drive can also be built as a module. If so, the module
1813           will be called rtc-mt2712.
1814
1815 config RTC_DRV_MT6397
1816         tristate "MediaTek PMIC based RTC"
1817         depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
1818         help
1819           This selects the MediaTek(R) RTC driver. RTC is part of MediaTek
1820           MT6397 PMIC. You should enable MT6397 PMIC MFD before select
1821           MediaTek(R) RTC driver.
1822
1823           If you want to use MediaTek(R) RTC interface, select Y or M here.
1824
1825 config RTC_DRV_MT7622
1826         tristate "MediaTek SoC based RTC"
1827         depends on ARCH_MEDIATEK || COMPILE_TEST
1828         help
1829           This enables support for the real time clock built in the MediaTek
1830           SoCs.
1831
1832           This drive can also be built as a module. If so, the module
1833           will be called rtc-mt7622.
1834
1835 config RTC_DRV_XGENE
1836         tristate "APM X-Gene RTC"
1837         depends on HAS_IOMEM
1838         depends on ARCH_XGENE || COMPILE_TEST
1839         help
1840           If you say yes here you get support for the APM X-Gene SoC real time
1841           clock.
1842
1843           This driver can also be built as a module, if so, the module
1844           will be called "rtc-xgene".
1845
1846 config RTC_DRV_PIC32
1847         tristate "Microchip PIC32 RTC"
1848         depends on MACH_PIC32
1849         default y
1850         help
1851            If you say yes here you get support for the PIC32 RTC module.
1852
1853            This driver can also be built as a module. If so, the module
1854            will be called rtc-pic32
1855
1856 config RTC_DRV_R7301
1857         tristate "EPSON TOYOCOM RTC-7301SF/DG"
1858         select REGMAP_MMIO
1859         depends on OF && HAS_IOMEM
1860         help
1861            If you say yes here you get support for the EPSON TOYOCOM
1862            RTC-7301SF/DG chips.
1863
1864            This driver can also be built as a module. If so, the module
1865            will be called rtc-r7301.
1866
1867 config RTC_DRV_STM32
1868         tristate "STM32 RTC"
1869         select REGMAP_MMIO
1870         depends on ARCH_STM32 || COMPILE_TEST
1871         help
1872            If you say yes here you get support for the STM32 On-Chip
1873            Real Time Clock.
1874
1875            This driver can also be built as a module, if so, the module
1876            will be called "rtc-stm32".
1877
1878 config RTC_DRV_CPCAP
1879         depends on MFD_CPCAP
1880         tristate "Motorola CPCAP RTC"
1881         help
1882            Say y here for CPCAP rtc found on some Motorola phones
1883            and tablets such as Droid 4.
1884
1885 config RTC_DRV_RTD119X
1886         bool "Realtek RTD129x RTC"
1887         depends on ARCH_REALTEK || COMPILE_TEST
1888         default ARCH_REALTEK
1889         help
1890           If you say yes here, you get support for the RTD1295 SoC
1891           Real Time Clock.
1892
1893 config RTC_DRV_ASPEED
1894         tristate "ASPEED RTC"
1895         depends on OF
1896         depends on ARCH_ASPEED || COMPILE_TEST
1897         help
1898           If you say yes here you get support for the ASPEED BMC SoC real time
1899           clocks.
1900
1901           This driver can also be built as a module, if so, the module
1902           will be called "rtc-aspeed".
1903
1904 comment "HID Sensor RTC drivers"
1905
1906 config RTC_DRV_HID_SENSOR_TIME
1907         tristate "HID Sensor Time"
1908         depends on USB_HID
1909         depends on HID_SENSOR_HUB && IIO
1910         select HID_SENSOR_IIO_COMMON
1911         help
1912           Say yes here to build support for the HID Sensors of type Time.
1913           This drivers makes such sensors available as RTCs.
1914
1915           If this driver is compiled as a module, it will be named
1916           rtc-hid-sensor-time.
1917
1918 config RTC_DRV_GOLDFISH
1919         tristate "Goldfish Real Time Clock"
1920         depends on HAS_IOMEM
1921         help
1922           Say yes to enable RTC driver for the Goldfish based virtual platform.
1923
1924           Goldfish is a code name for the virtual platform developed by Google
1925           for Android emulation.
1926
1927 config RTC_DRV_WILCO_EC
1928         tristate "Wilco EC RTC"
1929         depends on WILCO_EC
1930         default m
1931         help
1932           If you say yes here, you get read/write support for the Real Time
1933           Clock on the Wilco Embedded Controller (Wilco is a kind of Chromebook)
1934
1935           This can also be built as a module. If so, the module will
1936           be named "rtc_wilco_ec".
1937
1938 endif # RTC_CLASS