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