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