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