Kconfig 16.4 KB
Newer Older
J
Jean Delvare 已提交
1
menu "Clock Source drivers"
2
	depends on !ARCH_USES_GETTIMEOFFSET
J
Jean Delvare 已提交
3

4
config TIMER_OF
5
	bool
6
	depends on GENERIC_CLOCKEVENTS
7
	select TIMER_PROBE
8

9
config TIMER_ACPI
10
	bool
11
	select TIMER_PROBE
12

13
config TIMER_PROBE
14
	bool
15

16 17
config CLKSRC_I8253
	bool
18

19 20 21
config CLKEVT_I8253
	bool

22 23 24 25
config I8253_LOCK
	bool

config CLKBLD_I8253
26
	def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
27

28 29
config CLKSRC_MMIO
	bool
30

31 32 33 34 35 36 37
config BCM2835_TIMER
	bool "BCM2835 timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables the support for the BCM2835 timer driver.

38 39 40 41 42 43 44
config BCM_KONA_TIMER
	bool "BCM mobile timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables the support for the BCM Kona mobile timer driver.

45
config DIGICOLOR_TIMER
46
	bool "Digicolor timer driver" if COMPILE_TEST
47
	depends on GENERIC_CLOCKEVENTS
48
	select CLKSRC_MMIO
49
	depends on HAS_IOMEM
50 51
	help
	  Enables the support for the digicolor timer driver.
52

53
config DW_APB_TIMER
54
	bool "DW APB timer driver" if COMPILE_TEST
55
	depends on GENERIC_CLOCKEVENTS
56 57
	help
	  Enables the support for the dw_apb timer.
58

59 60
config DW_APB_TIMER_OF
	bool
61
	select DW_APB_TIMER
62
	select TIMER_OF
63

64 65
config FTTMR010_TIMER
	bool "Faraday Technology timer driver" if COMPILE_TEST
66 67 68
	depends on GENERIC_CLOCKEVENTS
	depends on HAS_IOMEM
	select CLKSRC_MMIO
69
	select TIMER_OF
70 71
	select MFD_SYSCON
	help
72 73
	  Enables support for the Faraday Technology timer block
	  FTTMR010.
74

75
config ROCKCHIP_TIMER
76 77
	bool "Rockchip timer driver" if COMPILE_TEST
	depends on ARM || ARM64
78
	select TIMER_OF
79
	select CLKSRC_MMIO
80 81
	help
	  Enables the support for the rockchip timer driver.
82

83
config ARMADA_370_XP_TIMER
84 85
	bool "Armada 370 and XP timer driver" if COMPILE_TEST
	depends on ARM
86
	select TIMER_OF
87
	select CLKSRC_MMIO
88 89
	help
	  Enables the support for the Armada 370 and XP timer driver.
90

91
config MESON6_TIMER
92
	bool "Meson6 timer driver" if COMPILE_TEST
93
	depends on GENERIC_CLOCKEVENTS
94
	select CLKSRC_MMIO
95 96
	help
	  Enables the support for the Meson6 timer driver.
97

98
config ORION_TIMER
99 100
	bool "Orion timer driver" if COMPILE_TEST
	depends on ARM
101
	select TIMER_OF
102
	select CLKSRC_MMIO
103 104
	help
	  Enables the support for the Orion timer driver
105

A
Andreas Färber 已提交
106 107 108 109 110 111 112
config OWL_TIMER
	bool "Owl timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables the support for the Actions Semi Owl timer driver.

113
config SUN4I_TIMER
114
	bool "Sun4i timer driver" if COMPILE_TEST
115
	depends on GENERIC_CLOCKEVENTS
116
	depends on HAS_IOMEM
117
	select CLKSRC_MMIO
118
	select TIMER_OF
119 120
	help
	  Enables support for the Sun4i timer.
121

122
config SUN5I_HSTIMER
123
	bool "Sun5i timer driver" if COMPILE_TEST
124
	select CLKSRC_MMIO
125 126 127
	depends on COMMON_CLK
	help
	  Enables support the Sun5i timer.
128

129
config TEGRA_TIMER
130
	bool "Tegra timer driver" if COMPILE_TEST
131
	select CLKSRC_MMIO
132 133 134
	depends on ARM
	help
	  Enables support for the Tegra driver.
135

136
config VT8500_TIMER
137
	bool "VT8500 timer driver" if COMPILE_TEST
138
	depends on GENERIC_CLOCKEVENTS
139
	depends on HAS_IOMEM
140 141
	help
	  Enables support for the VT8500 driver.
142

143
config CADENCE_TTC_TIMER
144 145 146 147
	bool "Cadence TTC timer driver" if COMPILE_TEST
	depends on COMMON_CLK
	help
	  Enables support for the cadence ttc driver.
148

149
config ASM9260_TIMER
150
	bool "ASM9260 timer driver" if COMPILE_TEST
151
	depends on GENERIC_CLOCKEVENTS
152
	select CLKSRC_MMIO
153
	select TIMER_OF
154 155
	help
	  Enables support for the ASM9260 timer.
156

157
config CLKSRC_NOMADIK_MTU
158 159
	bool "Nomakdik clocksource driver" if COMPILE_TEST
	depends on ARM
160 161 162 163 164 165 166 167 168 169 170 171
	select CLKSRC_MMIO
	help
	  Support for Multi Timer Unit. MTU provides access
	  to multiple interrupt generating programmable
	  32-bit free running decrementing counters.

config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
	bool
	depends on CLKSRC_NOMADIK_MTU
	help
	  Use the Multi Timer Unit as the sched_clock.

172
config CLKSRC_DBX500_PRCMU
173
	bool "Clocksource PRCMU Timer" if COMPILE_TEST
174
	depends on GENERIC_CLOCKEVENTS
175
	depends on HAS_IOMEM
176 177 178
	help
	  Use the always on PRCMU Timer as clocksource

179 180 181 182 183 184 185
config CLPS711X_TIMER
	bool "Cirrus logic timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables support for the Cirrus Logic PS711 timer.

186 187 188 189 190 191 192
config ATLAS7_TIMER
	bool "Atlas7 timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables support for the Atlas7 timer.

193 194 195 196 197 198 199 200
config MXS_TIMER
	bool "Mxs timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	select STMP_DEVICE
	help
	  Enables support for the Mxs timer.

201 202 203 204 205 206 207
config PRIMA2_TIMER
	bool "Prima2 timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables support for the Prima2 timer.

208 209 210 211 212 213 214 215
config U300_TIMER
	bool "U300 timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	depends on ARM
	select CLKSRC_MMIO
	help
	  Enables support for the U300 timer.

216 217 218 219 220 221 222
config NSPIRE_TIMER
	bool "NSpire timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables support for the Nspire timer.

223 224 225 226 227 228 229 230
config KEYSTONE_TIMER
	bool "Keystone timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	depends on ARM || ARM64
	select CLKSRC_MMIO
	help
	  Enables support for the Keystone timer.

231 232 233 234 235 236 237
config INTEGRATOR_AP_TIMER
	bool "Integrator-ap timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables support for the Integrator-ap timer.

238 239
config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
	bool "Clocksource PRCMU Timer sched_clock"
240
	depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
241 242 243
	default y
	help
	  Use the always on PRCMU Timer as sched_clock
M
Marc Zyngier 已提交
244

245 246 247
config CLKSRC_EFM32
	bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
	depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
248
	select CLKSRC_MMIO
249 250 251 252 253
	default ARCH_EFM32
	help
	  Support to use the timers of EFM32 SoCs as clock source and clock
	  event device.

254
config CLKSRC_LPC32XX
255
	bool "Clocksource for LPC32XX" if COMPILE_TEST
256
	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
257
	depends on ARM
258
	select CLKSRC_MMIO
259
	select TIMER_OF
260 261
	help
	  Support for the LPC32XX clocksource.
262

263
config CLKSRC_PISTACHIO
264
	bool "Clocksource for Pistachio SoC" if COMPILE_TEST
265
	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
266
	select TIMER_OF
267 268
	help
	  Enables the clocksource for the Pistachio SoC.
269

270 271
config CLKSRC_TI_32K
	bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
272
	depends on GENERIC_SCHED_CLOCK
273
	select TIMER_OF if OF
274 275 276 277
	help
	  This option enables support for Texas Instruments 32.768 Hz clocksource
	  available on many OMAP-like platforms.

278 279 280 281
config CLKSRC_NPS
	bool "NPS400 clocksource driver" if COMPILE_TEST
	depends on !PHYS_ADDR_T_64BIT
	select CLKSRC_MMIO
282
	select TIMER_OF if OF
283 284 285 286 287
	help
	  NPS400 clocksource support.
	  Got 64 bit counter with update rate up to 1000MHz.
	  This counter is accessed via couple of 32 bit memory mapped registers.

288
config CLKSRC_STM32
289 290
	bool "Clocksource for STM32 SoCs" if !ARCH_STM32
	depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
291 292
	select CLKSRC_MMIO

293 294 295 296
config CLKSRC_MPS2
	bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
	depends on GENERIC_SCHED_CLOCK
	select CLKSRC_MMIO
297
	select TIMER_OF
298

299 300 301
config ARC_TIMERS
	bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
302
	select TIMER_OF
303 304 305 306 307 308 309 310 311
	help
	  These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
	  (ARC700 as well as ARC HS38).
	  TIMER0 serves as clockevent while TIMER1 provides clocksource

config ARC_TIMERS_64BIT
	bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	depends on ARC_TIMERS
312
	select TIMER_OF
313 314 315 316 317 318
	help
	  This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP)
	  RTC is implemented inside the core, while GFRC sits outside the core in
	  ARConnect IP block. Driver automatically picks one of them for clocksource
	  as appropriate.

319 320
config ARM_ARCH_TIMER
	bool
321
	select TIMER_OF if OF
322
	select TIMER_ACPI if ACPI
J
James Hogan 已提交
323

324
config ARM_ARCH_TIMER_EVTSTREAM
325
	bool "Enable ARM architected timer event stream generation by default"
326
	default y if ARM_ARCH_TIMER
327
	depends on ARM_ARCH_TIMER
328
	help
329 330 331 332 333 334
	  This option enables support by default for event stream generation
	  based on the ARM architected timer. It is used for waking up CPUs
	  executing the wfe instruction at a frequency represented as a
	  power-of-2 divisor of the clock rate. The behaviour can also be
	  overridden on the command line using the
	  clocksource.arm_arch_timer.evtstream parameter.
335 336 337 338 339 340 341
	  The main use of the event stream is wfe-based timeouts of userspace
	  locking implementations. It might also be useful for imposing timeout
	  on wfe to safeguard against any programming errors in case an expected
	  event is not generated.
	  This must be disabled for hardware validation purposes to detect any
	  hardware anomalies of missing events.

342 343 344
config ARM_ARCH_TIMER_OOL_WORKAROUND
	bool

345 346 347 348
config FSL_ERRATUM_A008585
	bool "Workaround for Freescale/NXP Erratum A-008585"
	default y
	depends on ARM_ARCH_TIMER && ARM64
349
	select ARM_ARCH_TIMER_OOL_WORKAROUND
350 351 352 353 354 355
	help
	  This option enables a workaround for Freescale/NXP Erratum
	  A-008585 ("ARM generic timer may contain an erroneous
	  value").  The workaround will only be active if the
	  fsl,erratum-a008585 property is found in the timer node.

356 357 358 359 360 361 362 363 364 365
config HISILICON_ERRATUM_161010101
	bool "Workaround for Hisilicon Erratum 161010101"
	default y
	select ARM_ARCH_TIMER_OOL_WORKAROUND
	depends on ARM_ARCH_TIMER && ARM64
	help
	  This option enables a workaround for Hisilicon Erratum
	  161010101. The workaround will be active if the hisilicon,erratum-161010101
	  property is found in the timer node.

366 367 368 369 370 371 372 373 374 375 376
config ARM64_ERRATUM_858921
	bool "Workaround for Cortex-A73 erratum 858921"
	default y
	select ARM_ARCH_TIMER_OOL_WORKAROUND
	depends on ARM_ARCH_TIMER && ARM64
	help
	  This option enables a workaround applicable to Cortex-A73
	  (all versions), whose counter may return incorrect values.
	  The workaround will be dynamically enabled when an affected
	  core is detected.

377
config ARM_GLOBAL_TIMER
378
	bool "Support for the ARM global timer" if COMPILE_TEST
379
	select TIMER_OF if OF
380
	depends on ARM
381 382 383
	help
	  This options enables support for the ARM global timer unit

384 385
config ARM_TIMER_SP804
	bool "Support for Dual Timer SP804 module"
386
	depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
387
	select CLKSRC_MMIO
388
	select TIMER_OF if OF
389

390 391 392 393 394 395 396
config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
	bool
	depends on ARM_GLOBAL_TIMER
	default y
	help
	 Use ARM global timer clock source as sched_clock

397
config ARMV7M_SYSTICK
398
	bool "Support for the ARMv7M system time" if COMPILE_TEST
399
	select TIMER_OF if OF
400 401 402 403
	select CLKSRC_MMIO
	help
	  This options enables support for the ARMv7M system timer unit

404
config ATMEL_PIT
405
	select TIMER_OF if OF
406 407
	def_bool SOC_AT91SAM9 || SOC_SAMA5

408
config ATMEL_ST
409 410
	bool "Atmel ST timer support" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
411
	select TIMER_OF
412
	select MFD_SYSCON
413 414
	help
	  Support for the Atmel ST timer.
415

J
James Hogan 已提交
416 417 418 419
config CLKSRC_METAG_GENERIC
	def_bool y if METAG
	help
	  This option enables support for the Meta per-thread timers.
420 421

config CLKSRC_EXYNOS_MCT
422
	bool "Exynos multi core timer driver" if COMPILE_TEST
423
	depends on ARM || ARM64
424 425
	help
	  Support for Multi Core Timer controller on Exynos SoCs.
426

427
config CLKSRC_SAMSUNG_PWM
428
	bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
429
	depends on GENERIC_CLOCKEVENTS
430
	depends on HAS_IOMEM
431 432 433 434 435
	help
	  This is a new clocksource driver for the PWM timer found in
	  Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
	  for all devicetree enabled platforms. This driver will be
	  needed only on systems that do not have the Exynos MCT available.
436

437
config FSL_FTM_TIMER
438
	bool "Freescale FlexTimer Module driver" if COMPILE_TEST
439
	depends on GENERIC_CLOCKEVENTS
440
	depends on HAS_IOMEM
441
	select CLKSRC_MMIO
442 443 444
	help
	  Support for Freescale FlexTimer Module (FTM) timer.

445 446
config VF_PIT_TIMER
	bool
447
	select CLKSRC_MMIO
448 449
	help
	  Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
450

451 452 453
config OXNAS_RPS_TIMER
	bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
454
	select TIMER_OF
455 456 457 458
	select CLKSRC_MMIO
	help
	  This enables support for the Oxford Semiconductor OXNAS RPS timers.

459 460 461
config SYS_SUPPORTS_SH_CMT
        bool

462
config MTK_TIMER
463
	bool "Mediatek timer driver" if COMPILE_TEST
464
	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
465
	select TIMER_OF
466
	select CLKSRC_MMIO
467 468
	help
	  Support for Mediatek timer driver.
469

470 471 472 473 474 475 476 477 478
config SYS_SUPPORTS_SH_MTU2
        bool

config SYS_SUPPORTS_SH_TMU
        bool

config SYS_SUPPORTS_EM_STI
        bool

479 480 481 482 483 484 485 486 487 488
config CLKSRC_JCORE_PIT
	bool "J-Core PIT timer driver" if COMPILE_TEST
	depends on OF
	depends on GENERIC_CLOCKEVENTS
	depends on HAS_IOMEM
	select CLKSRC_MMIO
	help
	  This enables build of clocksource and clockevent driver for
	  the integrated PIT in the J-Core synthesizable, open source SoC.

489 490
config SH_TIMER_CMT
	bool "Renesas CMT timer driver" if COMPILE_TEST
491
	depends on GENERIC_CLOCKEVENTS
492
	depends on HAS_IOMEM
493 494 495 496 497 498 499 500
	default SYS_SUPPORTS_SH_CMT
	help
	  This enables build of a clocksource and clockevent driver for
	  the Compare Match Timer (CMT) hardware available in 16/32/48-bit
	  variants on a wide range of Mobile and Automotive SoCs from Renesas.

config SH_TIMER_MTU2
	bool "Renesas MTU2 timer driver" if COMPILE_TEST
501
	depends on GENERIC_CLOCKEVENTS
502
	depends on HAS_IOMEM
503 504 505
	default SYS_SUPPORTS_SH_MTU2
	help
	  This enables build of a clockevent driver for the Multi-Function
506
	  Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
507 508
	  This hardware comes with 16 bit-timer registers.

509 510 511 512 513 514 515
config RENESAS_OSTM
	bool "Renesas OSTM timer driver" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enables the support for the Renesas OSTM.

516 517
config SH_TIMER_TMU
	bool "Renesas TMU timer driver" if COMPILE_TEST
518
	depends on GENERIC_CLOCKEVENTS
519
	depends on HAS_IOMEM
520 521 522 523 524 525 526 527
	default SYS_SUPPORTS_SH_TMU
	help
	  This enables build of a clocksource and clockevent driver for
	  the 32-bit Timer Unit (TMU) hardware available on a wide range
	  SoCs from Renesas.

config EM_TIMER_STI
	bool "Renesas STI timer driver" if COMPILE_TEST
528
	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
529 530 531 532 533
	default SYS_SUPPORTS_EM_STI
	help
	  This enables build of a clocksource and clockevent driver for
	  the 48-bit System Timer (STI) hardware available on a SoCs
	  such as EMEV2 from former NEC Electronics.
534

535
config CLKSRC_QCOM
536 537
	bool "Qualcomm MSM timer" if COMPILE_TEST
	depends on ARM
538
	select TIMER_OF
539 540 541
	help
	  This enables the clocksource and the per CPU clockevent driver for the
	  Qualcomm SoCs.
542 543

config CLKSRC_VERSATILE
544 545
	bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
	depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
546
	select TIMER_OF
547 548 549 550 551 552
	default y if MFD_VEXPRESS_SYSREG
	help
	  This option enables clock source based on free running
	  counter available in the "System Registers" block of
	  ARM Versatile, RealView and Versatile Express reference
	  platforms.
J
Jean Delvare 已提交
553

554 555 556
config CLKSRC_MIPS_GIC
	bool
	depends on MIPS_GIC
557
	select TIMER_OF
558

559
config CLKSRC_TANGO_XTAL
560 561
	bool "Clocksource for Tango SoC" if COMPILE_TEST
	depends on ARM
562
	select TIMER_OF
563
	select CLKSRC_MMIO
564 565
	help
	  This enables the clocksource for Tango SoC
566

567
config CLKSRC_PXA
568 569
	bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
	depends on GENERIC_CLOCKEVENTS
570
	depends on HAS_IOMEM
571
	select CLKSRC_MMIO
572 573 574
	help
	  This enables OST0 support available on PXA and SA-11x0
	  platforms.
Y
Yoshinori Sato 已提交
575

576
config H8300_TMR8
577
        bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
578
        depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
579 580
	help
	  This enables the 8 bits timer for the H8300 platform.
581

Y
Yoshinori Sato 已提交
582
config H8300_TMR16
583
        bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
584
        depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
585 586 587
	help
	  This enables the 16 bits timer for the H8300 platform with the
	  H83069 cpu.
Y
Yoshinori Sato 已提交
588 589

config H8300_TPU
590
        bool "Clocksource for the H8300 platform" if COMPILE_TEST
591
        depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
592 593 594
	help
	  This enables the clocksource for the H8300 platform with the
	  H8S2678 cpu.
Y
Yoshinori Sato 已提交
595

596 597 598 599 600
config CLKSRC_IMX_GPT
	bool "Clocksource using i.MX GPT" if COMPILE_TEST
	depends on ARM && CLKDEV_LOOKUP
	select CLKSRC_MMIO

601 602 603 604 605 606 607 608
config CLKSRC_IMX_TPM
	bool "Clocksource using i.MX TPM" if COMPILE_TEST
	depends on ARM && CLKDEV_LOOKUP && GENERIC_CLOCKEVENTS
	select CLKSRC_MMIO
	help
	  Enable this option to use IMX Timer/PWM Module (TPM) timer as
	  clocksource.

609
config CLKSRC_ST_LPC
610
	bool "Low power clocksource found in the LPC" if COMPILE_TEST
611
	select TIMER_OF if OF
612
	depends on HAS_IOMEM
613
	select CLKSRC_MMIO
614 615 616 617
	help
	  Enable this option to use the Low Power controller timer
	  as clocksource.

J
Jean Delvare 已提交
618
endmenu