1#
2# RTC drivers configuration
3#
4
5menu "Real Time Clock"
6
7config DM_RTC
8	bool "Enable Driver Model for RTC drivers"
9	depends on DM
10	select LIB_DATE
11	help
12	  Enable drver model for real-time-clock drivers. The RTC uclass
13	  then provides the rtc_get()/rtc_set() interface, delegating to
14	  drivers to perform the actual functions. See rtc.h for a
15	  description of the API.
16
17config SPL_DM_RTC
18	bool "Enable Driver Model for RTC drivers in SPL"
19	depends on SPL_DM
20	help
21	  Enable drver model for real-time-clock drivers. The RTC uclass
22	  then provides the rtc_get()/rtc_set() interface, delegating to
23	  drivers to perform the actual functions. See rtc.h for a
24	  description of the API.
25
26config TPL_DM_RTC
27	bool "Enable Driver Model for RTC drivers in TPL"
28	depends on TPL_DM
29	help
30	  Enable drver model for real-time-clock drivers. The RTC uclass
31	  then provides the rtc_get()/rtc_set() interface, delegating to
32	  drivers to perform the actual functions. See rtc.h for a
33	  description of the API.
34
35config VPL_DM_RTC
36	bool "Enable Driver Model for RTC drivers in VPL"
37	depends on VPL_DM
38	help
39	  Enable drver model for real-time-clock drivers. The RTC uclass
40	  then provides the rtc_get()/rtc_set() interface, delegating to
41	  drivers to perform the actual functions. See rtc.h for a
42	  description of the API.
43
44config RTC_ENABLE_32KHZ_OUTPUT
45	bool "Enable RTC 32Khz output"
46	help
47	   Some real-time clocks support the output of 32kHz square waves (such as ds3231),
48	   the config symbol choose Real Time Clock device 32Khz output feature.
49
50config RTC_ARMADA38X
51	bool "Enable Armada 38x Marvell SoC RTC"
52	depends on DM_RTC && ARCH_MVEBU
53	help
54	  This adds support for the in-chip RTC that can be found in the
55	  Armada 38x Marvell's SoC devices.
56
57config RTC_PCF2127
58	bool "Enable PCF2127 driver"
59	depends on DM_RTC
60	help
61	  The PCF2127 is a CMOS Real Time Clock (RTC) and calendar with an integrated
62	  Temperature Compensated Crystal (Xtal) Oscillator (TCXO) and a 32.768 kHz quartz
63	  crystal optimized for very high accuracy and very low power consumption. The PCF2127
64	  has a selectable I2C-bus or SPI-bus, a backup battery switch-over circuit, a
65	  programmable watchdog function, a timestamp function, and many other features.
66
67config RTC_DS1307
68	bool "Enable DS1307 driver"
69	depends on DM_RTC
70	help
71	  Support for Dallas Semiconductor (now Maxim) DS1307 and DS1339 and
72	  compatible Real Time Clock devices.
73
74config RTC_DS1337
75	bool "Enable DS1337 driver"
76	help
77	  Support for Dallas Semiconductor (now Maxim) DS1337/8/9 compatible
78	  Real Time Clock devices.
79
80config RTC_DS1337_NOOSC
81	bool "Enable support for no oscillator output in DS1337 driver"
82	depends on RTC_DS1337
83
84config RTC_DS1338
85	bool "Enable DS1338 driver"
86	help
87	  Support for Dallas Semiconductor (now Maxim) DS1338 and compatible
88	  Real Time Clock devices.
89
90config RTC_DS1374
91	bool "Enable DS1374 driver"
92	depends on !DM_RTC
93	help
94	  Support for Dallas Semiconductor (now Maxim) DS1374 and compatible
95	  Real Time Clock devices.
96
97config RTC_DS1672
98	bool "Enable DS1672 driver"
99	depends on DM_RTC
100	help
101	  Support for Dallas Semiconductor (now Maxim) DS1672 compatible
102	  Real Time Clock devices.
103
104config RTC_DS3231
105	bool "Enable DS3231 driver"
106	help
107	  Support for Dallas Semiconductor (now Maxim) DS3231 compatible
108	  Real Time Clock devices.
109
110config RTC_DS3232
111	bool "Enable DS3232 driver"
112	depends on DM_RTC
113	depends on DM_I2C
114	help
115	  Support for Dallas Semiconductor (now Maxim) DS3232 compatible
116	  Real Time Clock devices.
117
118config RTC_EMULATION
119	bool "Enable emulated RTC"
120	depends on DM_RTC
121	help
122	  On a board without hardware clock this software real time clock can be
123	  used. The initial time may be provided via the environment variable
124	  'rtc_emul_epoch' as a decimal string indicating seconds since
125	  1970-01-01. If the environment variable is missing, the build time is
126	  used to initialize the RTC. The time can be adjusted manually via the
127	  'date' command or the 'sntp' command can be used to update the RTC
128	  with the time from a network time server. See CONFIG_CMD_SNTP and
129	  CONFIG_BOOTP_NTPSERVER. The RTC time is advanced according to CPU
130	  ticks.
131
132config RTC_GOLDFISH
133	bool "Enable Goldfish driver"
134	depends on DM_RTC
135	help
136	  The Goldfish RTC is a virtual device which may be supplied by QEMU.
137	  It is enabled by default on QEMU's RISC-V virt machine.
138
139config RTC_ISL1208
140	bool "Enable ISL1208 driver"
141	depends on DM_RTC
142	help
143	  The Renesas (formerly Intersil) ISL1208 is a I2C Real Time Clock (RTC) and
144	  calendar with automatic leap year correction, 2-byte battery backed SRAM,
145	  automatic power switch-over, alarm function and 15 selectable frequency
146	  outputs.
147
148	  This driver supports reading and writing the RTC/calendar and detects
149	  total power failures.
150
151config RTC_MAX313XX
152	bool "Analog Devices MAX313XX RTC driver"
153	depends on DM_RTC
154	depends on DM_I2C
155	help
156	  If you say yes here you will get support for the
157	  Analog Devices MAX313XX series RTC family.
158
159	  Chip features not currently supported:
160	  - Timestamp registers as SRAM
161	  - Temperature sensor
162	  - CLKOUT generation
163
164config RTC_PCF8563
165	tristate "Philips PCF8563"
166	help
167	  If you say yes here you get support for the Philips PCF8563 RTC
168	  and compatible chips.
169
170config RTC_PT7C4338
171	bool "Enable Pericom Technology PT7C4338 RTC driver"
172
173config RTC_RV3028
174	bool "Enable RV3028 driver"
175	depends on DM_RTC
176	help
177	  The MicroCrystal RV3028 is a I2C Real Time Clock (RTC)
178
179config RTC_RV3029
180	bool "Enable RV3029 driver"
181	depends on DM_RTC
182	help
183	  The MicroCrystal RV3029 is a I2C Real Time Clock (RTC) with 8-byte
184	  battery-backed SRAM.
185
186	  This driver supports reading and writing the RTC/calendar and the
187	  battery-baced SRAM section.
188
189config RTC_RV8803
190	bool "Enable RV8803 driver"
191	depends on DM_RTC
192	help
193	  The Micro Crystal RV8803 is a high accuracy, ultra-low power I2C
194	  Real Time Clock (RTC) with temperature compensation.
195
196	  This driver supports reading and writing the RTC/calendar and
197	  detects total power failures.
198
199config RTC_RX8010SJ
200	bool "Enable RX8010SJ driver"
201	depends on DM_RTC
202	help
203	  Support for Epson RX8010SJ Real Time Clock devices.
204
205config RTC_RX8025
206	bool "Enable RX8025 driver"
207	depends on DM_RTC
208	help
209	  Support for Epson RX8025 Real Time Clock devices.
210
211config RTC_PL031
212	bool "Enable ARM AMBA PL031 RTC driver"
213	depends on DM_RTC
214	help
215	  The ARM PrimeCell Real Time Clock (PL031) is an optional SoC
216	  peripheral based on the Advanced Microcontroller Bus Architecture
217	  (AMBA). It is emulated in QEMU virtual ARM machines.
218
219config RTC_MV
220	bool "Enable Marvell RTC driver"
221	depends on DM_RTC
222	help
223	  Enable Marvell RTC driver. This driver supports the rtc that is present
224	  on some Marvell SoCs.
225
226config RTC_S35392A
227	bool "Enable S35392A driver"
228	select BITREVERSE
229	help
230	  Enable s35392a driver which provides rtc get and set function.
231
232config RTC_MC13XXX
233	bool "Enable MC13XXX RTC driver"
234	depends on !DM_RTC
235
236config RTC_MC146818
237	bool "Enable MC146818 driver"
238	help
239	  This is a widely used real-time clock chip originally by Motorola
240	  and now available from NXP. It includes a battery-backed real-time
241	  clock with a wide array of features and 50 bytes of general-purpose,
242	  battery-backed RAM. The driver supports access to the clock and RAM.
243
244config MCFRTC
245	bool "Use common CF RTC driver"
246	depends on M68K
247
248config SYS_MCFRTC_BASE
249	hex "Base address for RTC in immap.h"
250	depends on MCFRTC
251
252config RTC_MXS
253	bool "Enable i.MXS RTC driver"
254	depends on ARCH_MX23 || ARCH_MX28
255
256config RTC_M41T62
257	bool "Enable M41T62 driver"
258	help
259	  Enable driver for ST's M41T62 compatible RTC devices (like RV-4162).
260	  It is a serial (I2C) real-time clock (RTC) with alarm.
261
262config RTC_SANDBOX
263	bool "Enable sandbox RTC driver"
264	depends on SANDBOX && DM_RTC
265	default y
266	help
267	  Enable the sandbox RTC driver. This driver connects to the RTC
268	  emulator and is used to test the RTC uclasses and associated code,
269	  as well as the I2C subsystem.
270
271config SPL_RTC_SANDBOX
272	bool "Enable sandbox RTC driver (SPL)"
273	depends on SANDBOX && SPL_DM_RTC
274	default y
275	help
276	  Enable the sandbox RTC driver. This driver connects to the RTC
277	  emulator and is used to test the RTC uclasses and associated code,
278	  as well as the I2C subsystem.
279
280config RTC_STM32
281	bool "Enable STM32 RTC driver"
282	depends on DM_RTC
283	help
284	  Enable STM32 RTC driver. This driver supports the rtc that is present
285	  on some STM32 SoCs.
286
287config RTC_ABX80X
288	bool "Enable Abracon ABx80x RTC driver"
289	depends on DM_RTC
290	help
291	  If you say yes here you get support for Abracon AB080X and AB180X
292	  families of ultra-low-power  battery- and capacitor-backed real-time
293	  clock chips.
294
295config RTC_DAVINCI
296	bool "Enable TI OMAP RTC driver"
297	depends on ARCH_DAVINCI || ARCH_OMAP2PLUS
298	help
299	  Say "yes" here to support the on chip real time clock
300	  present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
301
302config RTC_ZYNQMP
303	bool "Enable ZynqMP RTC driver"
304	depends on DM_RTC && (ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET || ARCH_VERSAL2)
305	help
306	  Say "yes" here to support the on chip real time clock
307	  present on Xilinx ZynqMP SoC.
308
309config RTC_HT1380
310	bool "Enable Holtek HT1380/HT1381 RTC driver"
311	depends on DM_RTC && DM_GPIO
312	help
313	  Say "yes" here to get support for Holtek HT1380/HT1381
314	  Serial Timekeeper IC which provides seconds, minutes, hours,
315	  day of the week, date, month and year information. It is to be
316	  connected via 3 GPIO pins which work as reset, clock, and data.
317
318endmenu
319