linux/drivers/clocksource/Kconfig
<<
>>
Prefs
   1menu "Clock Source drivers"
   2        depends on GENERIC_CLOCKEVENTS
   3
   4config TIMER_OF
   5        bool
   6        select TIMER_PROBE
   7
   8config TIMER_ACPI
   9        bool
  10        select TIMER_PROBE
  11
  12config TIMER_PROBE
  13        bool
  14
  15config CLKSRC_I8253
  16        bool
  17
  18config CLKEVT_I8253
  19        bool
  20
  21config I8253_LOCK
  22        bool
  23
  24config OMAP_DM_TIMER
  25        bool
  26
  27config CLKBLD_I8253
  28        def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
  29
  30config CLKSRC_MMIO
  31        bool
  32
  33config BCM2835_TIMER
  34        bool "BCM2835 timer driver" if COMPILE_TEST
  35        select CLKSRC_MMIO
  36        help
  37          Enables the support for the BCM2835 timer driver.
  38
  39config BCM_KONA_TIMER
  40        bool "BCM mobile timer driver" if COMPILE_TEST
  41        select CLKSRC_MMIO
  42        help
  43          Enables the support for the BCM Kona mobile timer driver.
  44
  45config DIGICOLOR_TIMER
  46        bool "Digicolor timer driver" if COMPILE_TEST
  47        select CLKSRC_MMIO
  48        depends on HAS_IOMEM
  49        help
  50          Enables the support for the digicolor timer driver.
  51
  52config DW_APB_TIMER
  53        bool "DW APB timer driver" if COMPILE_TEST
  54        help
  55          Enables the support for the dw_apb timer.
  56
  57config DW_APB_TIMER_OF
  58        bool
  59        select DW_APB_TIMER
  60        select TIMER_OF
  61
  62config FTTMR010_TIMER
  63        bool "Faraday Technology timer driver" if COMPILE_TEST
  64        depends on HAS_IOMEM
  65        select CLKSRC_MMIO
  66        select TIMER_OF
  67        select MFD_SYSCON
  68        help
  69          Enables support for the Faraday Technology timer block
  70          FTTMR010.
  71
  72config ROCKCHIP_TIMER
  73        bool "Rockchip timer driver" if COMPILE_TEST
  74        depends on ARM || ARM64
  75        select TIMER_OF
  76        select CLKSRC_MMIO
  77        help
  78          Enables the support for the rockchip timer driver.
  79
  80config ARMADA_370_XP_TIMER
  81        bool "Armada 370 and XP timer driver" if COMPILE_TEST
  82        depends on ARM
  83        select TIMER_OF
  84        select CLKSRC_MMIO
  85        help
  86          Enables the support for the Armada 370 and XP timer driver.
  87
  88config MESON6_TIMER
  89        bool "Meson6 timer driver" if COMPILE_TEST
  90        select CLKSRC_MMIO
  91        help
  92          Enables the support for the Meson6 timer driver.
  93
  94config ORION_TIMER
  95        bool "Orion timer driver" if COMPILE_TEST
  96        depends on ARM
  97        select TIMER_OF
  98        select CLKSRC_MMIO
  99        help
 100          Enables the support for the Orion timer driver
 101
 102config OWL_TIMER
 103        bool "Owl timer driver" if COMPILE_TEST
 104        select CLKSRC_MMIO
 105        help
 106          Enables the support for the Actions Semi Owl timer driver.
 107
 108config SUN4I_TIMER
 109        bool "Sun4i timer driver" if COMPILE_TEST
 110        depends on HAS_IOMEM
 111        select CLKSRC_MMIO
 112        select TIMER_OF
 113        help
 114          Enables support for the Sun4i timer.
 115
 116config SUN5I_HSTIMER
 117        bool "Sun5i timer driver" if COMPILE_TEST
 118        select CLKSRC_MMIO
 119        depends on COMMON_CLK
 120        help
 121          Enables support the Sun5i timer.
 122
 123config TEGRA_TIMER
 124        bool "Tegra timer driver" if COMPILE_TEST
 125        select CLKSRC_MMIO
 126        depends on ARM
 127        help
 128          Enables support for the Tegra driver.
 129
 130config VT8500_TIMER
 131        bool "VT8500 timer driver" if COMPILE_TEST
 132        depends on HAS_IOMEM
 133        help
 134          Enables support for the VT8500 driver.
 135
 136config NPCM7XX_TIMER
 137        bool "NPCM7xx timer driver" if COMPILE_TEST
 138        depends on HAS_IOMEM
 139        select CLKSRC_MMIO
 140        help
 141          Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture,
 142          While TIMER0 serves as clockevent and TIMER1 serves as clocksource.
 143
 144config CADENCE_TTC_TIMER
 145        bool "Cadence TTC timer driver" if COMPILE_TEST
 146        depends on COMMON_CLK
 147        help
 148          Enables support for the cadence ttc driver.
 149
 150config ASM9260_TIMER
 151        bool "ASM9260 timer driver" if COMPILE_TEST
 152        select CLKSRC_MMIO
 153        select TIMER_OF
 154        help
 155          Enables support for the ASM9260 timer.
 156
 157config CLKSRC_NOMADIK_MTU
 158        bool "Nomakdik clocksource driver" if COMPILE_TEST
 159        depends on ARM
 160        select CLKSRC_MMIO
 161        help
 162          Support for Multi Timer Unit. MTU provides access
 163          to multiple interrupt generating programmable
 164          32-bit free running decrementing counters.
 165
 166config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
 167        bool
 168        depends on CLKSRC_NOMADIK_MTU
 169        help
 170          Use the Multi Timer Unit as the sched_clock.
 171
 172config CLKSRC_DBX500_PRCMU
 173        bool "Clocksource PRCMU Timer" if COMPILE_TEST
 174        depends on HAS_IOMEM
 175        help
 176          Use the always on PRCMU Timer as clocksource
 177
 178config CLPS711X_TIMER
 179        bool "Cirrus logic timer driver" if COMPILE_TEST
 180        select CLKSRC_MMIO
 181        help
 182          Enables support for the Cirrus Logic PS711 timer.
 183
 184config ATLAS7_TIMER
 185        bool "Atlas7 timer driver" if COMPILE_TEST
 186        select CLKSRC_MMIO
 187        help
 188          Enables support for the Atlas7 timer.
 189
 190config MXS_TIMER
 191        bool "Mxs timer driver" if COMPILE_TEST
 192        select CLKSRC_MMIO
 193        select STMP_DEVICE
 194        help
 195          Enables support for the Mxs timer.
 196
 197config PRIMA2_TIMER
 198        bool "Prima2 timer driver" if COMPILE_TEST
 199        select CLKSRC_MMIO
 200        help
 201          Enables support for the Prima2 timer.
 202
 203config U300_TIMER
 204        bool "U300 timer driver" if COMPILE_TEST
 205        depends on ARM
 206        select CLKSRC_MMIO
 207        help
 208          Enables support for the U300 timer.
 209
 210config NSPIRE_TIMER
 211        bool "NSpire timer driver" if COMPILE_TEST
 212        select CLKSRC_MMIO
 213        help
 214          Enables support for the Nspire timer.
 215
 216config KEYSTONE_TIMER
 217        bool "Keystone timer driver" if COMPILE_TEST
 218        depends on ARM || ARM64
 219        select CLKSRC_MMIO
 220        help
 221          Enables support for the Keystone timer.
 222
 223config INTEGRATOR_AP_TIMER
 224        bool "Integrator-ap timer driver" if COMPILE_TEST
 225        select CLKSRC_MMIO
 226        help
 227          Enables support for the Integrator-ap timer.
 228
 229config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
 230        bool "Clocksource PRCMU Timer sched_clock"
 231        depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
 232        default y
 233        help
 234          Use the always on PRCMU Timer as sched_clock
 235
 236config CLKSRC_EFM32
 237        bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
 238        depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
 239        select CLKSRC_MMIO
 240        default ARCH_EFM32
 241        help
 242          Support to use the timers of EFM32 SoCs as clock source and clock
 243          event device.
 244
 245config CLKSRC_LPC32XX
 246        bool "Clocksource for LPC32XX" if COMPILE_TEST
 247        depends on HAS_IOMEM
 248        depends on ARM
 249        select CLKSRC_MMIO
 250        select TIMER_OF
 251        help
 252          Support for the LPC32XX clocksource.
 253
 254config CLKSRC_PISTACHIO
 255        bool "Clocksource for Pistachio SoC" if COMPILE_TEST
 256        depends on HAS_IOMEM
 257        select TIMER_OF
 258        help
 259          Enables the clocksource for the Pistachio SoC.
 260
 261config CLKSRC_TI_32K
 262        bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
 263        depends on GENERIC_SCHED_CLOCK
 264        select TIMER_OF if OF
 265        help
 266          This option enables support for Texas Instruments 32.768 Hz clocksource
 267          available on many OMAP-like platforms.
 268
 269config CLKSRC_NPS
 270        bool "NPS400 clocksource driver" if COMPILE_TEST
 271        depends on !PHYS_ADDR_T_64BIT
 272        select CLKSRC_MMIO
 273        select TIMER_OF if OF
 274        help
 275          NPS400 clocksource support.
 276          Got 64 bit counter with update rate up to 1000MHz.
 277          This counter is accessed via couple of 32 bit memory mapped registers.
 278
 279config CLKSRC_STM32
 280        bool "Clocksource for STM32 SoCs" if !ARCH_STM32
 281        depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
 282        select CLKSRC_MMIO
 283        select TIMER_OF
 284
 285config CLKSRC_MPS2
 286        bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
 287        depends on GENERIC_SCHED_CLOCK
 288        select CLKSRC_MMIO
 289        select TIMER_OF
 290
 291config ARC_TIMERS
 292        bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
 293        select TIMER_OF
 294        help
 295          These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
 296          (ARC700 as well as ARC HS38).
 297          TIMER0 serves as clockevent while TIMER1 provides clocksource
 298
 299config ARC_TIMERS_64BIT
 300        bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
 301        depends on ARC_TIMERS
 302        select TIMER_OF
 303        help
 304          This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP)
 305          RTC is implemented inside the core, while GFRC sits outside the core in
 306          ARConnect IP block. Driver automatically picks one of them for clocksource
 307          as appropriate.
 308
 309config ARM_ARCH_TIMER
 310        bool
 311        select TIMER_OF if OF
 312        select TIMER_ACPI if ACPI
 313
 314config ARM_ARCH_TIMER_EVTSTREAM
 315        bool "Enable ARM architected timer event stream generation by default"
 316        default y if ARM_ARCH_TIMER
 317        depends on ARM_ARCH_TIMER
 318        help
 319          This option enables support by default for event stream generation
 320          based on the ARM architected timer. It is used for waking up CPUs
 321          executing the wfe instruction at a frequency represented as a
 322          power-of-2 divisor of the clock rate. The behaviour can also be
 323          overridden on the command line using the
 324          clocksource.arm_arch_timer.evtstream parameter.
 325          The main use of the event stream is wfe-based timeouts of userspace
 326          locking implementations. It might also be useful for imposing timeout
 327          on wfe to safeguard against any programming errors in case an expected
 328          event is not generated.
 329          This must be disabled for hardware validation purposes to detect any
 330          hardware anomalies of missing events.
 331
 332config ARM_ARCH_TIMER_OOL_WORKAROUND
 333        bool
 334
 335config FSL_ERRATUM_A008585
 336        bool "Workaround for Freescale/NXP Erratum A-008585"
 337        default y
 338        depends on ARM_ARCH_TIMER && ARM64
 339        select ARM_ARCH_TIMER_OOL_WORKAROUND
 340        help
 341          This option enables a workaround for Freescale/NXP Erratum
 342          A-008585 ("ARM generic timer may contain an erroneous
 343          value").  The workaround will only be active if the
 344          fsl,erratum-a008585 property is found in the timer node.
 345
 346config HISILICON_ERRATUM_161010101
 347        bool "Workaround for Hisilicon Erratum 161010101"
 348        default y
 349        select ARM_ARCH_TIMER_OOL_WORKAROUND
 350        depends on ARM_ARCH_TIMER && ARM64
 351        help
 352          This option enables a workaround for Hisilicon Erratum
 353          161010101. The workaround will be active if the hisilicon,erratum-161010101
 354          property is found in the timer node.
 355
 356config ARM64_ERRATUM_858921
 357        bool "Workaround for Cortex-A73 erratum 858921"
 358        default y
 359        select ARM_ARCH_TIMER_OOL_WORKAROUND
 360        depends on ARM_ARCH_TIMER && ARM64
 361        help
 362          This option enables a workaround applicable to Cortex-A73
 363          (all versions), whose counter may return incorrect values.
 364          The workaround will be dynamically enabled when an affected
 365          core is detected.
 366
 367config ARM_GLOBAL_TIMER
 368        bool "Support for the ARM global timer" if COMPILE_TEST
 369        select TIMER_OF if OF
 370        depends on ARM
 371        help
 372          This options enables support for the ARM global timer unit
 373
 374config ARM_TIMER_SP804
 375        bool "Support for Dual Timer SP804 module"
 376        depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
 377        select CLKSRC_MMIO
 378        select TIMER_OF if OF
 379
 380config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
 381        bool
 382        depends on ARM_GLOBAL_TIMER
 383        default y
 384        help
 385         Use ARM global timer clock source as sched_clock
 386
 387config ARMV7M_SYSTICK
 388        bool "Support for the ARMv7M system time" if COMPILE_TEST
 389        select TIMER_OF if OF
 390        select CLKSRC_MMIO
 391        help
 392          This options enables support for the ARMv7M system timer unit
 393
 394config ATMEL_PIT
 395        select TIMER_OF if OF
 396        def_bool SOC_AT91SAM9 || SOC_SAMA5
 397
 398config ATMEL_ST
 399        bool "Atmel ST timer support" if COMPILE_TEST
 400        depends on HAS_IOMEM
 401        select TIMER_OF
 402        select MFD_SYSCON
 403        help
 404          Support for the Atmel ST timer.
 405
 406config CLKSRC_EXYNOS_MCT
 407        bool "Exynos multi core timer driver" if COMPILE_TEST
 408        depends on ARM || ARM64
 409        help
 410          Support for Multi Core Timer controller on Exynos SoCs.
 411
 412config CLKSRC_SAMSUNG_PWM
 413        bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
 414        depends on HAS_IOMEM
 415        help
 416          This is a new clocksource driver for the PWM timer found in
 417          Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
 418          for all devicetree enabled platforms. This driver will be
 419          needed only on systems that do not have the Exynos MCT available.
 420
 421config FSL_FTM_TIMER
 422        bool "Freescale FlexTimer Module driver" if COMPILE_TEST
 423        depends on HAS_IOMEM
 424        select CLKSRC_MMIO
 425        help
 426          Support for Freescale FlexTimer Module (FTM) timer.
 427
 428config VF_PIT_TIMER
 429        bool
 430        select CLKSRC_MMIO
 431        help
 432          Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
 433
 434config OXNAS_RPS_TIMER
 435        bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
 436        select TIMER_OF
 437        select CLKSRC_MMIO
 438        help
 439          This enables support for the Oxford Semiconductor OXNAS RPS timers.
 440
 441config SYS_SUPPORTS_SH_CMT
 442        bool
 443
 444config MTK_TIMER
 445        bool "Mediatek timer driver" if COMPILE_TEST
 446        depends on HAS_IOMEM
 447        select TIMER_OF
 448        select CLKSRC_MMIO
 449        help
 450          Support for Mediatek timer driver.
 451
 452config SPRD_TIMER
 453        bool "Spreadtrum timer driver" if EXPERT
 454        depends on HAS_IOMEM
 455        depends on (ARCH_SPRD || COMPILE_TEST)
 456        default ARCH_SPRD
 457        select TIMER_OF
 458        help
 459          Enables support for the Spreadtrum timer driver.
 460
 461config SYS_SUPPORTS_SH_MTU2
 462        bool
 463
 464config SYS_SUPPORTS_SH_TMU
 465        bool
 466
 467config SYS_SUPPORTS_EM_STI
 468        bool
 469
 470config CLKSRC_JCORE_PIT
 471        bool "J-Core PIT timer driver" if COMPILE_TEST
 472        depends on OF
 473        depends on HAS_IOMEM
 474        select CLKSRC_MMIO
 475        help
 476          This enables build of clocksource and clockevent driver for
 477          the integrated PIT in the J-Core synthesizable, open source SoC.
 478
 479config SH_TIMER_CMT
 480        bool "Renesas CMT timer driver" if COMPILE_TEST
 481        depends on HAS_IOMEM
 482        default SYS_SUPPORTS_SH_CMT
 483        help
 484          This enables build of a clocksource and clockevent driver for
 485          the Compare Match Timer (CMT) hardware available in 16/32/48-bit
 486          variants on a wide range of Mobile and Automotive SoCs from Renesas.
 487
 488config SH_TIMER_MTU2
 489        bool "Renesas MTU2 timer driver" if COMPILE_TEST
 490        depends on HAS_IOMEM
 491        default SYS_SUPPORTS_SH_MTU2
 492        help
 493          This enables build of a clockevent driver for the Multi-Function
 494          Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
 495          This hardware comes with 16 bit-timer registers.
 496
 497config RENESAS_OSTM
 498        bool "Renesas OSTM timer driver" if COMPILE_TEST
 499        select CLKSRC_MMIO
 500        help
 501          Enables the support for the Renesas OSTM.
 502
 503config SH_TIMER_TMU
 504        bool "Renesas TMU timer driver" if COMPILE_TEST
 505        depends on HAS_IOMEM
 506        default SYS_SUPPORTS_SH_TMU
 507        help
 508          This enables build of a clocksource and clockevent driver for
 509          the 32-bit Timer Unit (TMU) hardware available on a wide range
 510          SoCs from Renesas.
 511
 512config EM_TIMER_STI
 513        bool "Renesas STI timer driver" if COMPILE_TEST
 514        depends on HAS_IOMEM
 515        default SYS_SUPPORTS_EM_STI
 516        help
 517          This enables build of a clocksource and clockevent driver for
 518          the 48-bit System Timer (STI) hardware available on a SoCs
 519          such as EMEV2 from former NEC Electronics.
 520
 521config CLKSRC_QCOM
 522        bool "Qualcomm MSM timer" if COMPILE_TEST
 523        depends on ARM
 524        select TIMER_OF
 525        help
 526          This enables the clocksource and the per CPU clockevent driver for the
 527          Qualcomm SoCs.
 528
 529config CLKSRC_VERSATILE
 530        bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
 531        depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
 532        select TIMER_OF
 533        default y if MFD_VEXPRESS_SYSREG
 534        help
 535          This option enables clock source based on free running
 536          counter available in the "System Registers" block of
 537          ARM Versatile, RealView and Versatile Express reference
 538          platforms.
 539
 540config CLKSRC_MIPS_GIC
 541        bool
 542        depends on MIPS_GIC
 543        select TIMER_OF
 544
 545config CLKSRC_TANGO_XTAL
 546        bool "Clocksource for Tango SoC" if COMPILE_TEST
 547        depends on ARM
 548        select TIMER_OF
 549        select CLKSRC_MMIO
 550        help
 551          This enables the clocksource for Tango SoC
 552
 553config CLKSRC_PXA
 554        bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
 555        depends on HAS_IOMEM
 556        select CLKSRC_MMIO
 557        help
 558          This enables OST0 support available on PXA and SA-11x0
 559          platforms.
 560
 561config H8300_TMR8
 562        bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
 563        depends on HAS_IOMEM
 564        help
 565          This enables the 8 bits timer for the H8300 platform.
 566
 567config H8300_TMR16
 568        bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
 569        depends on HAS_IOMEM
 570        help
 571          This enables the 16 bits timer for the H8300 platform with the
 572          H83069 cpu.
 573
 574config H8300_TPU
 575        bool "Clocksource for the H8300 platform" if COMPILE_TEST
 576        depends on HAS_IOMEM
 577        help
 578          This enables the clocksource for the H8300 platform with the
 579          H8S2678 cpu.
 580
 581config CLKSRC_IMX_GPT
 582        bool "Clocksource using i.MX GPT" if COMPILE_TEST
 583        depends on ARM && CLKDEV_LOOKUP
 584        select CLKSRC_MMIO
 585
 586config CLKSRC_IMX_TPM
 587        bool "Clocksource using i.MX TPM" if COMPILE_TEST
 588        depends on ARM && CLKDEV_LOOKUP
 589        select CLKSRC_MMIO
 590        help
 591          Enable this option to use IMX Timer/PWM Module (TPM) timer as
 592          clocksource.
 593
 594config CLKSRC_ST_LPC
 595        bool "Low power clocksource found in the LPC" if COMPILE_TEST
 596        select TIMER_OF if OF
 597        depends on HAS_IOMEM
 598        select CLKSRC_MMIO
 599        help
 600          Enable this option to use the Low Power controller timer
 601          as clocksource.
 602
 603config ATCPIT100_TIMER
 604        bool "ATCPIT100 timer driver"
 605        depends on NDS32 || COMPILE_TEST
 606        depends on HAS_IOMEM
 607        select TIMER_OF
 608        default NDS32
 609        help
 610          This option enables support for the Andestech ATCPIT100 timers.
 611
 612endmenu
 613