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