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