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