Merge tag 'pci-v4.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaa...
[linux-2.6-block.git] / drivers / clocksource / Kconfig
CommitLineData
58394271 1menu "Clock Source drivers"
3da6d49e 2 depends on !ARCH_USES_GETTIMEOFFSET
58394271 3
ae278a93
SW
4config CLKSRC_OF
5 bool
aad83b15
MZ
6 select CLKSRC_PROBE
7
8config CLKSRC_ACPI
9 bool
10 select CLKSRC_PROBE
11
12config CLKSRC_PROBE
13 bool
ae278a93 14
89c0b8e2
RK
15config CLKSRC_I8253
16 bool
442c8176 17
e6220bdc
TG
18config CLKEVT_I8253
19 bool
20
15f304b6
RB
21config I8253_LOCK
22 bool
23
24config CLKBLD_I8253
e6220bdc 25 def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
15f304b6 26
442c8176
RK
27config CLKSRC_MMIO
28 bool
06c3df49 29
2ea879a7
DL
30config BCM2835_TIMER
31 bool "BCM2835 timer driver" if COMPILE_TEST
32 depends on GENERIC_CLOCKEVENTS
33 select CLKSRC_MMIO
34 help
35 Enables the support for the BCM2835 timer driver.
36
1cad71e3
DL
37config BCM_KONA_TIMER
38 bool "BCM mobile timer driver" if COMPILE_TEST
39 depends on GENERIC_CLOCKEVENTS
40 select CLKSRC_MMIO
41 help
42 Enables the support for the BCM Kona mobile timer driver.
43
9b8bb773 44config DIGICOLOR_TIMER
e6c1db13 45 bool "Digicolor timer driver" if COMPILE_TEST
0901f184 46 depends on GENERIC_CLOCKEVENTS
2be6d9bf 47 select CLKSRC_MMIO
d7023e62 48 depends on HAS_IOMEM
e6c1db13
DL
49 help
50 Enables the support for the digicolor timer driver.
9b8bb773 51
06c3df49 52config DW_APB_TIMER
5b097f6b 53 bool "DW APB timer driver" if COMPILE_TEST
0901f184 54 depends on GENERIC_CLOCKEVENTS
5b097f6b
DL
55 help
56 Enables the support for the dw_apb timer.
489bccea 57
cfda5901
DN
58config DW_APB_TIMER_OF
59 bool
1b4eca0f 60 select DW_APB_TIMER
10021488 61 select CLKSRC_OF
cfda5901 62
468b8c4c 63config ROCKCHIP_TIMER
40ada2aa
DL
64 bool "Rockchip timer driver" if COMPILE_TEST
65 depends on ARM || ARM64
468b8c4c 66 select CLKSRC_OF
40ada2aa
DL
67 help
68 Enables the support for the rockchip timer driver.
468b8c4c 69
6fe9cbd1 70config ARMADA_370_XP_TIMER
9519e80c
DL
71 bool "Armada 370 and XP timer driver" if COMPILE_TEST
72 depends on ARM
7b0dd72a 73 select CLKSRC_OF
2be6d9bf 74 select CLKSRC_MMIO
9519e80c
DL
75 help
76 Enables the support for the Armada 370 and XP timer driver.
6fe9cbd1 77
e4a6b378 78config MESON6_TIMER
0b7a7bb7 79 bool "Meson6 timer driver" if COMPILE_TEST
0901f184 80 depends on GENERIC_CLOCKEVENTS
7b6b0a45 81 select CLKSRC_MMIO
0b7a7bb7
DL
82 help
83 Enables the support for the Meson6 timer driver.
e4a6b378 84
0c1dcfd5 85config ORION_TIMER
c9165549
DL
86 bool "Orion timer driver" if COMPILE_TEST
87 depends on ARM
0c1dcfd5
SH
88 select CLKSRC_OF
89 select CLKSRC_MMIO
c9165549
DL
90 help
91 Enables the support for the Orion timer driver
0c1dcfd5 92
119fd635 93config SUN4I_TIMER
b4fcd48b 94 bool "Sun4i timer driver" if COMPILE_TEST
0901f184 95 depends on GENERIC_CLOCKEVENTS
d7023e62 96 depends on HAS_IOMEM
71c568c0 97 select CLKSRC_MMIO
b4fcd48b
DL
98 help
99 Enables support for the Sun4i timer.
b2ac5d75 100
67905540 101config SUN5I_HSTIMER
f0c5afb7 102 bool "Sun5i timer driver" if COMPILE_TEST
67905540 103 select CLKSRC_MMIO
f0c5afb7
DL
104 depends on COMMON_CLK
105 help
106 Enables support the Sun5i timer.
67905540 107
910978e7 108config TEGRA_TIMER
adce4bc8 109 bool "Tegra timer driver" if COMPILE_TEST
2be6d9bf 110 select CLKSRC_MMIO
adce4bc8
DL
111 depends on ARM
112 help
113 Enables support for the Tegra driver.
910978e7 114
ff7ec345 115config VT8500_TIMER
b4bdf7ef 116 bool "VT8500 timer driver" if COMPILE_TEST
0901f184 117 depends on GENERIC_CLOCKEVENTS
d7023e62 118 depends on HAS_IOMEM
b4bdf7ef
DL
119 help
120 Enables support for the VT8500 driver.
ff7ec345 121
4f0f234f 122config CADENCE_TTC_TIMER
57f49318
DL
123 bool "Cadence TTC timer driver" if COMPILE_TEST
124 depends on COMMON_CLK
125 help
126 Enables support for the cadence ttc driver.
4f0f234f 127
a8b1b9fc 128config ASM9260_TIMER
b9755841 129 bool "ASM9260 timer driver" if COMPILE_TEST
0901f184 130 depends on GENERIC_CLOCKEVENTS
a8b1b9fc
DL
131 select CLKSRC_MMIO
132 select CLKSRC_OF
b9755841
DL
133 help
134 Enables support for the ASM9260 timer.
a8b1b9fc 135
694e33a7 136config CLKSRC_NOMADIK_MTU
70329653
DL
137 bool "Nomakdik clocksource driver" if COMPILE_TEST
138 depends on ARM
694e33a7
LW
139 select CLKSRC_MMIO
140 help
141 Support for Multi Timer Unit. MTU provides access
142 to multiple interrupt generating programmable
143 32-bit free running decrementing counters.
144
145config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
146 bool
147 depends on CLKSRC_NOMADIK_MTU
148 help
149 Use the Multi Timer Unit as the sched_clock.
150
489bccea 151config CLKSRC_DBX500_PRCMU
1becd6ed 152 bool "Clocksource PRCMU Timer" if COMPILE_TEST
0901f184 153 depends on GENERIC_CLOCKEVENTS
d7023e62 154 depends on HAS_IOMEM
489bccea
MW
155 help
156 Use the always on PRCMU Timer as clocksource
157
ecf0efdc
DL
158config CLPS711X_TIMER
159 bool "Cirrus logic timer driver" if COMPILE_TEST
160 depends on GENERIC_CLOCKEVENTS
161 select CLKSRC_MMIO
162 help
163 Enables support for the Cirrus Logic PS711 timer.
164
b56d5d21
DL
165config ATLAS7_TIMER
166 bool "Atlas7 timer driver" if COMPILE_TEST
167 depends on GENERIC_CLOCKEVENTS
168 select CLKSRC_MMIO
169 help
170 Enables support for the Atlas7 timer.
171
419be9e3
DL
172config MOXART_TIMER
173 bool "Moxart timer driver" if COMPILE_TEST
174 depends on GENERIC_CLOCKEVENTS
175 select CLKSRC_MMIO
176 help
177 Enables support for the Moxart timer.
178
d81c50a0
DL
179config MXS_TIMER
180 bool "Mxs timer driver" if COMPILE_TEST
181 depends on GENERIC_CLOCKEVENTS
182 select CLKSRC_MMIO
183 select STMP_DEVICE
184 help
185 Enables support for the Mxs timer.
186
f3550d49
DL
187config PRIMA2_TIMER
188 bool "Prima2 timer driver" if COMPILE_TEST
189 depends on GENERIC_CLOCKEVENTS
190 select CLKSRC_MMIO
191 help
192 Enables support for the Prima2 timer.
193
85f98db4
DL
194config U300_TIMER
195 bool "U300 timer driver" if COMPILE_TEST
196 depends on GENERIC_CLOCKEVENTS
197 depends on ARM
198 select CLKSRC_MMIO
199 help
200 Enables support for the U300 timer.
201
d683b9dc
DL
202config NSPIRE_TIMER
203 bool "NSpire timer driver" if COMPILE_TEST
204 depends on GENERIC_CLOCKEVENTS
205 select CLKSRC_MMIO
206 help
207 Enables support for the Nspire timer.
208
c12547a0
DL
209config KEYSTONE_TIMER
210 bool "Keystone timer driver" if COMPILE_TEST
211 depends on GENERIC_CLOCKEVENTS
212 depends on ARM || ARM64
213 select CLKSRC_MMIO
214 help
215 Enables support for the Keystone timer.
216
568c0342
DL
217config INTEGRATOR_AP_TIMER
218 bool "Integrator-ap timer driver" if COMPILE_TEST
219 depends on GENERIC_CLOCKEVENTS
220 select CLKSRC_MMIO
221 help
222 Enables support for the Integrator-ap timer.
223
489bccea
MW
224config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
225 bool "Clocksource PRCMU Timer sched_clock"
694e33a7 226 depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
489bccea
MW
227 default y
228 help
229 Use the always on PRCMU Timer as sched_clock
985c0679 230
9c9b7818
UKK
231config CLKSRC_EFM32
232 bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
233 depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
09ca2757 234 select CLKSRC_MMIO
9c9b7818
UKK
235 default ARCH_EFM32
236 help
237 Support to use the timers of EFM32 SoCs as clock source and clock
238 event device.
239
050dd322 240config CLKSRC_LPC32XX
ddcf48c7 241 bool "Clocksource for LPC32XX" if COMPILE_TEST
863ee050 242 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
1b18fd20 243 depends on ARM
050dd322
JE
244 select CLKSRC_MMIO
245 select CLKSRC_OF
ddcf48c7
DL
246 help
247 Support for the LPC32XX clocksource.
050dd322 248
84583983 249config CLKSRC_PISTACHIO
dfdb1652 250 bool "Clocksource for Pistachio SoC" if COMPILE_TEST
863ee050 251 depends on HAS_IOMEM
84583983 252 select CLKSRC_OF
dfdb1652
DL
253 help
254 Enables the clocksource for the Pistachio SoC.
84583983 255
fe851f56
FB
256config CLKSRC_TI_32K
257 bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
dfedaf10 258 depends on GENERIC_SCHED_CLOCK
fe851f56
FB
259 select CLKSRC_OF if OF
260 help
261 This option enables support for Texas Instruments 32.768 Hz clocksource
262 available on many OMAP-like platforms.
263
a5322457
NC
264config CLKSRC_NPS
265 bool "NPS400 clocksource driver" if COMPILE_TEST
266 depends on !PHYS_ADDR_T_64BIT
267 select CLKSRC_MMIO
268 select CLKSRC_OF if OF
269 help
270 NPS400 clocksource support.
271 Got 64 bit counter with update rate up to 1000MHz.
272 This counter is accessed via couple of 32 bit memory mapped registers.
273
e37e4593 274config CLKSRC_STM32
1cb6c215
PG
275 bool "Clocksource for STM32 SoCs" if !ARCH_STM32
276 depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
e37e4593
MC
277 select CLKSRC_MMIO
278
0302637f
VM
279config CLKSRC_MPS2
280 bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
281 depends on GENERIC_SCHED_CLOCK
282 select CLKSRC_MMIO
283 select CLKSRC_OF
284
8a4da6e3
MR
285config ARM_ARCH_TIMER
286 bool
0583fe47 287 select CLKSRC_OF if OF
ae281cbd 288 select CLKSRC_ACPI if ACPI
a2c5d4ed 289
037f6377 290config ARM_ARCH_TIMER_EVTSTREAM
46fd5c6b 291 bool "Enable ARM architected timer event stream generation by default"
037f6377 292 default y if ARM_ARCH_TIMER
77f7ce9a 293 depends on ARM_ARCH_TIMER
037f6377 294 help
46fd5c6b
WD
295 This option enables support by default for event stream generation
296 based on the ARM architected timer. It is used for waking up CPUs
297 executing the wfe instruction at a frequency represented as a
298 power-of-2 divisor of the clock rate. The behaviour can also be
299 overridden on the command line using the
300 clocksource.arm_arch_timer.evtstream parameter.
037f6377
WD
301 The main use of the event stream is wfe-based timeouts of userspace
302 locking implementations. It might also be useful for imposing timeout
303 on wfe to safeguard against any programming errors in case an expected
304 event is not generated.
305 This must be disabled for hardware validation purposes to detect any
306 hardware anomalies of missing events.
307
f6dc1576
SW
308config FSL_ERRATUM_A008585
309 bool "Workaround for Freescale/NXP Erratum A-008585"
310 default y
311 depends on ARM_ARCH_TIMER && ARM64
312 help
313 This option enables a workaround for Freescale/NXP Erratum
314 A-008585 ("ARM generic timer may contain an erroneous
315 value"). The workaround will only be active if the
316 fsl,erratum-a008585 property is found in the timer node.
317
c1b40e44 318config ARM_GLOBAL_TIMER
67a87a43 319 bool "Support for the ARM global timer" if COMPILE_TEST
c1b40e44 320 select CLKSRC_OF if OF
67a87a43 321 depends on ARM
c1b40e44
SM
322 help
323 This options enables support for the ARM global timer unit
324
0b7402dc
SH
325config ARM_TIMER_SP804
326 bool "Support for Dual Timer SP804 module"
002af195 327 depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
0b7402dc
SH
328 select CLKSRC_MMIO
329 select CLKSRC_OF if OF
330
c1b40e44
SM
331config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
332 bool
333 depends on ARM_GLOBAL_TIMER
334 default y
335 help
336 Use ARM global timer clock source as sched_clock
337
4958ebb3 338config ARMV7M_SYSTICK
e2146d86 339 bool "Support for the ARMv7M system time" if COMPILE_TEST
4958ebb3
MC
340 select CLKSRC_OF if OF
341 select CLKSRC_MMIO
342 help
343 This options enables support for the ARMv7M system timer unit
344
b052ff30
MR
345config ATMEL_PIT
346 select CLKSRC_OF if OF
347 def_bool SOC_AT91SAM9 || SOC_SAMA5
348
b53cdd03 349config ATMEL_ST
b988d3f0
DL
350 bool "Atmel ST timer support" if COMPILE_TEST
351 depends on GENERIC_CLOCKEVENTS
b53cdd03 352 select CLKSRC_OF
7ab7ef74 353 select MFD_SYSCON
b988d3f0
DL
354 help
355 Support for the Atmel ST timer.
b53cdd03 356
a2c5d4ed
JH
357config CLKSRC_METAG_GENERIC
358 def_bool y if METAG
359 help
360 This option enables support for the Meta per-thread timers.
6938d75a
TA
361
362config CLKSRC_EXYNOS_MCT
39366ef4 363 bool "Exynos multi core timer driver" if COMPILE_TEST
f1a4c1f3 364 depends on ARM || ARM64
6938d75a
TA
365 help
366 Support for Multi Core Timer controller on Exynos SoCs.
241a9871 367
f1189989 368config CLKSRC_SAMSUNG_PWM
de37b0b5 369 bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
0901f184 370 depends on GENERIC_CLOCKEVENTS
d7023e62 371 depends on HAS_IOMEM
f1189989
TF
372 help
373 This is a new clocksource driver for the PWM timer found in
374 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
375 for all devicetree enabled platforms. This driver will be
376 needed only on systems that do not have the Exynos MCT available.
c1967249 377
2529c3a3 378config FSL_FTM_TIMER
ef49336b 379 bool "Freescale FlexTimer Module driver" if COMPILE_TEST
0901f184 380 depends on GENERIC_CLOCKEVENTS
d7023e62 381 depends on HAS_IOMEM
03724ac3 382 select CLKSRC_MMIO
2529c3a3
XL
383 help
384 Support for Freescale FlexTimer Module (FTM) timer.
385
c1967249
JL
386config VF_PIT_TIMER
387 bool
2be6d9bf 388 select CLKSRC_MMIO
c1967249
JL
389 help
390 Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
fd3f1270 391
89355274
NA
392config OXNAS_RPS_TIMER
393 bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
394 depends on GENERIC_CLOCKEVENTS
395 select CLKSRC_OF
396 select CLKSRC_MMIO
397 help
398 This enables support for the Oxford Semiconductor OXNAS RPS timers.
399
fd3f1270
MD
400config SYS_SUPPORTS_SH_CMT
401 bool
402
ecb3530d 403config MTK_TIMER
fbca9eab 404 bool "Mediatek timer driver" if COMPILE_TEST
863ee050 405 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
ecb3530d
MB
406 select CLKSRC_OF
407 select CLKSRC_MMIO
fbca9eab
DL
408 help
409 Support for Mediatek timer driver.
ecb3530d 410
fd3f1270
MD
411config SYS_SUPPORTS_SH_MTU2
412 bool
413
414config SYS_SUPPORTS_SH_TMU
415 bool
416
417config SYS_SUPPORTS_EM_STI
418 bool
419
9995f4f1
RF
420config CLKSRC_JCORE_PIT
421 bool "J-Core PIT timer driver" if COMPILE_TEST
422 depends on OF
423 depends on GENERIC_CLOCKEVENTS
424 depends on HAS_IOMEM
425 select CLKSRC_MMIO
426 help
427 This enables build of clocksource and clockevent driver for
428 the integrated PIT in the J-Core synthesizable, open source SoC.
429
fd3f1270
MD
430config SH_TIMER_CMT
431 bool "Renesas CMT timer driver" if COMPILE_TEST
87291a92 432 depends on GENERIC_CLOCKEVENTS
11bc26fe 433 depends on HAS_IOMEM
fd3f1270
MD
434 default SYS_SUPPORTS_SH_CMT
435 help
436 This enables build of a clocksource and clockevent driver for
437 the Compare Match Timer (CMT) hardware available in 16/32/48-bit
438 variants on a wide range of Mobile and Automotive SoCs from Renesas.
439
440config SH_TIMER_MTU2
441 bool "Renesas MTU2 timer driver" if COMPILE_TEST
87291a92 442 depends on GENERIC_CLOCKEVENTS
11bc26fe 443 depends on HAS_IOMEM
fd3f1270
MD
444 default SYS_SUPPORTS_SH_MTU2
445 help
446 This enables build of a clockevent driver for the Multi-Function
7e139187 447 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
fd3f1270
MD
448 This hardware comes with 16 bit-timer registers.
449
450config SH_TIMER_TMU
451 bool "Renesas TMU timer driver" if COMPILE_TEST
87291a92 452 depends on GENERIC_CLOCKEVENTS
11bc26fe 453 depends on HAS_IOMEM
fd3f1270
MD
454 default SYS_SUPPORTS_SH_TMU
455 help
456 This enables build of a clocksource and clockevent driver for
457 the 32-bit Timer Unit (TMU) hardware available on a wide range
458 SoCs from Renesas.
459
460config EM_TIMER_STI
461 bool "Renesas STI timer driver" if COMPILE_TEST
40c96312 462 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
fd3f1270
MD
463 default SYS_SUPPORTS_EM_STI
464 help
465 This enables build of a clocksource and clockevent driver for
466 the 48-bit System Timer (STI) hardware available on a SoCs
467 such as EMEV2 from former NEC Electronics.
dfc25e45 468
3f8e8cee 469config CLKSRC_QCOM
3dc0e9f6
DL
470 bool "Qualcomm MSM timer" if COMPILE_TEST
471 depends on ARM
472 select CLKSRC_OF
473 help
474 This enables the clocksource and the per CPU clockevent driver for the
475 Qualcomm SoCs.
220e2a8d
PM
476
477config CLKSRC_VERSATILE
5cc87a4d
DL
478 bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
479 depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
220e2a8d
PM
480 select CLKSRC_OF
481 default y if MFD_VEXPRESS_SYSREG
482 help
483 This option enables clock source based on free running
484 counter available in the "System Registers" block of
485 ARM Versatile, RealView and Versatile Express reference
486 platforms.
58394271 487
fa5635a2
AB
488config CLKSRC_MIPS_GIC
489 bool
490 depends on MIPS_GIC
e12aa828 491 select CLKSRC_OF
fa5635a2 492
ccd63ce4 493config CLKSRC_TANGO_XTAL
5a7351f0
DL
494 bool "Clocksource for Tango SoC" if COMPILE_TEST
495 depends on ARM
ccd63ce4 496 select CLKSRC_OF
0881841f 497 select CLKSRC_MMIO
5a7351f0
DL
498 help
499 This enables the clocksource for Tango SoC
ccd63ce4 500
e074ff86 501config CLKSRC_PXA
5ae996cb
DL
502 bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
503 depends on GENERIC_CLOCKEVENTS
d7023e62 504 depends on HAS_IOMEM
5ae996cb 505 select CLKSRC_MMIO
e074ff86
DES
506 help
507 This enables OST0 support available on PXA and SA-11x0
508 platforms.
618b902d 509
97a23beb 510config H8300_TMR8
46e7c3c6 511 bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
863ee050 512 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
46e7c3c6
DL
513 help
514 This enables the 8 bits timer for the H8300 platform.
97a23beb 515
618b902d 516config H8300_TMR16
46e7c3c6 517 bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
863ee050 518 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
46e7c3c6
DL
519 help
520 This enables the 16 bits timer for the H8300 platform with the
521 H83069 cpu.
618b902d
YS
522
523config H8300_TPU
46e7c3c6 524 bool "Clocksource for the H8300 platform" if COMPILE_TEST
863ee050 525 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
46e7c3c6
DL
526 help
527 This enables the clocksource for the H8300 platform with the
528 H8S2678 cpu.
618b902d 529
bea5af41
SG
530config CLKSRC_IMX_GPT
531 bool "Clocksource using i.MX GPT" if COMPILE_TEST
532 depends on ARM && CLKDEV_LOOKUP
533 select CLKSRC_MMIO
534
70bef01c 535config CLKSRC_ST_LPC
baacaf83 536 bool "Low power clocksource found in the LPC" if COMPILE_TEST
70bef01c 537 select CLKSRC_OF if OF
863ee050 538 depends on HAS_IOMEM
2be6d9bf 539 select CLKSRC_MMIO
70bef01c
LJ
540 help
541 Enable this option to use the Low Power controller timer
542 as clocksource.
543
58394271 544endmenu