xref: /linux/drivers/rtc/Kconfig (revision 1c4b5ecb7ea190fa3e9f9d6891e6c90b60e04f24)
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
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	  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
53config 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
61config 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
72config 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
78config 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
87config 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
95comment "RTC interfaces"
96
97config 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
107config 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
120config 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
135config 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
147config 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
161comment "I2C RTC drivers"
162
163if I2C
164
165config 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
175config 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
185config 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
195config 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
205config 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
216config 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
226config 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
237config 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
247config 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
267config 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
281config 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
291config 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
300config 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
309config 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
320config 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
326config 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
335config 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
346config 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
356config 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
366config 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
376config 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
386config 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
396config 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
405config 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
414config 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
423config 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
433config 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
442config RTC_DRV_PCF8523
443	tristate "NXP PCF8523"
444	select REGMAP_I2C
445	help
446	  If you say yes here you get support for the NXP PCF8523 RTC
447	  chips.
448
449	  This driver can also be built as a module. If so, the module
450	  will be called rtc-pcf8523.
451
452config RTC_DRV_PCF85063
453	tristate "NXP PCF85063"
454	select REGMAP_I2C
455	help
456	  If you say yes here you get support for the PCF85063 RTC chip
457
458	  This driver can also be built as a module. If so, the module
459	  will be called rtc-pcf85063.
460
461config RTC_DRV_PCF85363
462	tristate "NXP PCF85363"
463	select REGMAP_I2C
464	help
465	  If you say yes here you get support for the PCF85363 RTC chip.
466
467	  This driver can also be built as a module. If so, the module
468	  will be called rtc-pcf85363.
469
470	  The nvmem interface will be named pcf85363-#, where # is the
471	  zero-based instance number.
472
473config RTC_DRV_PCF8563
474	tristate "Philips PCF8563/Epson RTC8564"
475	help
476	  If you say yes here you get support for the
477	  Philips PCF8563 RTC chip. The Epson RTC8564
478	  should work as well.
479
480	  This driver can also be built as a module. If so, the module
481	  will be called rtc-pcf8563.
482
483config RTC_DRV_PCF8583
484	tristate "Philips PCF8583"
485	help
486	  If you say yes here you get support for the Philips PCF8583
487	  RTC chip found on Acorn RiscPCs. This driver supports the
488	  platform specific method of retrieving the current year from
489	  the RTC's SRAM. It will work on other platforms with the same
490	  chip, but the year will probably have to be tweaked.
491
492	  This driver can also be built as a module. If so, the module
493	  will be called rtc-pcf8583.
494
495config RTC_DRV_M41T80
496	tristate "ST M41T62/65/M41T80/81/82/83/84/85/87 and compatible"
497	help
498	  If you say Y here you will get support for the ST M41T60
499	  and M41T80 RTC chips series. Currently, the following chips are
500	  supported: M41T62, M41T65, M41T80, M41T81, M41T82, M41T83, M41ST84,
501	  M41ST85, M41ST87, and MicroCrystal RV4162.
502
503	  This driver can also be built as a module. If so, the module
504	  will be called rtc-m41t80.
505
506config RTC_DRV_M41T80_WDT
507	bool "ST M41T65/M41T80 series RTC watchdog timer"
508	depends on RTC_DRV_M41T80
509	help
510	  If you say Y here you will get support for the
511	  watchdog timer in the ST M41T60 and M41T80 RTC chips series.
512
513config RTC_DRV_BD70528
514	tristate "ROHM BD71815 and BD71828 PMIC RTC"
515	depends on MFD_ROHM_BD71828
516	help
517	  If you say Y here you will get support for the RTC
518	  block on ROHM BD71815 and BD71828 Power Management IC.
519
520	  This driver can also be built as a module. If so, the module
521	  will be called rtc-bd70528.
522
523config RTC_DRV_BQ32K
524	tristate "TI BQ32000"
525	help
526	  If you say Y here you will get support for the TI
527	  BQ32000 I2C RTC chip.
528
529	  This driver can also be built as a module. If so, the module
530	  will be called rtc-bq32k.
531
532config RTC_DRV_DM355EVM
533	tristate "TI DaVinci DM355 EVM RTC"
534	depends on MFD_DM355EVM_MSP
535	help
536	  Supports the RTC firmware in the MSP430 on the DM355 EVM.
537
538config RTC_DRV_TWL92330
539	bool "TI TWL92330/Menelaus"
540	depends on MENELAUS
541	help
542	  If you say yes here you get support for the RTC on the
543	  TWL92330 "Menelaus" power management chip, used with OMAP2
544	  platforms. The support is integrated with the rest of
545	  the Menelaus driver; it's not separate module.
546
547config RTC_DRV_TWL4030
548	tristate "TI TWL4030/TWL5030/TWL6030/TPS659x0"
549	depends on TWL4030_CORE
550	depends on OF
551	help
552	  If you say yes here you get support for the RTC on the
553	  TWL4030/TWL5030/TWL6030 family chips, used mostly with OMAP3 platforms.
554
555	  This driver can also be built as a module. If so, the module
556	  will be called rtc-twl.
557
558config RTC_DRV_PALMAS
559	tristate "TI Palmas RTC driver"
560	depends on MFD_PALMAS
561	help
562	  If you say yes here you get support for the RTC of TI PALMA series PMIC
563	  chips.
564
565	  This driver can also be built as a module. If so, the module
566	  will be called rtc-palma.
567
568config RTC_DRV_TPS6586X
569	tristate "TI TPS6586X RTC driver"
570	depends on MFD_TPS6586X
571	help
572	  TI Power Management IC TPS6586X supports RTC functionality
573	  along with alarm. This driver supports the RTC driver for
574	  the TPS6586X RTC module.
575
576config RTC_DRV_TPS65910
577	tristate "TI TPS65910 RTC driver"
578	depends on MFD_TPS65910
579	help
580	  If you say yes here you get support for the RTC on the
581	  TPS65910 chips.
582
583	  This driver can also be built as a module. If so, the module
584	  will be called rtc-tps65910.
585
586config RTC_DRV_RC5T583
587	tristate "RICOH 5T583 RTC driver"
588	depends on MFD_RC5T583
589	help
590	  If you say yes here you get support for the RTC on the
591	  RICOH 5T583 chips.
592
593	  This driver can also be built as a module. If so, the module
594	  will be called rtc-rc5t583.
595
596config RTC_DRV_RC5T619
597	tristate "RICOH RC5T619 RTC driver"
598	depends on MFD_RN5T618
599	help
600	  If you say yes here you get support for the RTC on the
601	  RICOH RC5T619 chips.
602
603	  This driver can also be built as a module. If so, the module
604	  will be called rtc-rc5t619.
605
606config RTC_DRV_S35390A
607	tristate "Seiko Instruments S-35390A"
608	select BITREVERSE
609	help
610	  If you say yes here you will get support for the Seiko
611	  Instruments S-35390A.
612
613	  This driver can also be built as a module. If so the module
614	  will be called rtc-s35390a.
615
616config RTC_DRV_FM3130
617	tristate "Ramtron FM3130"
618	help
619	  If you say Y here you will get support for the
620	  Ramtron FM3130 RTC chips.
621	  Ramtron FM3130 is a chip with two separate devices inside,
622	  RTC clock and FRAM. This driver provides only RTC functionality.
623
624	  This driver can also be built as a module. If so the module
625	  will be called rtc-fm3130.
626
627config RTC_DRV_RX8010
628	tristate "Epson RX8010SJ"
629	select REGMAP_I2C
630	help
631	  If you say yes here you get support for the Epson RX8010SJ RTC
632	  chip.
633
634	  This driver can also be built as a module. If so, the module
635	  will be called rtc-rx8010.
636
637config RTC_DRV_RX8581
638	tristate "Epson RX-8571/RX-8581"
639	select REGMAP_I2C
640	help
641	  If you say yes here you will get support for the Epson RX-8571/
642	  RX-8581.
643
644	  This driver can also be built as a module. If so the module
645	  will be called rtc-rx8581.
646
647config RTC_DRV_RX8025
648	tristate "Epson RX-8025SA/NB"
649	help
650	  If you say yes here you get support for the Epson
651	  RX-8025SA/NB RTC chips.
652
653	  This driver can also be built as a module. If so, the module
654	  will be called rtc-rx8025.
655
656config RTC_DRV_EM3027
657	tristate "EM Microelectronic EM3027"
658	help
659	  If you say yes here you get support for the EM
660	  Microelectronic EM3027 RTC chips.
661
662	  This driver can also be built as a module. If so, the module
663	  will be called rtc-em3027.
664
665config RTC_DRV_RV3028
666	tristate "Micro Crystal RV3028"
667	select REGMAP_I2C
668	help
669	  If you say yes here you get support for the Micro Crystal
670	  RV3028.
671
672	  This driver can also be built as a module. If so, the module
673	  will be called rtc-rv3028.
674
675config RTC_DRV_RV3032
676	tristate "Micro Crystal RV3032"
677	select REGMAP_I2C
678	help
679	  If you say yes here you get support for the Micro Crystal
680	  RV3032.
681
682	  This driver can also be built as a module. If so, the module
683	  will be called rtc-rv3032.
684
685config RTC_DRV_RV8803
686	tristate "Micro Crystal RV8803, Epson RX8900"
687	help
688	  If you say yes here you get support for the Micro Crystal RV8803 and
689	  Epson RX8900 RTC chips.
690
691	  This driver can also be built as a module. If so, the module
692	  will be called rtc-rv8803.
693
694config RTC_DRV_S5M
695	tristate "Samsung S2M/S5M series"
696	depends on MFD_SEC_CORE || COMPILE_TEST
697	select REGMAP_IRQ
698	select REGMAP_I2C
699	help
700	  If you say yes here you will get support for the
701	  RTC of Samsung S2MPS14 and S5M PMIC series.
702
703	  This driver can also be built as a module. If so, the module
704	  will be called rtc-s5m.
705
706config RTC_DRV_SD3078
707	tristate "ZXW Shenzhen whwave SD3078"
708	select REGMAP_I2C
709	help
710	  If you say yes here you get support for the ZXW Shenzhen whwave
711	  SD3078 RTC chips.
712
713	  This driver can also be built as a module. If so, the module
714	  will be called rtc-sd3078
715
716endif # I2C
717
718comment "SPI RTC drivers"
719
720if SPI_MASTER
721
722config RTC_DRV_M41T93
723	tristate "ST M41T93"
724	help
725	  If you say yes here you will get support for the
726	  ST M41T93 SPI RTC chip.
727
728	  This driver can also be built as a module. If so, the module
729	  will be called rtc-m41t93.
730
731config RTC_DRV_M41T94
732	tristate "ST M41T94"
733	help
734	  If you say yes here you will get support for the
735	  ST M41T94 SPI RTC chip.
736
737	  This driver can also be built as a module. If so, the module
738	  will be called rtc-m41t94.
739
740config RTC_DRV_DS1302
741	tristate "Dallas/Maxim DS1302"
742	depends on SPI
743	help
744	  If you say yes here you get support for the Dallas DS1302 RTC chips.
745
746	  This driver can also be built as a module. If so, the module
747	  will be called rtc-ds1302.
748
749config RTC_DRV_DS1305
750	tristate "Dallas/Maxim DS1305/DS1306"
751	help
752	  Select this driver to get support for the Dallas/Maxim DS1305
753	  and DS1306 real time clock chips. These support a trickle
754	  charger, alarms, and NVRAM in addition to the clock.
755
756	  This driver can also be built as a module. If so, the module
757	  will be called rtc-ds1305.
758
759config RTC_DRV_DS1343
760	select REGMAP_SPI
761	tristate "Dallas/Maxim DS1343/DS1344"
762	help
763	  If you say yes here you get support for the
764	  Dallas/Maxim DS1343 and DS1344 real time clock chips.
765	  Support for trickle charger, alarm is provided.
766
767	  This driver can also be built as a module. If so, the module
768	  will be called rtc-ds1343.
769
770config RTC_DRV_DS1347
771	select REGMAP_SPI
772	tristate "Dallas/Maxim DS1347"
773	help
774	  If you say yes here you get support for the
775	  Dallas/Maxim DS1347 chips.
776
777	  This driver only supports the RTC feature, and not other chip
778	  features such as alarms.
779
780	  This driver can also be built as a module. If so, the module
781	  will be called rtc-ds1347.
782
783config RTC_DRV_DS1390
784	tristate "Dallas/Maxim DS1390/93/94"
785	help
786	  If you say yes here you get support for the
787	  Dallas/Maxim DS1390/93/94 chips.
788
789	  This driver supports the RTC feature and trickle charging but not
790	  other chip features such as alarms.
791
792	  This driver can also be built as a module. If so, the module
793	  will be called rtc-ds1390.
794
795config RTC_DRV_MAX6916
796	tristate "Maxim MAX6916"
797	help
798	  If you say yes here you will get support for the
799	  Maxim MAX6916 SPI RTC chip.
800
801	  This driver only supports the RTC feature, and not other chip
802	  features such as alarms.
803
804	  This driver can also be built as a module. If so, the module
805	  will be called rtc-max6916.
806
807config RTC_DRV_R9701
808	tristate "Epson RTC-9701JE"
809	help
810	  If you say yes here you will get support for the
811	  Epson RTC-9701JE SPI RTC chip.
812
813	  This driver can also be built as a module. If so, the module
814	  will be called rtc-r9701.
815
816config RTC_DRV_RX4581
817	tristate "Epson RX-4581"
818	help
819	  If you say yes here you will get support for the Epson RX-4581.
820
821	  This driver can also be built as a module. If so the module
822	  will be called rtc-rx4581.
823
824config RTC_DRV_RS5C348
825	tristate "Ricoh RS5C348A/B"
826	help
827	  If you say yes here you get support for the
828	  Ricoh RS5C348A and RS5C348B RTC chips.
829
830	  This driver can also be built as a module. If so, the module
831	  will be called rtc-rs5c348.
832
833config RTC_DRV_MAX6902
834	tristate "Maxim MAX6902"
835	help
836	  If you say yes here you will get support for the
837	  Maxim MAX6902 SPI RTC chip.
838
839	  This driver can also be built as a module. If so, the module
840	  will be called rtc-max6902.
841
842config RTC_DRV_PCF2123
843	tristate "NXP PCF2123"
844	select REGMAP_SPI
845	help
846	  If you say yes here you get support for the NXP PCF2123
847	  RTC chip.
848
849	  This driver can also be built as a module. If so, the module
850	  will be called rtc-pcf2123.
851
852config RTC_DRV_MCP795
853	tristate "Microchip MCP795"
854	help
855	  If you say yes here you will get support for the Microchip MCP795.
856
857	  This driver can also be built as a module. If so the module
858	  will be called rtc-mcp795.
859
860endif # SPI_MASTER
861
862#
863# Helper to resolve issues with configs that have SPI enabled but I2C
864# modular.  See SND_SOC_I2C_AND_SPI for more information
865#
866config RTC_I2C_AND_SPI
867	tristate
868	default m if I2C=m
869	default y if I2C=y
870	default y if SPI_MASTER=y
871
872comment "SPI and I2C RTC drivers"
873
874config RTC_DRV_DS3232
875	tristate "Dallas/Maxim DS3232/DS3234"
876	depends on RTC_I2C_AND_SPI
877	select REGMAP_I2C if I2C
878	select REGMAP_SPI if SPI_MASTER
879	help
880	  If you say yes here you get support for Dallas Semiconductor
881	  DS3232 and DS3234 real-time clock chips. If an interrupt is associated
882	  with the device, the alarm functionality is supported.
883
884	  This driver can also be built as a module.  If so, the module
885	  will be called rtc-ds3232.
886
887config RTC_DRV_DS3232_HWMON
888	bool "HWMON support for Dallas/Maxim DS3232/DS3234"
889	depends on RTC_DRV_DS3232 && HWMON && !(RTC_DRV_DS3232=y && HWMON=m)
890	default y
891	help
892	  Say Y here if you want to expose temperature sensor data on
893	  rtc-ds3232
894
895config RTC_DRV_PCF2127
896	tristate "NXP PCF2127"
897	depends on RTC_I2C_AND_SPI
898	select REGMAP_I2C if I2C
899	select REGMAP_SPI if SPI_MASTER
900	select WATCHDOG_CORE if WATCHDOG
901	help
902	  If you say yes here you get support for the NXP PCF2127/29 RTC
903	  chips with integrated quartz crystal for industrial applications.
904	  Both chips also have watchdog timer and tamper switch detection
905	  features.
906
907	  PCF2127 has an additional feature of 512 bytes battery backed
908	  memory that's accessible using nvmem interface.
909
910	  This driver can also be built as a module. If so, the module
911	  will be called rtc-pcf2127.
912
913config RTC_DRV_RV3029C2
914	tristate "Micro Crystal RV3029/3049"
915	depends on RTC_I2C_AND_SPI
916	select REGMAP_I2C if I2C
917	select REGMAP_SPI if SPI_MASTER
918	help
919	  If you say yes here you get support for the Micro Crystal
920	  RV3029 and RV3049 RTC chips.
921
922	  This driver can also be built as a module. If so, the module
923	  will be called rtc-rv3029c2.
924
925config RTC_DRV_RV3029_HWMON
926	bool "HWMON support for RV3029/3049"
927	depends on RTC_DRV_RV3029C2 && HWMON
928	depends on !(RTC_DRV_RV3029C2=y && HWMON=m)
929	default y
930	help
931	  Say Y here if you want to expose temperature sensor data on
932	  rtc-rv3029.
933
934config RTC_DRV_RX6110
935	tristate "Epson RX-6110"
936	depends on RTC_I2C_AND_SPI
937	select REGMAP_SPI if SPI_MASTER
938	select REGMAP_I2C if I2C
939	help
940	  If you say yes here you will get support for the Epson RX-6110.
941
942	  This driver can also be built as a module. If so the module
943	  will be called rtc-rx6110.
944
945comment "Platform RTC drivers"
946
947# this 'CMOS' RTC driver is arch dependent because it requires
948# <asm/mc146818rtc.h> defining CMOS_READ/CMOS_WRITE, and a
949# global rtc_lock ... it's not yet just another platform_device.
950
951config RTC_DRV_CMOS
952	tristate "PC-style 'CMOS'"
953	depends on X86 || ARM || PPC || MIPS || SPARC64
954	default y if X86
955	select RTC_MC146818_LIB
956	help
957	  Say "yes" here to get direct support for the real time clock
958	  found in every PC or ACPI-based system, and some other boards.
959	  Specifically the original MC146818, compatibles like those in
960	  PC south bridges, the DS12887 or M48T86, some multifunction
961	  or LPC bus chips, and so on.
962
963	  Your system will need to define the platform device used by
964	  this driver, otherwise it won't be accessible. This means
965	  you can safely enable this driver if you don't know whether
966	  or not your board has this kind of hardware.
967
968	  This driver can also be built as a module. If so, the module
969	  will be called rtc-cmos.
970
971config RTC_DRV_ALPHA
972	bool "Alpha PC-style CMOS"
973	depends on ALPHA
974	select RTC_MC146818_LIB
975	default y
976	help
977	  Direct support for the real-time clock found on every Alpha
978	  system, specifically MC146818 compatibles.  If in doubt, say Y.
979
980config RTC_DRV_DS1216
981	tristate "Dallas DS1216"
982	depends on SNI_RM
983	help
984	  If you say yes here you get support for the Dallas DS1216 RTC chips.
985
986config RTC_DRV_DS1286
987	tristate "Dallas DS1286"
988	depends on HAS_IOMEM
989	help
990	  If you say yes here you get support for the Dallas DS1286 RTC chips.
991
992config RTC_DRV_DS1511
993	tristate "Dallas DS1511"
994	depends on HAS_IOMEM
995	help
996	  If you say yes here you get support for the
997	  Dallas DS1511 timekeeping/watchdog chip.
998
999	  This driver can also be built as a module. If so, the module
1000	  will be called rtc-ds1511.
1001
1002config RTC_DRV_DS1553
1003	tristate "Maxim/Dallas DS1553"
1004	depends on HAS_IOMEM
1005	help
1006	  If you say yes here you get support for the
1007	  Maxim/Dallas DS1553 timekeeping chip.
1008
1009	  This driver can also be built as a module. If so, the module
1010	  will be called rtc-ds1553.
1011
1012config RTC_DRV_DS1685_FAMILY
1013	tristate "Dallas/Maxim DS1685 Family"
1014	depends on HAS_IOMEM
1015	help
1016	  If you say yes here you get support for the Dallas/Maxim DS1685
1017	  family of real time chips.  This family includes the DS1685/DS1687,
1018	  DS1689/DS1693, DS17285/DS17287, DS17485/DS17487, and
1019	  DS17885/DS17887 chips.
1020
1021	  This driver can also be built as a module. If so, the module
1022	  will be called rtc-ds1685.
1023
1024choice
1025	prompt "Subtype"
1026	depends on RTC_DRV_DS1685_FAMILY
1027	default RTC_DRV_DS1685
1028
1029config RTC_DRV_DS1685
1030	bool "DS1685/DS1687"
1031	help
1032	  This enables support for the Dallas/Maxim DS1685/DS1687 real time
1033	  clock chip.
1034
1035	  This chip is commonly found in SGI O2 (IP32) and SGI Octane (IP30)
1036	  systems, as well as EPPC-405-UC modules by electronic system design
1037	  GmbH.
1038
1039config RTC_DRV_DS1689
1040	bool "DS1689/DS1693"
1041	help
1042	  This enables support for the Dallas/Maxim DS1689/DS1693 real time
1043	  clock chip.
1044
1045	  This is an older RTC chip, supplanted by the DS1685/DS1687 above,
1046	  which supports a few minor features such as Vcc, Vbat, and Power
1047	  Cycle counters, plus a customer-specific, 8-byte ROM/Serial number.
1048
1049	  It also works for the even older DS1688/DS1691 RTC chips, which are
1050	  virtually the same and carry the same model number.  Both chips
1051	  have 114 bytes of user NVRAM.
1052
1053config RTC_DRV_DS17285
1054	bool "DS17285/DS17287"
1055	help
1056	  This enables support for the Dallas/Maxim DS17285/DS17287 real time
1057	  clock chip.
1058
1059	  This chip features 2kb of extended NV-SRAM.  It may possibly be
1060	  found in some SGI O2 systems (rare).
1061
1062config RTC_DRV_DS17485
1063	bool "DS17485/DS17487"
1064	help
1065	  This enables support for the Dallas/Maxim DS17485/DS17487 real time
1066	  clock chip.
1067
1068	  This chip features 4kb of extended NV-SRAM.
1069
1070config RTC_DRV_DS17885
1071	bool "DS17885/DS17887"
1072	help
1073	  This enables support for the Dallas/Maxim DS17885/DS17887 real time
1074	  clock chip.
1075
1076	  This chip features 8kb of extended NV-SRAM.
1077
1078endchoice
1079
1080config RTC_DRV_DS1742
1081	tristate "Maxim/Dallas DS1742/1743"
1082	depends on HAS_IOMEM
1083	help
1084	  If you say yes here you get support for the
1085	  Maxim/Dallas DS1742/1743 timekeeping chip.
1086
1087	  This driver can also be built as a module. If so, the module
1088	  will be called rtc-ds1742.
1089
1090config RTC_DRV_DS2404
1091	tristate "Maxim/Dallas DS2404"
1092	help
1093	  If you say yes here you get support for the
1094	  Dallas DS2404 RTC chip.
1095
1096	  This driver can also be built as a module. If so, the module
1097	  will be called rtc-ds2404.
1098
1099config RTC_DRV_DA9052
1100	tristate "Dialog DA9052/DA9053 RTC"
1101	depends on PMIC_DA9052
1102	help
1103	  Say y here to support the RTC driver for Dialog Semiconductor
1104	  DA9052-BC and DA9053-AA/Bx PMICs.
1105
1106config RTC_DRV_DA9055
1107	tristate "Dialog Semiconductor DA9055 RTC"
1108	depends on MFD_DA9055
1109	help
1110	  If you say yes here you will get support for the
1111	  RTC of the Dialog DA9055 PMIC.
1112
1113	  This driver can also be built as a module. If so, the module
1114	  will be called rtc-da9055
1115
1116config RTC_DRV_DA9063
1117	tristate "Dialog Semiconductor DA9063/DA9062 RTC"
1118	depends on MFD_DA9063 || MFD_DA9062
1119	help
1120	  If you say yes here you will get support for the RTC subsystem
1121	  for the Dialog Semiconductor PMIC chips DA9063 and DA9062.
1122
1123	  This driver can also be built as a module. If so, the module
1124	  will be called "rtc-da9063".
1125
1126config RTC_DRV_EFI
1127	tristate "EFI RTC"
1128	depends on EFI && !X86
1129	help
1130	  If you say yes here you will get support for the EFI
1131	  Real Time Clock.
1132
1133	  This driver can also be built as a module. If so, the module
1134	  will be called rtc-efi.
1135
1136config RTC_DRV_STK17TA8
1137	tristate "Simtek STK17TA8"
1138	depends on HAS_IOMEM
1139	help
1140	  If you say yes here you get support for the
1141	  Simtek STK17TA8 timekeeping chip.
1142
1143	  This driver can also be built as a module. If so, the module
1144	  will be called rtc-stk17ta8.
1145
1146config RTC_DRV_M48T86
1147	tristate "ST M48T86/Dallas DS12887"
1148	depends on HAS_IOMEM
1149	help
1150	  If you say Y here you will get support for the
1151	  ST M48T86 and Dallas DS12887 RTC chips.
1152
1153	  This driver can also be built as a module. If so, the module
1154	  will be called rtc-m48t86.
1155
1156config RTC_DRV_M48T35
1157	tristate "ST M48T35"
1158	depends on HAS_IOMEM
1159	help
1160	  If you say Y here you will get support for the
1161	  ST M48T35 RTC chip.
1162
1163	  This driver can also be built as a module, if so, the module
1164	  will be called "rtc-m48t35".
1165
1166config RTC_DRV_M48T59
1167	tristate "ST M48T59/M48T08/M48T02"
1168	depends on HAS_IOMEM
1169	help
1170	  If you say Y here you will get support for the
1171	  ST M48T59 RTC chip and compatible ST M48T08 and M48T02.
1172
1173	  These chips are usually found in Sun SPARC and UltraSPARC
1174	  workstations.
1175
1176	  This driver can also be built as a module, if so, the module
1177	  will be called "rtc-m48t59".
1178
1179config RTC_DRV_MSM6242
1180	tristate "Oki MSM6242"
1181	depends on HAS_IOMEM
1182	help
1183	  If you say yes here you get support for the Oki MSM6242
1184	  timekeeping chip. It is used in some Amiga models (e.g. A2000).
1185
1186	  This driver can also be built as a module. If so, the module
1187	  will be called rtc-msm6242.
1188
1189config RTC_DRV_BQ4802
1190	tristate "TI BQ4802"
1191	depends on HAS_IOMEM
1192	help
1193	  If you say Y here you will get support for the TI
1194	  BQ4802 RTC chip.
1195
1196	  This driver can also be built as a module. If so, the module
1197	  will be called rtc-bq4802.
1198
1199config RTC_DRV_RP5C01
1200	tristate "Ricoh RP5C01"
1201	depends on HAS_IOMEM
1202	help
1203	  If you say yes here you get support for the Ricoh RP5C01
1204	  timekeeping chip. It is used in some Amiga models (e.g. A3000
1205	  and A4000).
1206
1207	  This driver can also be built as a module. If so, the module
1208	  will be called rtc-rp5c01.
1209
1210config RTC_DRV_V3020
1211	tristate "EM Microelectronic V3020"
1212	help
1213	  If you say yes here you will get support for the
1214	  EM Microelectronic v3020 RTC chip.
1215
1216	  This driver can also be built as a module. If so, the module
1217	  will be called rtc-v3020.
1218
1219config RTC_DRV_GAMECUBE
1220	tristate "Nintendo GameCube, Wii and Wii U RTC"
1221	depends on GAMECUBE || WII || COMPILE_TEST
1222	select REGMAP
1223	help
1224	  If you say yes here you will get support for the RTC subsystem
1225	  of the Nintendo GameCube, Wii and Wii U.
1226
1227	  This driver can also be built as a module. If so, the module
1228	  will be called "rtc-gamecube".
1229
1230config RTC_DRV_WM831X
1231	tristate "Wolfson Microelectronics WM831x RTC"
1232	depends on MFD_WM831X
1233	help
1234	  If you say yes here you will get support for the RTC subsystem
1235	  of the Wolfson Microelectronics WM831X series PMICs.
1236
1237	  This driver can also be built as a module. If so, the module
1238	  will be called "rtc-wm831x".
1239
1240config RTC_DRV_WM8350
1241	tristate "Wolfson Microelectronics WM8350 RTC"
1242	depends on MFD_WM8350
1243	help
1244	  If you say yes here you will get support for the RTC subsystem
1245	  of the Wolfson Microelectronics WM8350.
1246
1247	  This driver can also be built as a module. If so, the module
1248	  will be called "rtc-wm8350".
1249
1250config RTC_DRV_SC27XX
1251	tristate "Spreadtrum SC27xx RTC"
1252	depends on MFD_SC27XX_PMIC || COMPILE_TEST
1253	help
1254	  If you say Y here you will get support for the RTC subsystem
1255	  of the Spreadtrum SC27xx series PMICs. The SC27xx series PMICs
1256	  includes the SC2720, SC2721, SC2723, SC2730 and SC2731 chips.
1257
1258	  This driver can also be built as a module. If so, the module
1259	  will be called rtc-sc27xx.
1260
1261config RTC_DRV_SPEAR
1262	tristate "SPEAR ST RTC"
1263	depends on PLAT_SPEAR || COMPILE_TEST
1264	default y
1265	help
1266	 If you say Y here you will get support for the RTC found on
1267	 spear
1268
1269config RTC_DRV_PCF50633
1270	depends on MFD_PCF50633
1271	tristate "NXP PCF50633 RTC"
1272	help
1273	  If you say yes here you get support for the RTC subsystem of the
1274	  NXP PCF50633 used in embedded systems.
1275
1276config RTC_DRV_AB8500
1277	tristate "ST-Ericsson AB8500 RTC"
1278	depends on AB8500_CORE
1279	select RTC_INTF_DEV
1280	select RTC_INTF_DEV_UIE_EMUL
1281	help
1282	  Select this to enable the ST-Ericsson AB8500 power management IC RTC
1283	  support. This chip contains a battery- and capacitor-backed RTC.
1284
1285config RTC_DRV_OPAL
1286	tristate "IBM OPAL RTC driver"
1287	depends on PPC_POWERNV
1288	default y
1289	help
1290	  If you say yes here you get support for the PowerNV platform RTC
1291	  driver based on OPAL interfaces.
1292
1293	  This driver can also be built as a module. If so, the module
1294	  will be called rtc-opal.
1295
1296config RTC_DRV_ZYNQMP
1297	tristate "Xilinx Zynq Ultrascale+ MPSoC RTC"
1298	depends on OF && HAS_IOMEM
1299	help
1300	  If you say yes here you get support for the RTC controller found on
1301	  Xilinx Zynq Ultrascale+ MPSoC.
1302
1303config RTC_DRV_CROS_EC
1304	tristate "Chrome OS EC RTC driver"
1305	depends on CROS_EC
1306	help
1307	  If you say yes here you will get support for the
1308	  Chrome OS Embedded Controller's RTC.
1309
1310	  This driver can also be built as a module. If so, the module
1311	  will be called rtc-cros-ec.
1312
1313config RTC_DRV_NTXEC
1314	tristate "Netronix embedded controller RTC"
1315	depends on MFD_NTXEC
1316	help
1317	  Say yes here if you want to support the RTC functionality of the
1318	  embedded controller found in certain e-book readers designed by the
1319	  original design manufacturer Netronix.
1320
1321comment "on-CPU RTC drivers"
1322
1323config RTC_DRV_ASM9260
1324	tristate "Alphascale asm9260 RTC"
1325	depends on MACH_ASM9260 || COMPILE_TEST
1326	help
1327	  If you say yes here you get support for the RTC on the
1328	  Alphascale asm9260 SoC.
1329
1330	  This driver can also be built as a module. If so, the module
1331	  will be called rtc-asm9260.
1332
1333config RTC_DRV_DAVINCI
1334	tristate "TI DaVinci RTC"
1335	depends on ARCH_DAVINCI_DM365 || COMPILE_TEST
1336	help
1337	  If you say yes here you get support for the RTC on the
1338	  DaVinci platforms (DM365).
1339
1340	  This driver can also be built as a module. If so, the module
1341	  will be called rtc-davinci.
1342
1343config RTC_DRV_DIGICOLOR
1344	tristate "Conexant Digicolor RTC"
1345	depends on ARCH_DIGICOLOR || COMPILE_TEST
1346	help
1347	  If you say yes here you get support for the RTC on Conexant
1348	  Digicolor platforms. This currently includes the CX92755 SoC.
1349
1350	  This driver can also be built as a module. If so, the module
1351	  will be called rtc-digicolor.
1352
1353config RTC_DRV_IMXDI
1354	tristate "Freescale IMX DryIce Real Time Clock"
1355	depends on ARCH_MXC
1356	depends on OF
1357	help
1358	   Support for Freescale IMX DryIce RTC
1359
1360	   This driver can also be built as a module, if so, the module
1361	   will be called "rtc-imxdi".
1362
1363config RTC_DRV_FSL_FTM_ALARM
1364	tristate "Freescale FlexTimer alarm timer"
1365	depends on ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
1366	help
1367	   For the FlexTimer in LS1012A, LS1021A, LS1028A, LS1043A, LS1046A,
1368	   LS1088A, LS208xA, we can use FTM as the wakeup source.
1369
1370	   Say y here to enable FTM alarm support. The FTM alarm provides
1371	   alarm functions for wakeup system from deep sleep.
1372
1373	   This driver can also be built as a module, if so, the module
1374	   will be called "rtc-fsl-ftm-alarm".
1375
1376config RTC_DRV_MESON
1377	tristate "Amlogic Meson RTC"
1378	depends on (ARM && ARCH_MESON) || COMPILE_TEST
1379	select REGMAP_MMIO
1380	help
1381	   Support for the RTC block on the Amlogic Meson6, Meson8, Meson8b
1382	   and Meson8m2 SoCs.
1383
1384	   This driver can also be built as a module, if so, the module
1385	   will be called "rtc-meson".
1386
1387config RTC_DRV_MESON_VRTC
1388	tristate "Amlogic Meson Virtual RTC"
1389	depends on ARCH_MESON || COMPILE_TEST
1390	default m if ARCH_MESON
1391	help
1392	  If you say yes here you will get support for the
1393	  Virtual RTC of Amlogic SoCs.
1394
1395	  This driver can also be built as a module. If so, the module
1396	  will be called rtc-meson-vrtc.
1397
1398config RTC_DRV_OMAP
1399	tristate "TI OMAP Real Time Clock"
1400	depends on ARCH_OMAP || ARCH_DAVINCI || COMPILE_TEST
1401	depends on OF
1402	depends on PINCTRL
1403	select GENERIC_PINCONF
1404	help
1405	  Say "yes" here to support the on chip real time clock
1406	  present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
1407
1408	  This driver can also be built as a module, if so, module
1409	  will be called rtc-omap.
1410
1411config RTC_DRV_S3C
1412	tristate "Samsung S3C series SoC RTC"
1413	depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S3C24XX || ARCH_S5PV210 || \
1414		   COMPILE_TEST
1415	help
1416	  RTC (Realtime Clock) driver for the clock inbuilt into the
1417	  Samsung S3C24XX series of SoCs. This can provide periodic
1418	  interrupt rates from 1Hz to 64Hz for user programs, and
1419	  wakeup from Alarm.
1420
1421	  The driver currently supports the common features on all the
1422	  S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440
1423	  and S3C2442.
1424
1425	  This driver can also be build as a module. If so, the module
1426	  will be called rtc-s3c.
1427
1428config RTC_DRV_EP93XX
1429	tristate "Cirrus Logic EP93XX"
1430	depends on ARCH_EP93XX || COMPILE_TEST
1431	help
1432	  If you say yes here you get support for the
1433	  RTC embedded in the Cirrus Logic EP93XX processors.
1434
1435	  This driver can also be built as a module. If so, the module
1436	  will be called rtc-ep93xx.
1437
1438config RTC_DRV_SA1100
1439	tristate "SA11x0/PXA2xx/PXA910"
1440	depends on ARCH_SA1100 || ARCH_PXA || ARCH_MMP
1441	help
1442	  If you say Y here you will get access to the real time clock
1443	  built into your SA11x0 or PXA2xx CPU.
1444
1445	  To compile this driver as a module, choose M here: the
1446	  module will be called rtc-sa1100.
1447
1448config RTC_DRV_SH
1449	tristate "SuperH On-Chip RTC"
1450	depends on SUPERH || ARCH_RENESAS
1451	help
1452	  Say Y here to enable support for the on-chip RTC found in
1453	  most SuperH processors. This RTC is also found in RZ/A SoCs.
1454
1455	  To compile this driver as a module, choose M here: the
1456	  module will be called rtc-sh.
1457
1458config RTC_DRV_SUNPLUS
1459	tristate "Sunplus SP7021 RTC"
1460	depends on SOC_SP7021
1461	help
1462	  Say 'yes' to get support for the real-time clock present in
1463	  Sunplus SP7021 - a SoC for industrial applications. It provides
1464	  RTC status check, timer/alarm functionalities, user data
1465	  reservation with the battery over 2.5V, RTC power status check
1466	  and battery charge.
1467
1468	  This driver can also be built as a module. If so, the module
1469	  will be called rtc-sunplus.
1470
1471config RTC_DRV_VR41XX
1472	tristate "NEC VR41XX"
1473	depends on CPU_VR41XX || COMPILE_TEST
1474	help
1475	  If you say Y here you will get access to the real time clock
1476	  built into your NEC VR41XX CPU.
1477
1478	  To compile this driver as a module, choose M here: the
1479	  module will be called rtc-vr41xx.
1480
1481config RTC_DRV_PL030
1482	tristate "ARM AMBA PL030 RTC"
1483	depends on ARM_AMBA
1484	help
1485	  If you say Y here you will get access to ARM AMBA
1486	  PrimeCell PL030 RTC found on certain ARM SOCs.
1487
1488	  To compile this driver as a module, choose M here: the
1489	  module will be called rtc-pl030.
1490
1491config RTC_DRV_PL031
1492	tristate "ARM AMBA PL031 RTC"
1493	depends on ARM_AMBA
1494	help
1495	  If you say Y here you will get access to ARM AMBA
1496	  PrimeCell PL031 RTC found on certain ARM SOCs.
1497
1498	  To compile this driver as a module, choose M here: the
1499	  module will be called rtc-pl031.
1500
1501config RTC_DRV_AT91RM9200
1502	tristate "AT91RM9200 or some AT91SAM9 RTC"
1503	depends on ARCH_AT91 || COMPILE_TEST
1504	depends on OF
1505	help
1506	  Driver for the internal RTC (Realtime Clock) module found on
1507	  Atmel AT91RM9200's and some  AT91SAM9 chips. On AT91SAM9 chips
1508	  this is powered by the backup power supply.
1509
1510config RTC_DRV_AT91SAM9
1511	tristate "AT91SAM9 RTT as RTC"
1512	depends on ARCH_AT91 || COMPILE_TEST
1513	depends on OF && HAS_IOMEM
1514	select MFD_SYSCON
1515	help
1516	  Some AT91SAM9 SoCs provide an RTT (Real Time Timer) block which
1517	  can be used as an RTC thanks to the backup power supply (e.g. a
1518	  small coin cell battery) which keeps this block and the GPBR
1519	  (General Purpose Backup Registers) block powered when the device
1520	  is shutdown.
1521	  Some AT91SAM9 SoCs provide a real RTC block, on those ones you'd
1522	  probably want to use the real RTC block instead of the "RTT as an
1523	  RTC" driver.
1524
1525config RTC_DRV_AU1XXX
1526	tristate "Au1xxx Counter0 RTC support"
1527	depends on MIPS_ALCHEMY
1528	help
1529	  This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year
1530	  counter) to be used as a RTC.
1531
1532	  This driver can also be built as a module. If so, the module
1533	  will be called rtc-au1xxx.
1534
1535config RTC_DRV_RS5C313
1536	tristate "Ricoh RS5C313"
1537	depends on SH_LANDISK
1538	help
1539	  If you say yes here you get support for the Ricoh RS5C313 RTC chips.
1540
1541config RTC_DRV_GENERIC
1542	tristate "Generic RTC support"
1543	# Please consider writing a new RTC driver instead of using the generic
1544	# RTC abstraction
1545	depends on PARISC || M68K || PPC || SUPERH || COMPILE_TEST
1546	help
1547	  Say Y or M here to enable RTC support on systems using the generic
1548	  RTC abstraction. If you do not know what you are doing, you should
1549	  just say Y.
1550
1551config RTC_DRV_PXA
1552	tristate "PXA27x/PXA3xx"
1553	depends on ARCH_PXA
1554	select RTC_DRV_SA1100
1555	help
1556	 If you say Y here you will get access to the real time clock
1557	 built into your PXA27x or PXA3xx CPU. This RTC is actually 2 RTCs
1558	 consisting of an SA1100 compatible RTC and the extended PXA RTC.
1559
1560	 This RTC driver uses PXA RTC registers available since pxa27x
1561	 series (RDxR, RYxR) instead of legacy RCNR, RTAR.
1562
1563config RTC_DRV_VT8500
1564	tristate "VIA/WonderMedia 85xx SoC RTC"
1565	depends on ARCH_VT8500 || COMPILE_TEST
1566	help
1567	  If you say Y here you will get access to the real time clock
1568	  built into your VIA VT8500 SoC or its relatives.
1569
1570
1571config RTC_DRV_SUN4V
1572	bool "SUN4V Hypervisor RTC"
1573	depends on SPARC64
1574	help
1575	  If you say Y here you will get support for the Hypervisor
1576	  based RTC on SUN4V systems.
1577
1578config RTC_DRV_SUN6I
1579	bool "Allwinner A31 RTC"
1580	default MACH_SUN6I || MACH_SUN8I
1581	depends on COMMON_CLK
1582	depends on ARCH_SUNXI || COMPILE_TEST
1583	help
1584	  If you say Y here you will get support for the RTC found in
1585	  some Allwinner SoCs like the A31 or the A64.
1586
1587config RTC_DRV_SUNXI
1588	tristate "Allwinner sun4i/sun7i RTC"
1589	depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
1590	help
1591	  If you say Y here you will get support for the RTC found on
1592	  Allwinner A10/A20.
1593
1594config RTC_DRV_STARFIRE
1595	bool "Starfire RTC"
1596	depends on SPARC64
1597	help
1598	  If you say Y here you will get support for the RTC found on
1599	  Starfire systems.
1600
1601config RTC_DRV_MV
1602	tristate "Marvell SoC RTC"
1603	depends on ARCH_DOVE || ARCH_MVEBU || COMPILE_TEST
1604	help
1605	  If you say yes here you will get support for the in-chip RTC
1606	  that can be found in some of Marvell's SoC devices, such as
1607	  the Kirkwood 88F6281 and 88F6192.
1608
1609	  This driver can also be built as a module. If so, the module
1610	  will be called rtc-mv.
1611
1612config RTC_DRV_ARMADA38X
1613	tristate "Armada 38x Marvell SoC RTC"
1614	depends on ARCH_MVEBU || COMPILE_TEST
1615	depends on OF
1616	help
1617	  If you say yes here you will get support for the in-chip RTC
1618	  that can be found in the Armada 38x Marvell's SoC device
1619
1620	  This driver can also be built as a module. If so, the module
1621	  will be called armada38x-rtc.
1622
1623config RTC_DRV_CADENCE
1624	tristate "Cadence RTC driver"
1625	depends on OF && HAS_IOMEM
1626	help
1627	  If you say Y here you will get access to Cadence RTC IP
1628	  found on certain SOCs.
1629
1630	  To compile this driver as a module, choose M here: the
1631	  module will be called rtc-cadence.
1632
1633config RTC_DRV_FTRTC010
1634	tristate "Faraday Technology FTRTC010 RTC"
1635	depends on HAS_IOMEM
1636	default ARCH_GEMINI
1637	help
1638	  If you say Y here you will get support for the
1639	  Faraday Technolog FTRTC010 found on e.g. Gemini SoC's.
1640
1641	  This driver can also be built as a module. If so, the module
1642	  will be called rtc-ftrtc010.
1643
1644config RTC_DRV_PS3
1645	tristate "PS3 RTC"
1646	depends on PPC_PS3
1647	help
1648	  If you say yes here you will get support for the RTC on PS3.
1649
1650	  This driver can also be built as a module. If so, the module
1651	  will be called rtc-ps3.
1652
1653config RTC_DRV_STMP
1654	tristate "Freescale STMP3xxx/i.MX23/i.MX28 RTC"
1655	depends on ARCH_MXS || COMPILE_TEST
1656	select STMP_DEVICE
1657	help
1658	  If you say yes here you will get support for the onboard
1659	  STMP3xxx/i.MX23/i.MX28 RTC.
1660
1661	  This driver can also be built as a module. If so, the module
1662	  will be called rtc-stmp3xxx.
1663
1664config RTC_DRV_PCAP
1665	tristate "PCAP RTC"
1666	depends on EZX_PCAP
1667	help
1668	  If you say Y here you will get support for the RTC found on
1669	  the PCAP2 ASIC used on some Motorola phones.
1670
1671config RTC_DRV_MC13XXX
1672	depends on MFD_MC13XXX
1673	tristate "Freescale MC13xxx RTC"
1674	help
1675	  This enables support for the RTCs found on Freescale's PMICs
1676	  MC13783 and MC13892.
1677
1678config RTC_DRV_MPC5121
1679	tristate "Freescale MPC5121 built-in RTC"
1680	depends on PPC_MPC512x || PPC_MPC52xx
1681	help
1682	  If you say yes here you will get support for the
1683	  built-in RTC on MPC5121 or on MPC5200.
1684
1685	  This driver can also be built as a module. If so, the module
1686	  will be called rtc-mpc5121.
1687
1688config RTC_DRV_JZ4740
1689	tristate "Ingenic JZ4740 SoC"
1690	depends on MIPS || COMPILE_TEST
1691	depends on OF
1692	help
1693	  If you say yes here you get support for the Ingenic JZ47xx SoCs RTC
1694	  controllers.
1695
1696	  This driver can also be built as a module. If so, the module
1697	  will be called rtc-jz4740.
1698
1699config RTC_DRV_LPC24XX
1700	tristate "NXP RTC for LPC178x/18xx/408x/43xx"
1701	depends on ARCH_LPC18XX || COMPILE_TEST
1702	depends on OF && HAS_IOMEM
1703	help
1704	  This enables support for the NXP RTC found which can be found on
1705	  NXP LPC178x/18xx/408x/43xx devices.
1706
1707	  If you have one of the devices above enable this driver to use
1708	  the hardware RTC. This driver can also be built as a module. If
1709	  so, the module will be called rtc-lpc24xx.
1710
1711config RTC_DRV_LPC32XX
1712	depends on ARCH_LPC32XX || COMPILE_TEST
1713	tristate "NXP LPC32XX RTC"
1714	help
1715	  This enables support for the NXP RTC in the LPC32XX
1716
1717	  This driver can also be built as a module. If so, the module
1718	  will be called rtc-lpc32xx.
1719
1720config RTC_DRV_PM8XXX
1721	tristate "Qualcomm PMIC8XXX RTC"
1722	depends on MFD_PM8XXX || MFD_SPMI_PMIC || COMPILE_TEST
1723	help
1724	  If you say yes here you get support for the
1725	  Qualcomm PMIC8XXX RTC.
1726
1727	  To compile this driver as a module, choose M here: the
1728	  module will be called rtc-pm8xxx.
1729
1730config RTC_DRV_TEGRA
1731	tristate "NVIDIA Tegra Internal RTC driver"
1732	depends on ARCH_TEGRA || COMPILE_TEST
1733	help
1734	  If you say yes here you get support for the
1735	  Tegra 200 series internal RTC module.
1736
1737	  This drive can also be built as a module. If so, the module
1738	  will be called rtc-tegra.
1739
1740config RTC_DRV_LOONGSON1
1741	tristate "loongson1 RTC support"
1742	depends on MACH_LOONGSON32
1743	help
1744	  This is a driver for the loongson1 on-chip Counter0 (Time-Of-Year
1745	  counter) to be used as a RTC.
1746
1747	  This driver can also be built as a module. If so, the module
1748	  will be called rtc-ls1x.
1749
1750config RTC_DRV_MXC
1751	tristate "Freescale MXC Real Time Clock"
1752	depends on ARCH_MXC || COMPILE_TEST
1753	depends on HAS_IOMEM
1754	depends on OF
1755	help
1756	   If you say yes here you get support for the Freescale MXC
1757	   RTC module.
1758
1759	   This driver can also be built as a module, if so, the module
1760	   will be called "rtc-mxc".
1761
1762config RTC_DRV_MXC_V2
1763	tristate "Freescale MXC Real Time Clock for i.MX53"
1764	depends on ARCH_MXC || COMPILE_TEST
1765	depends on HAS_IOMEM
1766	depends on OF
1767	help
1768	   If you say yes here you get support for the Freescale MXC
1769	   SRTC module in i.MX53 processor.
1770
1771	   This driver can also be built as a module, if so, the module
1772	   will be called "rtc-mxc_v2".
1773
1774config RTC_DRV_SNVS
1775	tristate "Freescale SNVS RTC support"
1776	select REGMAP_MMIO
1777	depends on ARCH_MXC || COMPILE_TEST
1778	depends on HAS_IOMEM
1779	depends on OF
1780	help
1781	   If you say yes here you get support for the Freescale SNVS
1782	   Low Power (LP) RTC module.
1783
1784	   This driver can also be built as a module, if so, the module
1785	   will be called "rtc-snvs".
1786
1787config RTC_DRV_IMX_SC
1788	depends on IMX_SCU
1789	depends on HAVE_ARM_SMCCC
1790	tristate "NXP i.MX System Controller RTC support"
1791	help
1792	   If you say yes here you get support for the NXP i.MX System
1793	   Controller RTC module.
1794
1795config RTC_DRV_ST_LPC
1796	tristate "STMicroelectronics LPC RTC"
1797	depends on ARCH_STI
1798	depends on OF
1799	help
1800	  Say Y here to include STMicroelectronics Low Power Controller
1801	  (LPC) based RTC support.
1802
1803	  To compile this driver as a module, choose M here: the
1804	  module will be called rtc-st-lpc.
1805
1806config RTC_DRV_MOXART
1807	tristate "MOXA ART RTC"
1808	depends on ARCH_MOXART || COMPILE_TEST
1809	help
1810	   If you say yes here you get support for the MOXA ART
1811	   RTC module.
1812
1813	   This driver can also be built as a module. If so, the module
1814	   will be called rtc-moxart
1815
1816config RTC_DRV_MT2712
1817	tristate "MediaTek MT2712 SoC based RTC"
1818	depends on ARCH_MEDIATEK || COMPILE_TEST
1819	help
1820	  This enables support for the real time clock built in the MediaTek
1821	  SoCs for MT2712.
1822
1823	  This drive can also be built as a module. If so, the module
1824	  will be called rtc-mt2712.
1825
1826config RTC_DRV_MT6397
1827	tristate "MediaTek PMIC based RTC"
1828	depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN)
1829	help
1830	  This selects the MediaTek(R) RTC driver. RTC is part of MediaTek
1831	  MT6397 PMIC. You should enable MT6397 PMIC MFD before select
1832	  MediaTek(R) RTC driver.
1833
1834	  If you want to use MediaTek(R) RTC interface, select Y or M here.
1835
1836config RTC_DRV_MT7622
1837	tristate "MediaTek SoC based RTC"
1838	depends on ARCH_MEDIATEK || COMPILE_TEST
1839	help
1840	  This enables support for the real time clock built in the MediaTek
1841	  SoCs.
1842
1843	  This drive can also be built as a module. If so, the module
1844	  will be called rtc-mt7622.
1845
1846config RTC_DRV_XGENE
1847	tristate "APM X-Gene RTC"
1848	depends on HAS_IOMEM
1849	depends on ARCH_XGENE || COMPILE_TEST
1850	help
1851	  If you say yes here you get support for the APM X-Gene SoC real time
1852	  clock.
1853
1854	  This driver can also be built as a module, if so, the module
1855	  will be called "rtc-xgene".
1856
1857config RTC_DRV_PIC32
1858	tristate "Microchip PIC32 RTC"
1859	depends on MACH_PIC32
1860	default y
1861	help
1862	   If you say yes here you get support for the PIC32 RTC module.
1863
1864	   This driver can also be built as a module. If so, the module
1865	   will be called rtc-pic32
1866
1867config RTC_DRV_R7301
1868	tristate "EPSON TOYOCOM RTC-7301SF/DG"
1869	select REGMAP_MMIO
1870	depends on OF && HAS_IOMEM
1871	help
1872	   If you say yes here you get support for the EPSON TOYOCOM
1873	   RTC-7301SF/DG chips.
1874
1875	   This driver can also be built as a module. If so, the module
1876	   will be called rtc-r7301.
1877
1878config RTC_DRV_STM32
1879	tristate "STM32 RTC"
1880	select REGMAP_MMIO
1881	depends on ARCH_STM32 || COMPILE_TEST
1882	help
1883	   If you say yes here you get support for the STM32 On-Chip
1884	   Real Time Clock.
1885
1886	   This driver can also be built as a module, if so, the module
1887	   will be called "rtc-stm32".
1888
1889config RTC_DRV_CPCAP
1890	depends on MFD_CPCAP
1891	tristate "Motorola CPCAP RTC"
1892	help
1893	   Say y here for CPCAP rtc found on some Motorola phones
1894	   and tablets such as Droid 4.
1895
1896config RTC_DRV_RTD119X
1897	bool "Realtek RTD129x RTC"
1898	depends on ARCH_REALTEK || COMPILE_TEST
1899	default ARCH_REALTEK
1900	help
1901	  If you say yes here, you get support for the RTD1295 SoC
1902	  Real Time Clock.
1903
1904config RTC_DRV_ASPEED
1905	tristate "ASPEED RTC"
1906	depends on OF
1907	depends on ARCH_ASPEED || COMPILE_TEST
1908	help
1909	  If you say yes here you get support for the ASPEED BMC SoC real time
1910	  clocks.
1911
1912	  This driver can also be built as a module, if so, the module
1913	  will be called "rtc-aspeed".
1914
1915comment "HID Sensor RTC drivers"
1916
1917config RTC_DRV_HID_SENSOR_TIME
1918	tristate "HID Sensor Time"
1919	depends on USB_HID
1920	depends on HID_SENSOR_HUB && IIO
1921	select HID_SENSOR_IIO_COMMON
1922	help
1923	  Say yes here to build support for the HID Sensors of type Time.
1924	  This drivers makes such sensors available as RTCs.
1925
1926	  If this driver is compiled as a module, it will be named
1927	  rtc-hid-sensor-time.
1928
1929config RTC_DRV_GOLDFISH
1930	tristate "Goldfish Real Time Clock"
1931	depends on HAS_IOMEM
1932	help
1933	  Say yes to enable RTC driver for the Goldfish based virtual platform.
1934
1935	  Goldfish is a code name for the virtual platform developed by Google
1936	  for Android emulation.
1937
1938config RTC_DRV_WILCO_EC
1939	tristate "Wilco EC RTC"
1940	depends on WILCO_EC
1941	default m
1942	help
1943	  If you say yes here, you get read/write support for the Real Time
1944	  Clock on the Wilco Embedded Controller (Wilco is a kind of Chromebook)
1945
1946	  This can also be built as a module. If so, the module will
1947	  be named "rtc_wilco_ec".
1948
1949config RTC_DRV_MSC313
1950	tristate "MStar MSC313 RTC"
1951        depends on ARCH_MSTARV7 || COMPILE_TEST
1952	help
1953	  If you say yes here you get support for the Mstar MSC313e On-Chip
1954	  Real Time Clock.
1955
1956	  This driver can also be built as a module, if so, the module
1957	  will be called "rtc-msc313".
1958
1959endif # RTC_CLASS
1960