1# SPDX-License-Identifier: GPL-2.0-only 2menu "Clock Source drivers" 3 depends on GENERIC_CLOCKEVENTS 4 5config TIMER_OF 6 bool 7 select TIMER_PROBE 8 9config TIMER_ACPI 10 bool 11 select TIMER_PROBE 12 13config TIMER_PROBE 14 bool 15 16config CLKSRC_I8253 17 bool 18 19config CLKEVT_I8253 20 bool 21 22config I8253_LOCK 23 bool 24 25config OMAP_DM_SYSTIMER 26 bool 27 select TIMER_OF 28 29config CLKBLD_I8253 30 def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK 31 32config CLKSRC_MMIO 33 bool 34 35config BCM2835_TIMER 36 bool "BCM2835 timer driver" if COMPILE_TEST 37 select CLKSRC_MMIO 38 help 39 Enables the support for the BCM2835 timer driver. 40 41config BCM_KONA_TIMER 42 bool "BCM mobile timer driver" if COMPILE_TEST 43 select CLKSRC_MMIO 44 help 45 Enables the support for the BCM Kona mobile timer driver. 46 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 52config DIGICOLOR_TIMER 53 bool "Digicolor timer driver" if COMPILE_TEST 54 select CLKSRC_MMIO 55 depends on HAS_IOMEM 56 help 57 Enables the support for the digicolor timer driver. 58 59config OMAP_DM_TIMER 60 bool "OMAP dual-mode timer driver" if ARCH_K3 || COMPILE_TEST 61 default y if ARCH_K3 62 select TIMER_OF 63 help 64 Enables the support for the TI dual-mode timer driver. 65 66config DW_APB_TIMER 67 bool "DW APB timer driver" if COMPILE_TEST 68 help 69 Enables the support for the dw_apb timer. 70 71config DW_APB_TIMER_OF 72 bool 73 select DW_APB_TIMER 74 select TIMER_OF 75 76config FTTMR010_TIMER 77 bool "Faraday Technology timer driver" if COMPILE_TEST 78 depends on HAS_IOMEM 79 select CLKSRC_MMIO 80 select TIMER_OF 81 select MFD_SYSCON 82 help 83 Enables support for the Faraday Technology timer block 84 FTTMR010. 85 86config IXP4XX_TIMER 87 bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST 88 depends on HAS_IOMEM 89 select CLKSRC_MMIO 90 select TIMER_OF 91 help 92 Enables support for the Intel XScale IXP4xx SoC timer. 93 94config ROCKCHIP_TIMER 95 bool "Rockchip timer driver" if COMPILE_TEST 96 depends on ARM || ARM64 97 select TIMER_OF 98 select CLKSRC_MMIO 99 help 100 Enables the support for the Rockchip timer driver. 101 102config ARMADA_370_XP_TIMER 103 bool "Armada 370 and XP timer driver" if COMPILE_TEST 104 depends on ARM 105 select TIMER_OF 106 select CLKSRC_MMIO 107 help 108 Enables the support for the Armada 370 and XP timer driver. 109 110config MESON6_TIMER 111 bool "Meson6 timer driver" if COMPILE_TEST 112 select CLKSRC_MMIO 113 help 114 Enables the support for the Meson6 timer driver. 115 116config ORION_TIMER 117 bool "Orion timer driver" if COMPILE_TEST 118 depends on ARM 119 select TIMER_OF 120 select CLKSRC_MMIO 121 help 122 Enables the support for the Orion timer driver 123 124config OWL_TIMER 125 bool "Owl timer driver" if COMPILE_TEST 126 select CLKSRC_MMIO 127 help 128 Enables the support for the Actions Semi Owl timer driver. 129 130config RDA_TIMER 131 bool "RDA timer driver" if COMPILE_TEST 132 select CLKSRC_MMIO 133 select TIMER_OF 134 help 135 Enables the support for the RDA Micro timer driver. 136 137config SUN4I_TIMER 138 bool "Sun4i timer driver" if COMPILE_TEST 139 depends on HAS_IOMEM 140 select CLKSRC_MMIO 141 select TIMER_OF 142 help 143 Enables support for the Sun4i timer. 144 145config SUN5I_HSTIMER 146 bool "Sun5i timer driver" if COMPILE_TEST 147 select CLKSRC_MMIO 148 depends on COMMON_CLK 149 help 150 Enables support the Sun5i timer. 151 152config TEGRA_TIMER 153 bool "Tegra timer driver" if COMPILE_TEST 154 select CLKSRC_MMIO 155 select TIMER_OF 156 depends on ARCH_TEGRA || COMPILE_TEST 157 help 158 Enables support for the Tegra driver. 159 160config TEGRA186_TIMER 161 bool "NVIDIA Tegra186 timer driver" 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 168config VT8500_TIMER 169 bool "VT8500 timer driver" if COMPILE_TEST 170 depends on HAS_IOMEM 171 help 172 Enables support for the VT8500 driver. 173 174config NPCM7XX_TIMER 175 bool "NPCM7xx timer driver" if COMPILE_TEST 176 depends on HAS_IOMEM 177 select TIMER_OF 178 select CLKSRC_MMIO 179 help 180 Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture, 181 where TIMER0 serves as clockevent and TIMER1 serves as clocksource. 182 183config CADENCE_TTC_TIMER 184 bool "Cadence TTC timer driver" if COMPILE_TEST 185 depends on COMMON_CLK 186 help 187 Enables support for the Cadence TTC driver. 188 189config ASM9260_TIMER 190 bool "ASM9260 timer driver" if COMPILE_TEST 191 select CLKSRC_MMIO 192 select TIMER_OF 193 help 194 Enables support for the ASM9260 timer. 195 196config CLKSRC_NOMADIK_MTU 197 bool "Nomakdik clocksource driver" if COMPILE_TEST 198 depends on ARM 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 205config CLKSRC_DBX500_PRCMU 206 bool "Clocksource PRCMU Timer" if COMPILE_TEST 207 depends on HAS_IOMEM 208 help 209 Use the always on PRCMU Timer as clocksource. 210 211config CLPS711X_TIMER 212 bool "Cirrus Logic timer driver" if COMPILE_TEST 213 select CLKSRC_MMIO 214 help 215 Enables support for the Cirrus Logic PS711 timer. 216 217config MXS_TIMER 218 bool "MXS timer driver" if COMPILE_TEST 219 select CLKSRC_MMIO 220 select STMP_DEVICE 221 help 222 Enables support for the MXS timer. 223 224config NSPIRE_TIMER 225 bool "NSpire timer driver" if COMPILE_TEST 226 select CLKSRC_MMIO 227 help 228 Enables support for the Nspire timer. 229 230config KEYSTONE_TIMER 231 bool "Keystone timer driver" if COMPILE_TEST 232 depends on ARM || ARM64 233 select CLKSRC_MMIO 234 help 235 Enables support for the Keystone timer. 236 237config INTEGRATOR_AP_TIMER 238 bool "Integrator-AP timer driver" if COMPILE_TEST 239 select CLKSRC_MMIO 240 help 241 Enables support for the Integrator-AP timer. 242 243config CLKSRC_LPC32XX 244 bool "Clocksource for LPC32XX" if COMPILE_TEST 245 depends on HAS_IOMEM 246 depends on ARM 247 select CLKSRC_MMIO 248 select TIMER_OF 249 help 250 Support for the LPC32XX clocksource. 251 252config CLKSRC_PISTACHIO 253 bool "Clocksource for Pistachio SoC" 254 depends on HAS_IOMEM 255 depends on MIPS || COMPILE_TEST 256 select TIMER_OF 257 help 258 Enables the clocksource for the Pistachio SoC. 259 260config CLKSRC_TI_32K 261 bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST 262 depends on GENERIC_SCHED_CLOCK 263 select TIMER_OF if OF 264 help 265 This option enables support for Texas Instruments 32.768 Hz clocksource 266 available on many OMAP-like platforms. 267 268config CLKSRC_STM32 269 bool "Clocksource for STM32 SoCs" if !ARCH_STM32 270 depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST) 271 select CLKSRC_MMIO 272 select TIMER_OF 273 274config CLKSRC_STM32_LP 275 bool "Low power clocksource for STM32 SoCs" 276 depends on MFD_STM32_LPTIMER || COMPILE_TEST 277 278config CLKSRC_MPS2 279 bool "Clocksource for MPS2 SoCs" if COMPILE_TEST 280 depends on GENERIC_SCHED_CLOCK 281 select CLKSRC_MMIO 282 select TIMER_OF 283 284config ARC_TIMERS 285 bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST 286 depends on GENERIC_SCHED_CLOCK 287 select TIMER_OF 288 help 289 These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores 290 (ARC700 as well as ARC HS38). 291 TIMER0 serves as clockevent while TIMER1 provides clocksource. 292 293config ARC_TIMERS_64BIT 294 bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST 295 depends on ARC_TIMERS 296 select TIMER_OF 297 help 298 This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP). 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 303config ARM_ARCH_TIMER 304 bool 305 select TIMER_OF if OF 306 select TIMER_ACPI if ACPI 307 308config ARM_ARCH_TIMER_EVTSTREAM 309 bool "Enable ARM architected timer event stream generation by default" 310 default y if ARM_ARCH_TIMER 311 depends on ARM_ARCH_TIMER 312 help 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. 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 326config ARM_ARCH_TIMER_OOL_WORKAROUND 327 bool 328 329config FSL_ERRATUM_A008585 330 bool "Workaround for Freescale/NXP Erratum A-008585" 331 default y 332 depends on ARM_ARCH_TIMER && ARM64 333 select ARM_ARCH_TIMER_OOL_WORKAROUND 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 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 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 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 371config ARM_GLOBAL_TIMER 372 bool "Support for the ARM global timer" if COMPILE_TEST 373 select TIMER_OF if OF 374 depends on ARM 375 help 376 This option enables support for the ARM global timer unit. 377 378config ARM_GT_INITIAL_PRESCALER_VAL 379 int "ARM global timer initial prescaler value" 380 default 2 if ARCH_ZYNQ 381 default 1 382 depends on ARM_GLOBAL_TIMER 383 help 384 When the ARM global timer initializes, its current rate is declared 385 to the kernel and maintained forever. Should its parent clock 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 392config ARM_TIMER_SP804 393 bool "Support for Dual Timer SP804 module" 394 depends on ARM || ARM64 || COMPILE_TEST 395 depends on GENERIC_SCHED_CLOCK && HAVE_CLK 396 select CLKSRC_MMIO 397 select TIMER_OF if OF 398 399config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK 400 bool 401 depends on ARM_GLOBAL_TIMER 402 default y 403 help 404 Use ARM global timer clock source as sched_clock. 405 406config ARMV7M_SYSTICK 407 bool "Support for the ARMv7M system time" if COMPILE_TEST 408 select TIMER_OF if OF 409 select CLKSRC_MMIO 410 help 411 This option enables support for the ARMv7M system timer unit. 412 413config ATMEL_PIT 414 bool "Atmel PIT support" if COMPILE_TEST 415 depends on HAS_IOMEM 416 select TIMER_OF if OF 417 help 418 Support for the Periodic Interval Timer found on Atmel SoCs. 419 420config ATMEL_ST 421 bool "Atmel ST timer support" if COMPILE_TEST 422 depends on HAS_IOMEM 423 select TIMER_OF 424 select MFD_SYSCON 425 help 426 Support for the Atmel ST timer. 427 428config ATMEL_TCB_CLKSRC 429 bool "Atmel TC Block timer driver" if COMPILE_TEST 430 depends on ARM && HAS_IOMEM 431 select TIMER_OF if OF 432 help 433 Support for Timer Counter Blocks on Atmel SoCs. 434 435config CLKSRC_EXYNOS_MCT 436 bool "Exynos multi core timer driver" if COMPILE_TEST 437 depends on ARM || ARM64 438 depends on ARCH_ARTPEC || ARCH_EXYNOS || COMPILE_TEST 439 help 440 Support for Multi Core Timer controller on Exynos SoCs. 441 442config CLKSRC_SAMSUNG_PWM 443 bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST 444 depends on HAS_IOMEM 445 depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST 446 help 447 This is a new clocksource driver for the PWM timer found in 448 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver 449 for all devicetree enabled platforms. This driver will be 450 needed only on systems that do not have the Exynos MCT available. 451 452config FSL_FTM_TIMER 453 bool "Freescale FlexTimer Module driver" if COMPILE_TEST 454 depends on HAS_IOMEM 455 select CLKSRC_MMIO 456 help 457 Support for Freescale FlexTimer Module (FTM) timer. 458 459config VF_PIT_TIMER 460 bool 461 select CLKSRC_MMIO 462 help 463 Support for Periodic Interrupt Timer on Freescale Vybrid Family SoCs. 464 465config SYS_SUPPORTS_SH_CMT 466 bool 467 468config MTK_TIMER 469 bool "Mediatek timer driver" if COMPILE_TEST 470 depends on HAS_IOMEM 471 select TIMER_OF 472 select CLKSRC_MMIO 473 help 474 Support for Mediatek timer driver. 475 476config MTK_CPUX_TIMER 477 bool "MediaTek CPUX timer driver" if COMPILE_TEST 478 depends on HAS_IOMEM 479 default ARCH_MEDIATEK 480 select TIMER_OF 481 select CLKSRC_MMIO 482 help 483 Support for MediaTek CPUXGPT timer driver. 484 485config SPRD_TIMER 486 bool "Spreadtrum timer driver" if EXPERT 487 depends on HAS_IOMEM 488 depends on (ARCH_SPRD || COMPILE_TEST) 489 default ARCH_SPRD 490 select TIMER_OF 491 help 492 Enables support for the Spreadtrum timer driver. 493 494config SYS_SUPPORTS_SH_MTU2 495 bool 496 497config SYS_SUPPORTS_SH_TMU 498 bool 499 500config SYS_SUPPORTS_EM_STI 501 bool 502 503config CLKSRC_JCORE_PIT 504 bool "J-Core PIT timer driver" if COMPILE_TEST 505 depends on OF 506 depends on HAS_IOMEM 507 select CLKSRC_MMIO 508 help 509 This enables build of clocksource and clockevent driver for 510 the integrated PIT in the J-Core synthesizable, open source SoC. 511 512config SH_TIMER_CMT 513 bool "Renesas CMT timer driver" if COMPILE_TEST 514 depends on HAS_IOMEM 515 default SYS_SUPPORTS_SH_CMT 516 help 517 This enables build of a clocksource and clockevent driver for 518 the Compare Match Timer (CMT) hardware available in 16/32/48-bit 519 variants on a wide range of Mobile and Automotive SoCs from Renesas. 520 521config SH_TIMER_MTU2 522 bool "Renesas MTU2 timer driver" if COMPILE_TEST 523 depends on HAS_IOMEM 524 default SYS_SUPPORTS_SH_MTU2 525 help 526 This enables build of a clockevent driver for the Multi-Function 527 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas. 528 This hardware comes with 16-bit timer registers. 529 530config RENESAS_OSTM 531 bool "Renesas OSTM timer driver" 532 depends on ARCH_RENESAS || COMPILE_TEST 533 select CLKSRC_MMIO 534 select TIMER_OF 535 help 536 Enables the support for the Renesas OSTM. 537 538config SH_TIMER_TMU 539 bool "Renesas TMU timer driver" if COMPILE_TEST 540 depends on HAS_IOMEM 541 default SYS_SUPPORTS_SH_TMU 542 help 543 This enables build of a clocksource and clockevent driver for 544 the 32-bit Timer Unit (TMU) hardware available on a wide range 545 SoCs from Renesas. 546 547config EM_TIMER_STI 548 bool "Renesas STI timer driver" if COMPILE_TEST 549 depends on HAS_IOMEM 550 default SYS_SUPPORTS_EM_STI 551 help 552 This enables build of a clocksource and clockevent driver for 553 the 48-bit System Timer (STI) hardware available on a SoCs 554 such as EMEV2 from former NEC Electronics. 555 556config CLKSRC_QCOM 557 bool "Qualcomm MSM timer" if COMPILE_TEST 558 depends on ARM 559 select TIMER_OF 560 help 561 This enables the clocksource and the per CPU clockevent driver for the 562 Qualcomm SoCs. 563 564config CLKSRC_VERSATILE 565 bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST 566 depends on GENERIC_SCHED_CLOCK 567 select TIMER_OF 568 default y if (ARCH_VEXPRESS || ARCH_VERSATILE) && ARM 569 help 570 This option enables clock source based on free running 571 counter available in the "System Registers" block of 572 ARM Versatile and Versatile Express reference platforms. 573 574config CLKSRC_MIPS_GIC 575 bool 576 depends on MIPS_GIC 577 select CLOCKSOURCE_WATCHDOG 578 select TIMER_OF 579 580config CLKSRC_PXA 581 bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST 582 depends on HAS_IOMEM 583 select CLKSRC_MMIO 584 help 585 This enables OST0 support available on PXA and SA-11x0 586 platforms. 587 588config CLKSRC_IMX_GPT 589 bool "Clocksource using i.MX GPT" if COMPILE_TEST 590 depends on (ARM || ARM64) && HAVE_CLK 591 select CLKSRC_MMIO 592 593config CLKSRC_IMX_TPM 594 bool "Clocksource using i.MX TPM" if COMPILE_TEST 595 depends on (ARM || ARM64) && HAVE_CLK 596 select CLKSRC_MMIO 597 select TIMER_OF 598 help 599 Enable this option to use IMX Timer/PWM Module (TPM) timer as 600 clocksource. 601 602config TIMER_IMX_SYS_CTR 603 bool "i.MX system counter timer" if COMPILE_TEST 604 select TIMER_OF 605 help 606 Enable this option to use i.MX system counter timer as a 607 clockevent. 608 609config CLKSRC_LOONGSON1_PWM 610 bool "Clocksource using Loongson1 PWM" 611 depends on MACH_LOONGSON32 || COMPILE_TEST 612 select MIPS_EXTERNAL_TIMER 613 select TIMER_OF 614 help 615 Enable this option to use Loongson1 PWM timer as clocksource 616 instead of the performance counter. 617 618config CLKSRC_ST_LPC 619 bool "Low power clocksource found in the LPC" if COMPILE_TEST 620 select TIMER_OF if OF 621 depends on HAS_IOMEM 622 select CLKSRC_MMIO 623 help 624 Enable this option to use the Low Power controller timer 625 as clocksource. 626 627config GXP_TIMER 628 bool "GXP timer driver" if COMPILE_TEST && !ARCH_HPE 629 default ARCH_HPE 630 select TIMER_OF if OF 631 help 632 Provides a driver for the timer control found on HPE 633 GXP SOCs. This is required for all GXP SOCs. 634 635config RISCV_TIMER 636 bool "Timer for the RISC-V platform" if COMPILE_TEST 637 depends on GENERIC_SCHED_CLOCK && RISCV && RISCV_SBI 638 select TIMER_PROBE 639 select TIMER_OF 640 help 641 This enables the per-hart timer built into all RISC-V systems, which 642 is accessed via both the SBI and the rdcycle instruction. This is 643 required for all RISC-V systems. 644 645config CLINT_TIMER 646 bool "CLINT Timer for the RISC-V platform" if COMPILE_TEST 647 depends on GENERIC_SCHED_CLOCK && RISCV 648 select TIMER_PROBE 649 select TIMER_OF 650 help 651 This option enables the CLINT timer for RISC-V systems. The CLINT 652 driver is usually used for NoMMU RISC-V systems. 653 654config CSKY_MP_TIMER 655 bool "SMP Timer for the C-SKY platform" if COMPILE_TEST 656 depends on CSKY 657 select TIMER_OF 658 help 659 Say yes here to enable C-SKY SMP timer driver used for C-SKY SMP 660 system. 661 csky,mptimer is not only used in SMP system, it also could be used in 662 single core system. It's not a mmio reg and it uses mtcr/mfcr instruction. 663 664config GX6605S_TIMER 665 bool "Gx6605s SOC system timer driver" if COMPILE_TEST 666 depends on CSKY 667 select CLKSRC_MMIO 668 select TIMER_OF 669 help 670 This option enables support for gx6605s SOC's timer. 671 672config MILBEAUT_TIMER 673 bool "Milbeaut timer driver" if COMPILE_TEST 674 depends on OF 675 depends on ARM 676 select TIMER_OF 677 select CLKSRC_MMIO 678 help 679 Enables the support for Milbeaut timer driver. 680 681config MSC313E_TIMER 682 bool "MSC313E timer driver" if COMPILE_TEST 683 select TIMER_OF 684 select CLKSRC_MMIO 685 help 686 Enables support for the MStar MSC313E timer driver. 687 This provides access to multiple interrupt generating 688 programmable 32-bit free running incrementing counters. 689 690config INGENIC_TIMER 691 bool "Clocksource/timer using the TCU in Ingenic JZ SoCs" 692 default MACH_INGENIC 693 depends on MIPS || COMPILE_TEST 694 depends on COMMON_CLK 695 select MFD_SYSCON 696 select TIMER_OF 697 select IRQ_DOMAIN 698 help 699 Support for the timer/counter unit of the Ingenic JZ SoCs. 700 701config INGENIC_SYSOST 702 bool "Clocksource/timer using the SYSOST in Ingenic X SoCs" 703 depends on MIPS || COMPILE_TEST 704 depends on COMMON_CLK 705 select MFD_SYSCON 706 select TIMER_OF 707 select IRQ_DOMAIN 708 help 709 Support for the SYSOST of the Ingenic X Series SoCs. 710 711config INGENIC_OST 712 bool "Clocksource using the OST in Ingenic JZ SoCs" 713 depends on MIPS || COMPILE_TEST 714 depends on COMMON_CLK 715 select MFD_SYSCON 716 help 717 Support for the Operating System Timer of the Ingenic JZ SoCs. 718 719config MICROCHIP_PIT64B 720 bool "Microchip PIT64B support" 721 depends on OF && ARM 722 select TIMER_OF 723 help 724 This option enables Microchip PIT64B timer for Atmel 725 based system. It supports the oneshot, the periodic 726 modes and high resolution. It is used as a clocksource 727 and a clockevent. 728 729config GOLDFISH_TIMER 730 bool "Clocksource using goldfish-rtc" 731 depends on M68K || COMPILE_TEST 732 depends on RTC_DRV_GOLDFISH 733 help 734 Support for the timer/counter of goldfish-rtc 735 736endmenu 737