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