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