Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
58394271 | 2 | menu "Clock Source drivers" |
2f8a26c1 | 3 | depends on GENERIC_CLOCKEVENTS |
58394271 | 4 | |
bb0eb050 | 5 | config TIMER_OF |
ae278a93 | 6 | bool |
bb0eb050 | 7 | select TIMER_PROBE |
aad83b15 | 8 | |
fa1bffab | 9 | config TIMER_ACPI |
aad83b15 | 10 | bool |
bb0eb050 | 11 | select TIMER_PROBE |
aad83b15 | 12 | |
bb0eb050 | 13 | config TIMER_PROBE |
aad83b15 | 14 | bool |
ae278a93 | 15 | |
89c0b8e2 RK |
16 | config CLKSRC_I8253 |
17 | bool | |
442c8176 | 18 | |
e6220bdc TG |
19 | config CLKEVT_I8253 |
20 | bool | |
21 | ||
15f304b6 RB |
22 | config I8253_LOCK |
23 | bool | |
24 | ||
af04aa85 K |
25 | config OMAP_DM_TIMER |
26 | bool | |
eda9a4f7 | 27 | select TIMER_OF |
af04aa85 | 28 | |
15f304b6 | 29 | config CLKBLD_I8253 |
e6220bdc | 30 | def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK |
15f304b6 | 31 | |
442c8176 RK |
32 | config CLKSRC_MMIO |
33 | bool | |
06c3df49 | 34 | |
2ea879a7 DL |
35 | config BCM2835_TIMER |
36 | bool "BCM2835 timer driver" if COMPILE_TEST | |
2ea879a7 DL |
37 | select CLKSRC_MMIO |
38 | help | |
39 | Enables the support for the BCM2835 timer driver. | |
40 | ||
1cad71e3 DL |
41 | config BCM_KONA_TIMER |
42 | bool "BCM mobile timer driver" if COMPILE_TEST | |
1cad71e3 DL |
43 | select CLKSRC_MMIO |
44 | help | |
45 | Enables the support for the BCM Kona mobile timer driver. | |
46 | ||
721154f9 BG |
47 | config DAVINCI_TIMER |
48 | bool "Texas Instruments DaVinci timer driver" if COMPILE_TEST | |
49 | help | |
50 | Enables the support for the TI DaVinci timer driver. | |
51 | ||
9b8bb773 | 52 | config DIGICOLOR_TIMER |
e6c1db13 | 53 | bool "Digicolor timer driver" if COMPILE_TEST |
2be6d9bf | 54 | select CLKSRC_MMIO |
d7023e62 | 55 | depends on HAS_IOMEM |
e6c1db13 DL |
56 | help |
57 | Enables the support for the digicolor timer driver. | |
9b8bb773 | 58 | |
06c3df49 | 59 | config DW_APB_TIMER |
5b097f6b DL |
60 | bool "DW APB timer driver" if COMPILE_TEST |
61 | help | |
62 | Enables the support for the dw_apb timer. | |
489bccea | 63 | |
cfda5901 DN |
64 | config DW_APB_TIMER_OF |
65 | bool | |
1b4eca0f | 66 | select DW_APB_TIMER |
bb0eb050 | 67 | select TIMER_OF |
cfda5901 | 68 | |
f5bf0ee4 LW |
69 | config FTTMR010_TIMER |
70 | bool "Faraday Technology timer driver" if COMPILE_TEST | |
4750535b LW |
71 | depends on HAS_IOMEM |
72 | select CLKSRC_MMIO | |
bb0eb050 | 73 | select TIMER_OF |
4750535b LW |
74 | select MFD_SYSCON |
75 | help | |
f5bf0ee4 LW |
76 | Enables support for the Faraday Technology timer block |
77 | FTTMR010. | |
4750535b | 78 | |
13e0b405 LW |
79 | config IXP4XX_TIMER |
80 | bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST | |
81 | depends on HAS_IOMEM | |
82 | select CLKSRC_MMIO | |
7a3b8758 | 83 | select TIMER_OF if OF |
13e0b405 LW |
84 | help |
85 | Enables support for the Intel XScale IXP4xx SoC timer. | |
86 | ||
468b8c4c | 87 | config ROCKCHIP_TIMER |
40ada2aa DL |
88 | bool "Rockchip timer driver" if COMPILE_TEST |
89 | depends on ARM || ARM64 | |
bb0eb050 | 90 | select TIMER_OF |
5e0a39d0 | 91 | select CLKSRC_MMIO |
40ada2aa | 92 | help |
06293463 | 93 | Enables the support for the Rockchip timer driver. |
468b8c4c | 94 | |
6fe9cbd1 | 95 | config ARMADA_370_XP_TIMER |
9519e80c DL |
96 | bool "Armada 370 and XP timer driver" if COMPILE_TEST |
97 | depends on ARM | |
bb0eb050 | 98 | select TIMER_OF |
2be6d9bf | 99 | select CLKSRC_MMIO |
9519e80c DL |
100 | help |
101 | Enables the support for the Armada 370 and XP timer driver. | |
6fe9cbd1 | 102 | |
e4a6b378 | 103 | config MESON6_TIMER |
0b7a7bb7 | 104 | bool "Meson6 timer driver" if COMPILE_TEST |
7b6b0a45 | 105 | select CLKSRC_MMIO |
0b7a7bb7 DL |
106 | help |
107 | Enables the support for the Meson6 timer driver. | |
e4a6b378 | 108 | |
0c1dcfd5 | 109 | config ORION_TIMER |
c9165549 DL |
110 | bool "Orion timer driver" if COMPILE_TEST |
111 | depends on ARM | |
bb0eb050 | 112 | select TIMER_OF |
0c1dcfd5 | 113 | select CLKSRC_MMIO |
c9165549 DL |
114 | help |
115 | Enables the support for the Orion timer driver | |
0c1dcfd5 | 116 | |
4be78a86 AF |
117 | config OWL_TIMER |
118 | bool "Owl timer driver" if COMPILE_TEST | |
4be78a86 AF |
119 | select CLKSRC_MMIO |
120 | help | |
121 | Enables the support for the Actions Semi Owl timer driver. | |
122 | ||
7f83a132 MS |
123 | config RDA_TIMER |
124 | bool "RDA timer driver" if COMPILE_TEST | |
7f83a132 MS |
125 | select CLKSRC_MMIO |
126 | select TIMER_OF | |
127 | help | |
128 | Enables the support for the RDA Micro timer driver. | |
129 | ||
119fd635 | 130 | config SUN4I_TIMER |
b4fcd48b | 131 | bool "Sun4i timer driver" if COMPILE_TEST |
d7023e62 | 132 | depends on HAS_IOMEM |
71c568c0 | 133 | select CLKSRC_MMIO |
239751ed | 134 | select TIMER_OF |
b4fcd48b DL |
135 | help |
136 | Enables support for the Sun4i timer. | |
b2ac5d75 | 137 | |
67905540 | 138 | config SUN5I_HSTIMER |
f0c5afb7 | 139 | bool "Sun5i timer driver" if COMPILE_TEST |
67905540 | 140 | select CLKSRC_MMIO |
f0c5afb7 DL |
141 | depends on COMMON_CLK |
142 | help | |
143 | Enables support the Sun5i timer. | |
67905540 | 144 | |
910978e7 | 145 | config TEGRA_TIMER |
adce4bc8 | 146 | bool "Tegra timer driver" if COMPILE_TEST |
2be6d9bf | 147 | select CLKSRC_MMIO |
b4822dc7 | 148 | select TIMER_OF |
acb4bb3f | 149 | depends on ARCH_TEGRA || COMPILE_TEST |
adce4bc8 DL |
150 | help |
151 | Enables support for the Tegra driver. | |
910978e7 | 152 | |
ff7ec345 | 153 | config VT8500_TIMER |
b4bdf7ef | 154 | bool "VT8500 timer driver" if COMPILE_TEST |
d7023e62 | 155 | depends on HAS_IOMEM |
b4bdf7ef DL |
156 | help |
157 | Enables support for the VT8500 driver. | |
ff7ec345 | 158 | |
1c00289e TM |
159 | config NPCM7XX_TIMER |
160 | bool "NPCM7xx timer driver" if COMPILE_TEST | |
161 | depends on HAS_IOMEM | |
99834eea | 162 | select TIMER_OF |
1c00289e TM |
163 | select CLKSRC_MMIO |
164 | help | |
165 | Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture, | |
06293463 | 166 | where TIMER0 serves as clockevent and TIMER1 serves as clocksource. |
1c00289e | 167 | |
4f0f234f | 168 | config CADENCE_TTC_TIMER |
57f49318 DL |
169 | bool "Cadence TTC timer driver" if COMPILE_TEST |
170 | depends on COMMON_CLK | |
171 | help | |
06293463 | 172 | Enables support for the Cadence TTC driver. |
4f0f234f | 173 | |
a8b1b9fc | 174 | config ASM9260_TIMER |
b9755841 | 175 | bool "ASM9260 timer driver" if COMPILE_TEST |
a8b1b9fc | 176 | select CLKSRC_MMIO |
bb0eb050 | 177 | select TIMER_OF |
b9755841 DL |
178 | help |
179 | Enables support for the ASM9260 timer. | |
a8b1b9fc | 180 | |
694e33a7 | 181 | config CLKSRC_NOMADIK_MTU |
70329653 DL |
182 | bool "Nomakdik clocksource driver" if COMPILE_TEST |
183 | depends on ARM | |
694e33a7 LW |
184 | select CLKSRC_MMIO |
185 | help | |
186 | Support for Multi Timer Unit. MTU provides access | |
187 | to multiple interrupt generating programmable | |
188 | 32-bit free running decrementing counters. | |
189 | ||
489bccea | 190 | config CLKSRC_DBX500_PRCMU |
1becd6ed | 191 | bool "Clocksource PRCMU Timer" if COMPILE_TEST |
d7023e62 | 192 | depends on HAS_IOMEM |
489bccea | 193 | help |
06293463 | 194 | Use the always on PRCMU Timer as clocksource. |
489bccea | 195 | |
ecf0efdc | 196 | config CLPS711X_TIMER |
06293463 | 197 | bool "Cirrus Logic timer driver" if COMPILE_TEST |
ecf0efdc DL |
198 | select CLKSRC_MMIO |
199 | help | |
200 | Enables support for the Cirrus Logic PS711 timer. | |
201 | ||
d81c50a0 | 202 | config MXS_TIMER |
06293463 | 203 | bool "MXS timer driver" if COMPILE_TEST |
d81c50a0 DL |
204 | select CLKSRC_MMIO |
205 | select STMP_DEVICE | |
206 | help | |
06293463 | 207 | Enables support for the MXS timer. |
d81c50a0 | 208 | |
d683b9dc DL |
209 | config NSPIRE_TIMER |
210 | bool "NSpire timer driver" if COMPILE_TEST | |
d683b9dc DL |
211 | select CLKSRC_MMIO |
212 | help | |
213 | Enables support for the Nspire timer. | |
214 | ||
c12547a0 DL |
215 | config KEYSTONE_TIMER |
216 | bool "Keystone timer driver" if COMPILE_TEST | |
c12547a0 DL |
217 | depends on ARM || ARM64 |
218 | select CLKSRC_MMIO | |
219 | help | |
220 | Enables support for the Keystone timer. | |
221 | ||
568c0342 | 222 | config INTEGRATOR_AP_TIMER |
06293463 | 223 | bool "Integrator-AP timer driver" if COMPILE_TEST |
568c0342 DL |
224 | select CLKSRC_MMIO |
225 | help | |
06293463 | 226 | Enables support for the Integrator-AP timer. |
568c0342 | 227 | |
050dd322 | 228 | config CLKSRC_LPC32XX |
ddcf48c7 | 229 | bool "Clocksource for LPC32XX" if COMPILE_TEST |
2f8a26c1 | 230 | depends on HAS_IOMEM |
1b18fd20 | 231 | depends on ARM |
050dd322 | 232 | select CLKSRC_MMIO |
bb0eb050 | 233 | select TIMER_OF |
ddcf48c7 DL |
234 | help |
235 | Support for the LPC32XX clocksource. | |
050dd322 | 236 | |
84583983 | 237 | config CLKSRC_PISTACHIO |
1e4fd60b | 238 | bool "Clocksource for Pistachio SoC" |
2f8a26c1 | 239 | depends on HAS_IOMEM |
1e4fd60b | 240 | depends on MIPS || COMPILE_TEST |
bb0eb050 | 241 | select TIMER_OF |
dfdb1652 DL |
242 | help |
243 | Enables the clocksource for the Pistachio SoC. | |
84583983 | 244 | |
fe851f56 FB |
245 | config CLKSRC_TI_32K |
246 | bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST | |
dfedaf10 | 247 | depends on GENERIC_SCHED_CLOCK |
bb0eb050 | 248 | select TIMER_OF if OF |
fe851f56 FB |
249 | help |
250 | This option enables support for Texas Instruments 32.768 Hz clocksource | |
251 | available on many OMAP-like platforms. | |
252 | ||
e37e4593 | 253 | config CLKSRC_STM32 |
1cb6c215 PG |
254 | bool "Clocksource for STM32 SoCs" if !ARCH_STM32 |
255 | depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST) | |
e37e4593 | 256 | select CLKSRC_MMIO |
d04af490 | 257 | select TIMER_OF |
e37e4593 | 258 | |
48b41c5e BG |
259 | config CLKSRC_STM32_LP |
260 | bool "Low power clocksource for STM32 SoCs" | |
261 | depends on MFD_STM32_LPTIMER || COMPILE_TEST | |
262 | ||
0302637f VM |
263 | config CLKSRC_MPS2 |
264 | bool "Clocksource for MPS2 SoCs" if COMPILE_TEST | |
265 | depends on GENERIC_SCHED_CLOCK | |
266 | select CLKSRC_MMIO | |
bb0eb050 | 267 | select TIMER_OF |
0302637f | 268 | |
c4c9a040 VG |
269 | config ARC_TIMERS |
270 | bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST | |
bf287607 | 271 | depends on GENERIC_SCHED_CLOCK |
bb0eb050 | 272 | select TIMER_OF |
c4c9a040 VG |
273 | help |
274 | These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores | |
275 | (ARC700 as well as ARC HS38). | |
06293463 | 276 | TIMER0 serves as clockevent while TIMER1 provides clocksource. |
c4c9a040 VG |
277 | |
278 | config ARC_TIMERS_64BIT | |
279 | bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST | |
c4c9a040 | 280 | depends on ARC_TIMERS |
bb0eb050 | 281 | select TIMER_OF |
c4c9a040 | 282 | help |
06293463 | 283 | This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP). |
c4c9a040 VG |
284 | RTC is implemented inside the core, while GFRC sits outside the core in |
285 | ARConnect IP block. Driver automatically picks one of them for clocksource | |
286 | as appropriate. | |
287 | ||
8a4da6e3 MR |
288 | config ARM_ARCH_TIMER |
289 | bool | |
bb0eb050 | 290 | select TIMER_OF if OF |
fa1bffab | 291 | select TIMER_ACPI if ACPI |
a2c5d4ed | 292 | |
037f6377 | 293 | config ARM_ARCH_TIMER_EVTSTREAM |
46fd5c6b | 294 | bool "Enable ARM architected timer event stream generation by default" |
037f6377 | 295 | default y if ARM_ARCH_TIMER |
77f7ce9a | 296 | depends on ARM_ARCH_TIMER |
037f6377 | 297 | help |
46fd5c6b WD |
298 | This option enables support by default for event stream generation |
299 | based on the ARM architected timer. It is used for waking up CPUs | |
300 | executing the wfe instruction at a frequency represented as a | |
301 | power-of-2 divisor of the clock rate. The behaviour can also be | |
302 | overridden on the command line using the | |
303 | clocksource.arm_arch_timer.evtstream parameter. | |
037f6377 WD |
304 | The main use of the event stream is wfe-based timeouts of userspace |
305 | locking implementations. It might also be useful for imposing timeout | |
306 | on wfe to safeguard against any programming errors in case an expected | |
307 | event is not generated. | |
308 | This must be disabled for hardware validation purposes to detect any | |
309 | hardware anomalies of missing events. | |
310 | ||
16d10ef2 DT |
311 | config ARM_ARCH_TIMER_OOL_WORKAROUND |
312 | bool | |
313 | ||
f6dc1576 SW |
314 | config FSL_ERRATUM_A008585 |
315 | bool "Workaround for Freescale/NXP Erratum A-008585" | |
316 | default y | |
317 | depends on ARM_ARCH_TIMER && ARM64 | |
16d10ef2 | 318 | select ARM_ARCH_TIMER_OOL_WORKAROUND |
f6dc1576 SW |
319 | help |
320 | This option enables a workaround for Freescale/NXP Erratum | |
321 | A-008585 ("ARM generic timer may contain an erroneous | |
322 | value"). The workaround will only be active if the | |
323 | fsl,erratum-a008585 property is found in the timer node. | |
324 | ||
bb42ca47 DT |
325 | config HISILICON_ERRATUM_161010101 |
326 | bool "Workaround for Hisilicon Erratum 161010101" | |
327 | default y | |
328 | select ARM_ARCH_TIMER_OOL_WORKAROUND | |
329 | depends on ARM_ARCH_TIMER && ARM64 | |
330 | help | |
331 | This option enables a workaround for Hisilicon Erratum | |
332 | 161010101. The workaround will be active if the hisilicon,erratum-161010101 | |
333 | property is found in the timer node. | |
334 | ||
fa8d815f MZ |
335 | config ARM64_ERRATUM_858921 |
336 | bool "Workaround for Cortex-A73 erratum 858921" | |
337 | default y | |
338 | select ARM_ARCH_TIMER_OOL_WORKAROUND | |
339 | depends on ARM_ARCH_TIMER && ARM64 | |
340 | help | |
341 | This option enables a workaround applicable to Cortex-A73 | |
342 | (all versions), whose counter may return incorrect values. | |
343 | The workaround will be dynamically enabled when an affected | |
344 | core is detected. | |
345 | ||
c950ca8c SH |
346 | config SUN50I_ERRATUM_UNKNOWN1 |
347 | bool "Workaround for Allwinner A64 erratum UNKNOWN1" | |
348 | default y | |
349 | depends on ARM_ARCH_TIMER && ARM64 && ARCH_SUNXI | |
350 | select ARM_ARCH_TIMER_OOL_WORKAROUND | |
351 | help | |
352 | This option enables a workaround for instability in the timer on | |
353 | the Allwinner A64 SoC. The workaround will only be active if the | |
354 | allwinner,erratum-unknown1 property is found in the timer node. | |
355 | ||
c1b40e44 | 356 | config ARM_GLOBAL_TIMER |
67a87a43 | 357 | bool "Support for the ARM global timer" if COMPILE_TEST |
bb0eb050 | 358 | select TIMER_OF if OF |
67a87a43 | 359 | depends on ARM |
c1b40e44 | 360 | help |
06293463 | 361 | This option enables support for the ARM global timer unit. |
c1b40e44 | 362 | |
171b45a4 AM |
363 | config ARM_GT_INITIAL_PRESCALER_VAL |
364 | int "ARM global timer initial prescaler value" | |
68e2215e | 365 | default 2 if ARCH_ZYNQ |
171b45a4 AM |
366 | default 1 |
367 | depends on ARM_GLOBAL_TIMER | |
368 | help | |
369 | When the ARM global timer initializes, its current rate is declared | |
370 | to the kernel and maintained forever. Should it's parent clock | |
371 | change, the driver tries to fix the timer's internal prescaler. | |
372 | On some machs (i.e. Zynq) the initial prescaler value thus poses | |
373 | bounds about how much the parent clock is allowed to decrease or | |
374 | increase wrt the initial clock value. | |
375 | This affects CPU_FREQ max delta from the initial frequency. | |
376 | ||
0b7402dc | 377 | config ARM_TIMER_SP804 |
dfc82faa | 378 | bool "Support for Dual Timer SP804 module" if COMPILE_TEST |
2f4574dd | 379 | depends on GENERIC_SCHED_CLOCK && HAVE_CLK |
0b7402dc | 380 | select CLKSRC_MMIO |
bb0eb050 | 381 | select TIMER_OF if OF |
0b7402dc | 382 | |
c1b40e44 SM |
383 | config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK |
384 | bool | |
385 | depends on ARM_GLOBAL_TIMER | |
386 | default y | |
387 | help | |
06293463 | 388 | Use ARM global timer clock source as sched_clock. |
c1b40e44 | 389 | |
4958ebb3 | 390 | config ARMV7M_SYSTICK |
e2146d86 | 391 | bool "Support for the ARMv7M system time" if COMPILE_TEST |
bb0eb050 | 392 | select TIMER_OF if OF |
4958ebb3 MC |
393 | select CLKSRC_MMIO |
394 | help | |
06293463 | 395 | This option enables support for the ARMv7M system timer unit. |
4958ebb3 | 396 | |
b052ff30 | 397 | config ATMEL_PIT |
2f982703 AB |
398 | bool "Atmel PIT support" if COMPILE_TEST |
399 | depends on HAS_IOMEM | |
bb0eb050 | 400 | select TIMER_OF if OF |
2f982703 AB |
401 | help |
402 | Support for the Periodic Interval Timer found on Atmel SoCs. | |
b052ff30 | 403 | |
b53cdd03 | 404 | config ATMEL_ST |
b988d3f0 | 405 | bool "Atmel ST timer support" if COMPILE_TEST |
bd2746f0 | 406 | depends on HAS_IOMEM |
bb0eb050 | 407 | select TIMER_OF |
7ab7ef74 | 408 | select MFD_SYSCON |
b988d3f0 DL |
409 | help |
410 | Support for the Atmel ST timer. | |
b53cdd03 | 411 | |
6275f494 AB |
412 | config ATMEL_TCB_CLKSRC |
413 | bool "Atmel TC Block timer driver" if COMPILE_TEST | |
1ce861ce | 414 | depends on ARM && HAS_IOMEM |
6275f494 AB |
415 | select TIMER_OF if OF |
416 | help | |
417 | Support for Timer Counter Blocks on Atmel SoCs. | |
418 | ||
6938d75a | 419 | config CLKSRC_EXYNOS_MCT |
39366ef4 | 420 | bool "Exynos multi core timer driver" if COMPILE_TEST |
f1a4c1f3 | 421 | depends on ARM || ARM64 |
8602a80b | 422 | depends on ARCH_EXYNOS || COMPILE_TEST |
6938d75a TA |
423 | help |
424 | Support for Multi Core Timer controller on Exynos SoCs. | |
241a9871 | 425 | |
f1189989 | 426 | config CLKSRC_SAMSUNG_PWM |
de37b0b5 | 427 | bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST |
d7023e62 | 428 | depends on HAS_IOMEM |
8602a80b | 429 | depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST |
f1189989 TF |
430 | help |
431 | This is a new clocksource driver for the PWM timer found in | |
432 | Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver | |
433 | for all devicetree enabled platforms. This driver will be | |
434 | needed only on systems that do not have the Exynos MCT available. | |
c1967249 | 435 | |
2529c3a3 | 436 | config FSL_FTM_TIMER |
ef49336b | 437 | bool "Freescale FlexTimer Module driver" if COMPILE_TEST |
d7023e62 | 438 | depends on HAS_IOMEM |
03724ac3 | 439 | select CLKSRC_MMIO |
2529c3a3 XL |
440 | help |
441 | Support for Freescale FlexTimer Module (FTM) timer. | |
442 | ||
c1967249 JL |
443 | config VF_PIT_TIMER |
444 | bool | |
2be6d9bf | 445 | select CLKSRC_MMIO |
c1967249 | 446 | help |
06293463 | 447 | Support for Periodic Interrupt Timer on Freescale Vybrid Family SoCs. |
fd3f1270 | 448 | |
89355274 NA |
449 | config OXNAS_RPS_TIMER |
450 | bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST | |
bb0eb050 | 451 | select TIMER_OF |
89355274 NA |
452 | select CLKSRC_MMIO |
453 | help | |
454 | This enables support for the Oxford Semiconductor OXNAS RPS timers. | |
455 | ||
fd3f1270 | 456 | config SYS_SUPPORTS_SH_CMT |
9ca9fe69 | 457 | bool |
fd3f1270 | 458 | |
ecb3530d | 459 | config MTK_TIMER |
fbca9eab | 460 | bool "Mediatek timer driver" if COMPILE_TEST |
2f8a26c1 | 461 | depends on HAS_IOMEM |
bb0eb050 | 462 | select TIMER_OF |
ecb3530d | 463 | select CLKSRC_MMIO |
fbca9eab DL |
464 | help |
465 | Support for Mediatek timer driver. | |
ecb3530d | 466 | |
067bc914 | 467 | config SPRD_TIMER |
8a1ece26 | 468 | bool "Spreadtrum timer driver" if EXPERT |
067bc914 | 469 | depends on HAS_IOMEM |
8a1ece26 CZ |
470 | depends on (ARCH_SPRD || COMPILE_TEST) |
471 | default ARCH_SPRD | |
067bc914 BW |
472 | select TIMER_OF |
473 | help | |
474 | Enables support for the Spreadtrum timer driver. | |
475 | ||
fd3f1270 | 476 | config SYS_SUPPORTS_SH_MTU2 |
9ca9fe69 | 477 | bool |
fd3f1270 MD |
478 | |
479 | config SYS_SUPPORTS_SH_TMU | |
9ca9fe69 | 480 | bool |
fd3f1270 MD |
481 | |
482 | config SYS_SUPPORTS_EM_STI | |
9ca9fe69 | 483 | bool |
fd3f1270 | 484 | |
9995f4f1 RF |
485 | config CLKSRC_JCORE_PIT |
486 | bool "J-Core PIT timer driver" if COMPILE_TEST | |
487 | depends on OF | |
9995f4f1 RF |
488 | depends on HAS_IOMEM |
489 | select CLKSRC_MMIO | |
490 | help | |
491 | This enables build of clocksource and clockevent driver for | |
492 | the integrated PIT in the J-Core synthesizable, open source SoC. | |
493 | ||
fd3f1270 MD |
494 | config SH_TIMER_CMT |
495 | bool "Renesas CMT timer driver" if COMPILE_TEST | |
11bc26fe | 496 | depends on HAS_IOMEM |
fd3f1270 MD |
497 | default SYS_SUPPORTS_SH_CMT |
498 | help | |
499 | This enables build of a clocksource and clockevent driver for | |
500 | the Compare Match Timer (CMT) hardware available in 16/32/48-bit | |
501 | variants on a wide range of Mobile and Automotive SoCs from Renesas. | |
502 | ||
503 | config SH_TIMER_MTU2 | |
504 | bool "Renesas MTU2 timer driver" if COMPILE_TEST | |
11bc26fe | 505 | depends on HAS_IOMEM |
fd3f1270 MD |
506 | default SYS_SUPPORTS_SH_MTU2 |
507 | help | |
508 | This enables build of a clockevent driver for the Multi-Function | |
7e139187 | 509 | Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas. |
06293463 | 510 | This hardware comes with 16-bit timer registers. |
fd3f1270 | 511 | |
fb6002a8 | 512 | config RENESAS_OSTM |
a2807f65 BD |
513 | bool "Renesas OSTM timer driver" |
514 | depends on ARCH_RENESAS || COMPILE_TEST | |
fb6002a8 | 515 | select CLKSRC_MMIO |
22731423 | 516 | select TIMER_OF |
fb6002a8 CB |
517 | help |
518 | Enables the support for the Renesas OSTM. | |
519 | ||
fd3f1270 MD |
520 | config SH_TIMER_TMU |
521 | bool "Renesas TMU timer driver" if COMPILE_TEST | |
11bc26fe | 522 | depends on HAS_IOMEM |
fd3f1270 MD |
523 | default SYS_SUPPORTS_SH_TMU |
524 | help | |
525 | This enables build of a clocksource and clockevent driver for | |
526 | the 32-bit Timer Unit (TMU) hardware available on a wide range | |
527 | SoCs from Renesas. | |
528 | ||
529 | config EM_TIMER_STI | |
530 | bool "Renesas STI timer driver" if COMPILE_TEST | |
2f8a26c1 | 531 | depends on HAS_IOMEM |
fd3f1270 MD |
532 | default SYS_SUPPORTS_EM_STI |
533 | help | |
534 | This enables build of a clocksource and clockevent driver for | |
535 | the 48-bit System Timer (STI) hardware available on a SoCs | |
536 | such as EMEV2 from former NEC Electronics. | |
dfc25e45 | 537 | |
3f8e8cee | 538 | config CLKSRC_QCOM |
3dc0e9f6 DL |
539 | bool "Qualcomm MSM timer" if COMPILE_TEST |
540 | depends on ARM | |
bb0eb050 | 541 | select TIMER_OF |
3dc0e9f6 DL |
542 | help |
543 | This enables the clocksource and the per CPU clockevent driver for the | |
544 | Qualcomm SoCs. | |
220e2a8d PM |
545 | |
546 | config CLKSRC_VERSATILE | |
5cc87a4d | 547 | bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST |
77f6c0b8 | 548 | depends on GENERIC_SCHED_CLOCK |
bb0eb050 | 549 | select TIMER_OF |
bfed0ede | 550 | default y if (ARCH_VEXPRESS || ARCH_VERSATILE) && ARM |
220e2a8d PM |
551 | help |
552 | This option enables clock source based on free running | |
553 | counter available in the "System Registers" block of | |
bfed0ede | 554 | ARM Versatile and Versatile Express reference platforms. |
58394271 | 555 | |
fa5635a2 AB |
556 | config CLKSRC_MIPS_GIC |
557 | bool | |
558 | depends on MIPS_GIC | |
7d7de1a6 | 559 | select CLOCKSOURCE_WATCHDOG |
bb0eb050 | 560 | select TIMER_OF |
fa5635a2 | 561 | |
e074ff86 | 562 | config CLKSRC_PXA |
5ae996cb | 563 | bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST |
d7023e62 | 564 | depends on HAS_IOMEM |
5ae996cb | 565 | select CLKSRC_MMIO |
e074ff86 DES |
566 | help |
567 | This enables OST0 support available on PXA and SA-11x0 | |
568 | platforms. | |
618b902d | 569 | |
97a23beb | 570 | config H8300_TMR8 |
9ca9fe69 KK |
571 | bool "Clockevent timer for the H8300 platform" if COMPILE_TEST |
572 | depends on HAS_IOMEM | |
46e7c3c6 DL |
573 | help |
574 | This enables the 8 bits timer for the H8300 platform. | |
97a23beb | 575 | |
618b902d | 576 | config H8300_TMR16 |
9ca9fe69 KK |
577 | bool "Clockevent timer for the H83069 platform" if COMPILE_TEST |
578 | depends on HAS_IOMEM | |
46e7c3c6 DL |
579 | help |
580 | This enables the 16 bits timer for the H8300 platform with the | |
06293463 | 581 | H83069 CPU. |
618b902d YS |
582 | |
583 | config H8300_TPU | |
9ca9fe69 KK |
584 | bool "Clocksource for the H8300 platform" if COMPILE_TEST |
585 | depends on HAS_IOMEM | |
46e7c3c6 DL |
586 | help |
587 | This enables the clocksource for the H8300 platform with the | |
06293463 | 588 | H8S2678 CPU. |
618b902d | 589 | |
bea5af41 SG |
590 | config CLKSRC_IMX_GPT |
591 | bool "Clocksource using i.MX GPT" if COMPILE_TEST | |
2f4574dd | 592 | depends on (ARM || ARM64) && HAVE_CLK |
bea5af41 SG |
593 | select CLKSRC_MMIO |
594 | ||
059ab7b8 DA |
595 | config CLKSRC_IMX_TPM |
596 | bool "Clocksource using i.MX TPM" if COMPILE_TEST | |
2f4574dd | 597 | depends on (ARM || ARM64) && HAVE_CLK |
059ab7b8 | 598 | select CLKSRC_MMIO |
a6d0812a | 599 | select TIMER_OF |
059ab7b8 DA |
600 | help |
601 | Enable this option to use IMX Timer/PWM Module (TPM) timer as | |
602 | clocksource. | |
603 | ||
7117a44b BP |
604 | config TIMER_IMX_SYS_CTR |
605 | bool "i.MX system counter timer" if COMPILE_TEST | |
606 | select TIMER_OF | |
607 | help | |
608 | Enable this option to use i.MX system counter timer as a | |
609 | clockevent. | |
610 | ||
70bef01c | 611 | config CLKSRC_ST_LPC |
baacaf83 | 612 | bool "Low power clocksource found in the LPC" if COMPILE_TEST |
bb0eb050 | 613 | select TIMER_OF if OF |
863ee050 | 614 | depends on HAS_IOMEM |
2be6d9bf | 615 | select CLKSRC_MMIO |
70bef01c LJ |
616 | help |
617 | Enable this option to use the Low Power controller timer | |
618 | as clocksource. | |
619 | ||
35dbb74a RC |
620 | config ATCPIT100_TIMER |
621 | bool "ATCPIT100 timer driver" | |
622 | depends on NDS32 || COMPILE_TEST | |
623 | depends on HAS_IOMEM | |
624 | select TIMER_OF | |
625 | default NDS32 | |
626 | help | |
627 | This option enables support for the Andestech ATCPIT100 timers. | |
628 | ||
62b01943 | 629 | config RISCV_TIMER |
2bc3fc87 | 630 | bool "Timer for the RISC-V platform" if COMPILE_TEST |
ab310544 | 631 | depends on GENERIC_SCHED_CLOCK && RISCV && RISCV_SBI |
62b01943 PD |
632 | select TIMER_PROBE |
633 | select TIMER_OF | |
634 | help | |
635 | This enables the per-hart timer built into all RISC-V systems, which | |
636 | is accessed via both the SBI and the rdcycle instruction. This is | |
637 | required for all RISC-V systems. | |
638 | ||
2ac6795f AP |
639 | config CLINT_TIMER |
640 | bool "CLINT Timer for the RISC-V platform" if COMPILE_TEST | |
641 | depends on GENERIC_SCHED_CLOCK && RISCV | |
642 | select TIMER_PROBE | |
643 | select TIMER_OF | |
644 | help | |
645 | This option enables the CLINT timer for RISC-V systems. The CLINT | |
646 | driver is usually used for NoMMU RISC-V systems. | |
647 | ||
a7ad38b0 GR |
648 | config CSKY_MP_TIMER |
649 | bool "SMP Timer for the C-SKY platform" if COMPILE_TEST | |
650 | depends on CSKY | |
651 | select TIMER_OF | |
652 | help | |
653 | Say yes here to enable C-SKY SMP timer driver used for C-SKY SMP | |
654 | system. | |
06293463 RD |
655 | csky,mptimer is not only used in SMP system, it also could be used in |
656 | single core system. It's not a mmio reg and it uses mtcr/mfcr instruction. | |
a7ad38b0 | 657 | |
33745c3c GR |
658 | config GX6605S_TIMER |
659 | bool "Gx6605s SOC system timer driver" if COMPILE_TEST | |
660 | depends on CSKY | |
661 | select CLKSRC_MMIO | |
662 | select TIMER_OF | |
663 | help | |
664 | This option enables support for gx6605s SOC's timer. | |
665 | ||
b58f28f3 ST |
666 | config MILBEAUT_TIMER |
667 | bool "Milbeaut timer driver" if COMPILE_TEST | |
668 | depends on OF | |
669 | depends on ARM | |
670 | select TIMER_OF | |
671 | select CLKSRC_MMIO | |
672 | help | |
673 | Enables the support for Milbeaut timer driver. | |
674 | ||
5fc1f93f RP |
675 | config MSC313E_TIMER |
676 | bool "MSC313E timer driver" if COMPILE_TEST | |
677 | select TIMER_OF | |
678 | select CLKSRC_MMIO | |
679 | help | |
680 | Enables support for the MStar MSC313E timer driver. | |
681 | This provides access to multiple interrupt generating | |
682 | programmable 32-bit free running incrementing counters. | |
683 | ||
34e93683 PC |
684 | config INGENIC_TIMER |
685 | bool "Clocksource/timer using the TCU in Ingenic JZ SoCs" | |
686 | default MACH_INGENIC | |
687 | depends on MIPS || COMPILE_TEST | |
688 | depends on COMMON_CLK | |
689 | select MFD_SYSCON | |
690 | select TIMER_OF | |
691 | select IRQ_DOMAIN | |
692 | help | |
693 | Support for the timer/counter unit of the Ingenic JZ SoCs. | |
694 | ||
5ecafc12 ZY |
695 | config INGENIC_SYSOST |
696 | bool "Clocksource/timer using the SYSOST in Ingenic X SoCs" | |
697 | depends on MIPS || COMPILE_TEST | |
698 | depends on COMMON_CLK | |
699 | select MFD_SYSCON | |
700 | select TIMER_OF | |
701 | select IRQ_DOMAIN | |
702 | help | |
703 | Support for the SYSOST of the Ingenic X Series SoCs. | |
704 | ||
ca7b72b5 | 705 | config INGENIC_OST |
5ecafc12 | 706 | bool "Clocksource using the OST in Ingenic JZ SoCs" |
ca7b72b5 MH |
707 | depends on MIPS || COMPILE_TEST |
708 | depends on COMMON_CLK | |
709 | select MFD_SYSCON | |
710 | help | |
711 | Support for the Operating System Timer of the Ingenic JZ SoCs. | |
712 | ||
625022a5 CB |
713 | config MICROCHIP_PIT64B |
714 | bool "Microchip PIT64B support" | |
715 | depends on OF || COMPILE_TEST | |
716 | select CLKSRC_MMIO | |
25259f7a | 717 | select TIMER_OF |
625022a5 CB |
718 | help |
719 | This option enables Microchip PIT64B timer for Atmel | |
720 | based system. It supports the oneshot, the periodic | |
721 | modes and high resolution. It is used as a clocksource | |
722 | and a clockevent. | |
723 | ||
58394271 | 724 | endmenu |