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