xref: /openbmc/linux/drivers/clocksource/Kconfig (revision 9cfc5c90)
1menu "Clock Source drivers"
2
3config CLKSRC_OF
4	bool
5	select CLKSRC_PROBE
6
7config CLKSRC_ACPI
8	bool
9	select CLKSRC_PROBE
10
11config CLKSRC_PROBE
12	bool
13
14config CLKSRC_I8253
15	bool
16
17config CLKEVT_I8253
18	bool
19
20config I8253_LOCK
21	bool
22
23config CLKBLD_I8253
24	def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
25
26config CLKSRC_MMIO
27	bool
28
29config DIGICOLOR_TIMER
30	bool
31
32config DW_APB_TIMER
33	bool
34
35config DW_APB_TIMER_OF
36	bool
37	select DW_APB_TIMER
38	select CLKSRC_OF
39
40config ROCKCHIP_TIMER
41	bool
42	select CLKSRC_OF
43
44config ARMADA_370_XP_TIMER
45	bool
46	select CLKSRC_OF
47
48config MESON6_TIMER
49	bool
50	select CLKSRC_MMIO
51
52config ORION_TIMER
53	select CLKSRC_OF
54	select CLKSRC_MMIO
55	bool
56
57config SUN4I_TIMER
58	select CLKSRC_MMIO
59	bool
60
61config SUN5I_HSTIMER
62	select CLKSRC_MMIO
63	bool
64
65config TEGRA_TIMER
66	bool
67
68config VT8500_TIMER
69	bool
70
71config CADENCE_TTC_TIMER
72	bool
73
74config ASM9260_TIMER
75	bool
76	select CLKSRC_MMIO
77	select CLKSRC_OF
78
79config CLKSRC_NOMADIK_MTU
80	bool
81	depends on (ARCH_NOMADIK || ARCH_U8500)
82	select CLKSRC_MMIO
83	help
84	  Support for Multi Timer Unit. MTU provides access
85	  to multiple interrupt generating programmable
86	  32-bit free running decrementing counters.
87
88config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
89	bool
90	depends on CLKSRC_NOMADIK_MTU
91	help
92	  Use the Multi Timer Unit as the sched_clock.
93
94config CLKSRC_DBX500_PRCMU
95	bool "Clocksource PRCMU Timer"
96	depends on UX500_SOC_DB8500
97	default y
98	help
99	  Use the always on PRCMU Timer as clocksource
100
101config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
102	bool "Clocksource PRCMU Timer sched_clock"
103	depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
104	default y
105	help
106	  Use the always on PRCMU Timer as sched_clock
107
108config CLKSRC_EFM32
109	bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
110	depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
111	select CLKSRC_MMIO
112	default ARCH_EFM32
113	help
114	  Support to use the timers of EFM32 SoCs as clock source and clock
115	  event device.
116
117config CLKSRC_LPC32XX
118	bool
119	select CLKSRC_MMIO
120	select CLKSRC_OF
121
122config CLKSRC_PISTACHIO
123	bool
124	select CLKSRC_OF
125
126config CLKSRC_TI_32K
127	bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
128	depends on GENERIC_SCHED_CLOCK
129	select CLKSRC_OF if OF
130	help
131	  This option enables support for Texas Instruments 32.768 Hz clocksource
132	  available on many OMAP-like platforms.
133
134config CLKSRC_STM32
135	bool "Clocksource for STM32 SoCs" if !ARCH_STM32
136	depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
137	select CLKSRC_MMIO
138
139config ARM_ARCH_TIMER
140	bool
141	select CLKSRC_OF if OF
142	select CLKSRC_ACPI if ACPI
143
144config ARM_ARCH_TIMER_EVTSTREAM
145	bool "Support for ARM architected timer event stream generation"
146	default y if ARM_ARCH_TIMER
147	depends on ARM_ARCH_TIMER
148	help
149	  This option enables support for event stream generation based on
150	  the ARM architected timer. It is used for waking up CPUs executing
151	  the wfe instruction at a frequency represented as a power-of-2
152	  divisor of the clock rate.
153	  The main use of the event stream is wfe-based timeouts of userspace
154	  locking implementations. It might also be useful for imposing timeout
155	  on wfe to safeguard against any programming errors in case an expected
156	  event is not generated.
157	  This must be disabled for hardware validation purposes to detect any
158	  hardware anomalies of missing events.
159
160config ARM_GLOBAL_TIMER
161	bool
162	select CLKSRC_OF if OF
163	help
164	  This options enables support for the ARM global timer unit
165
166config ARM_TIMER_SP804
167	bool "Support for Dual Timer SP804 module"
168	depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
169	select CLKSRC_MMIO
170	select CLKSRC_OF if OF
171
172config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
173	bool
174	depends on ARM_GLOBAL_TIMER
175	default y
176	help
177	 Use ARM global timer clock source as sched_clock
178
179config ARMV7M_SYSTICK
180	bool
181	select CLKSRC_OF if OF
182	select CLKSRC_MMIO
183	help
184	  This options enables support for the ARMv7M system timer unit
185
186config ATMEL_PIT
187	select CLKSRC_OF if OF
188	def_bool SOC_AT91SAM9 || SOC_SAMA5
189
190config ATMEL_ST
191	bool
192	select CLKSRC_OF
193	select MFD_SYSCON
194
195config CLKSRC_METAG_GENERIC
196	def_bool y if METAG
197	help
198	  This option enables support for the Meta per-thread timers.
199
200config CLKSRC_EXYNOS_MCT
201	def_bool y if ARCH_EXYNOS
202	depends on !ARM64
203	help
204	  Support for Multi Core Timer controller on Exynos SoCs.
205
206config CLKSRC_SAMSUNG_PWM
207	bool
208	help
209	  This is a new clocksource driver for the PWM timer found in
210	  Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
211	  for all devicetree enabled platforms. This driver will be
212	  needed only on systems that do not have the Exynos MCT available.
213
214config FSL_FTM_TIMER
215	bool
216	help
217	  Support for Freescale FlexTimer Module (FTM) timer.
218
219config VF_PIT_TIMER
220	bool
221	help
222	  Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
223
224config SYS_SUPPORTS_SH_CMT
225        bool
226
227config MTK_TIMER
228	select CLKSRC_OF
229	select CLKSRC_MMIO
230	bool
231
232config SYS_SUPPORTS_SH_MTU2
233        bool
234
235config SYS_SUPPORTS_SH_TMU
236        bool
237
238config SYS_SUPPORTS_EM_STI
239        bool
240
241config SH_TIMER_CMT
242	bool "Renesas CMT timer driver" if COMPILE_TEST
243	depends on GENERIC_CLOCKEVENTS
244	depends on HAS_IOMEM
245	default SYS_SUPPORTS_SH_CMT
246	help
247	  This enables build of a clocksource and clockevent driver for
248	  the Compare Match Timer (CMT) hardware available in 16/32/48-bit
249	  variants on a wide range of Mobile and Automotive SoCs from Renesas.
250
251config SH_TIMER_MTU2
252	bool "Renesas MTU2 timer driver" if COMPILE_TEST
253	depends on GENERIC_CLOCKEVENTS
254	depends on HAS_IOMEM
255	default SYS_SUPPORTS_SH_MTU2
256	help
257	  This enables build of a clockevent driver for the Multi-Function
258	  Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
259	  This hardware comes with 16 bit-timer registers.
260
261config SH_TIMER_TMU
262	bool "Renesas TMU timer driver" if COMPILE_TEST
263	depends on GENERIC_CLOCKEVENTS
264	depends on HAS_IOMEM
265	default SYS_SUPPORTS_SH_TMU
266	help
267	  This enables build of a clocksource and clockevent driver for
268	  the 32-bit Timer Unit (TMU) hardware available on a wide range
269	  SoCs from Renesas.
270
271config EM_TIMER_STI
272	bool "Renesas STI timer driver" if COMPILE_TEST
273	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
274	default SYS_SUPPORTS_EM_STI
275	help
276	  This enables build of a clocksource and clockevent driver for
277	  the 48-bit System Timer (STI) hardware available on a SoCs
278	  such as EMEV2 from former NEC Electronics.
279
280config CLKSRC_QCOM
281	bool
282
283config CLKSRC_VERSATILE
284	bool "ARM Versatile (Express) reference platforms clock source"
285	depends on PLAT_VERSATILE && GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
286	select CLKSRC_OF
287	default y if MFD_VEXPRESS_SYSREG
288	help
289	  This option enables clock source based on free running
290	  counter available in the "System Registers" block of
291	  ARM Versatile, RealView and Versatile Express reference
292	  platforms.
293
294config CLKSRC_MIPS_GIC
295	bool
296	depends on MIPS_GIC
297	select CLKSRC_OF
298
299config CLKSRC_TANGO_XTAL
300	bool
301	select CLKSRC_OF
302
303config CLKSRC_PXA
304	def_bool y if ARCH_PXA || ARCH_SA1100
305	select CLKSRC_OF if OF
306	help
307	  This enables OST0 support available on PXA and SA-11x0
308	  platforms.
309
310config H8300_TMR16
311        bool
312
313config H8300_TPU
314        bool
315
316config CLKSRC_IMX_GPT
317	bool "Clocksource using i.MX GPT" if COMPILE_TEST
318	depends on ARM && CLKDEV_LOOKUP
319	select CLKSRC_MMIO
320
321config CLKSRC_ST_LPC
322	bool
323	depends on ARCH_STI
324	select CLKSRC_OF if OF
325	help
326	  Enable this option to use the Low Power controller timer
327	  as clocksource.
328
329endmenu
330