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