1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 258394271SJean Delvaremenu "Clock Source drivers" 32f8a26c1SArnd Bergmann depends on GENERIC_CLOCKEVENTS 458394271SJean Delvare 5bb0eb050SDaniel Lezcanoconfig TIMER_OF 6ae278a93SStephen Warren bool 7bb0eb050SDaniel Lezcano select TIMER_PROBE 8aad83b15SMarc Zyngier 9fa1bffabSDaniel Lezcanoconfig TIMER_ACPI 10aad83b15SMarc Zyngier bool 11bb0eb050SDaniel Lezcano select TIMER_PROBE 12aad83b15SMarc Zyngier 13bb0eb050SDaniel Lezcanoconfig TIMER_PROBE 14aad83b15SMarc Zyngier bool 15ae278a93SStephen Warren 1689c0b8e2SRussell Kingconfig CLKSRC_I8253 1789c0b8e2SRussell King bool 18442c8176SRussell King 19e6220bdcSThomas Gleixnerconfig CLKEVT_I8253 20e6220bdcSThomas Gleixner bool 21e6220bdcSThomas Gleixner 2215f304b6SRalf Baechleconfig I8253_LOCK 2315f304b6SRalf Baechle bool 2415f304b6SRalf Baechle 25af04aa85SKeerthyconfig OMAP_DM_TIMER 26af04aa85SKeerthy bool 27af04aa85SKeerthy 2815f304b6SRalf Baechleconfig CLKBLD_I8253 29e6220bdcSThomas Gleixner def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK 3015f304b6SRalf Baechle 31442c8176SRussell Kingconfig CLKSRC_MMIO 32442c8176SRussell King bool 3306c3df49SJamie Iles 342ea879a7SDaniel Lezcanoconfig BCM2835_TIMER 352ea879a7SDaniel Lezcano bool "BCM2835 timer driver" if COMPILE_TEST 362ea879a7SDaniel Lezcano select CLKSRC_MMIO 372ea879a7SDaniel Lezcano help 382ea879a7SDaniel Lezcano Enables the support for the BCM2835 timer driver. 392ea879a7SDaniel Lezcano 401cad71e3SDaniel Lezcanoconfig BCM_KONA_TIMER 411cad71e3SDaniel Lezcano bool "BCM mobile timer driver" if COMPILE_TEST 421cad71e3SDaniel Lezcano select CLKSRC_MMIO 431cad71e3SDaniel Lezcano help 441cad71e3SDaniel Lezcano Enables the support for the BCM Kona mobile timer driver. 451cad71e3SDaniel Lezcano 46721154f9SBartosz Golaszewskiconfig DAVINCI_TIMER 47721154f9SBartosz Golaszewski bool "Texas Instruments DaVinci timer driver" if COMPILE_TEST 48721154f9SBartosz Golaszewski help 49721154f9SBartosz Golaszewski Enables the support for the TI DaVinci timer driver. 50721154f9SBartosz Golaszewski 519b8bb773SBaruch Siachconfig DIGICOLOR_TIMER 52e6c1db13SDaniel Lezcano bool "Digicolor timer driver" if COMPILE_TEST 532be6d9bfSArnd Bergmann select CLKSRC_MMIO 54d7023e62SRichard Weinberger depends on HAS_IOMEM 55e6c1db13SDaniel Lezcano help 56e6c1db13SDaniel Lezcano Enables the support for the digicolor timer driver. 579b8bb773SBaruch Siach 5806c3df49SJamie Ilesconfig DW_APB_TIMER 595b097f6bSDaniel Lezcano bool "DW APB timer driver" if COMPILE_TEST 605b097f6bSDaniel Lezcano help 615b097f6bSDaniel Lezcano Enables the support for the dw_apb timer. 62489bcceaSMattias Wallin 63cfda5901SDinh Nguyenconfig DW_APB_TIMER_OF 64cfda5901SDinh Nguyen bool 651b4eca0fSHeiko Stuebner select DW_APB_TIMER 66bb0eb050SDaniel Lezcano select TIMER_OF 67cfda5901SDinh Nguyen 68f5bf0ee4SLinus Walleijconfig FTTMR010_TIMER 69f5bf0ee4SLinus Walleij bool "Faraday Technology timer driver" if COMPILE_TEST 704750535bSLinus Walleij depends on HAS_IOMEM 714750535bSLinus Walleij select CLKSRC_MMIO 72bb0eb050SDaniel Lezcano select TIMER_OF 734750535bSLinus Walleij select MFD_SYSCON 744750535bSLinus Walleij help 75f5bf0ee4SLinus Walleij Enables support for the Faraday Technology timer block 76f5bf0ee4SLinus Walleij FTTMR010. 774750535bSLinus Walleij 7813e0b405SLinus Walleijconfig IXP4XX_TIMER 7913e0b405SLinus Walleij bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST 8013e0b405SLinus Walleij depends on HAS_IOMEM 8113e0b405SLinus Walleij select CLKSRC_MMIO 827a3b8758SArnd Bergmann select TIMER_OF if OF 8313e0b405SLinus Walleij help 8413e0b405SLinus Walleij Enables support for the Intel XScale IXP4xx SoC timer. 8513e0b405SLinus Walleij 86468b8c4cSDaniel Lezcanoconfig ROCKCHIP_TIMER 8740ada2aaSDaniel Lezcano bool "Rockchip timer driver" if COMPILE_TEST 8840ada2aaSDaniel Lezcano depends on ARM || ARM64 89bb0eb050SDaniel Lezcano select TIMER_OF 905e0a39d0SAlexander Kochetkov select CLKSRC_MMIO 9140ada2aaSDaniel Lezcano help 9206293463SRandy Dunlap Enables the support for the Rockchip timer driver. 93468b8c4cSDaniel Lezcano 946fe9cbd1SGregory CLEMENTconfig ARMADA_370_XP_TIMER 959519e80cSDaniel Lezcano bool "Armada 370 and XP timer driver" if COMPILE_TEST 969519e80cSDaniel Lezcano depends on ARM 97bb0eb050SDaniel Lezcano select TIMER_OF 982be6d9bfSArnd Bergmann select CLKSRC_MMIO 999519e80cSDaniel Lezcano help 1009519e80cSDaniel Lezcano Enables the support for the Armada 370 and XP timer driver. 1016fe9cbd1SGregory CLEMENT 102e4a6b378SCarlo Caioneconfig MESON6_TIMER 1030b7a7bb7SDaniel Lezcano bool "Meson6 timer driver" if COMPILE_TEST 1047b6b0a45SBeniamino Galvani select CLKSRC_MMIO 1050b7a7bb7SDaniel Lezcano help 1060b7a7bb7SDaniel Lezcano Enables the support for the Meson6 timer driver. 107e4a6b378SCarlo Caione 1080c1dcfd5SSebastian Hesselbarthconfig ORION_TIMER 109c9165549SDaniel Lezcano bool "Orion timer driver" if COMPILE_TEST 110c9165549SDaniel Lezcano depends on ARM 111bb0eb050SDaniel Lezcano select TIMER_OF 1120c1dcfd5SSebastian Hesselbarth select CLKSRC_MMIO 113c9165549SDaniel Lezcano help 114c9165549SDaniel Lezcano Enables the support for the Orion timer driver 1150c1dcfd5SSebastian Hesselbarth 1164be78a86SAndreas Färberconfig OWL_TIMER 1174be78a86SAndreas Färber bool "Owl timer driver" if COMPILE_TEST 1184be78a86SAndreas Färber select CLKSRC_MMIO 1194be78a86SAndreas Färber help 1204be78a86SAndreas Färber Enables the support for the Actions Semi Owl timer driver. 1214be78a86SAndreas Färber 1227f83a132SManivannan Sadhasivamconfig RDA_TIMER 1237f83a132SManivannan Sadhasivam bool "RDA timer driver" if COMPILE_TEST 1247f83a132SManivannan Sadhasivam select CLKSRC_MMIO 1257f83a132SManivannan Sadhasivam select TIMER_OF 1267f83a132SManivannan Sadhasivam help 1277f83a132SManivannan Sadhasivam Enables the support for the RDA Micro timer driver. 1287f83a132SManivannan Sadhasivam 129119fd635SMaxime Ripardconfig SUN4I_TIMER 130b4fcd48bSDaniel Lezcano bool "Sun4i timer driver" if COMPILE_TEST 131d7023e62SRichard Weinberger depends on HAS_IOMEM 13271c568c0SMaxime Ripard select CLKSRC_MMIO 133239751edSDaniel Lezcano select TIMER_OF 134b4fcd48bSDaniel Lezcano help 135b4fcd48bSDaniel Lezcano Enables support for the Sun4i timer. 136b2ac5d75SMaxime Ripard 13767905540SMaxime Ripardconfig SUN5I_HSTIMER 138f0c5afb7SDaniel Lezcano bool "Sun5i timer driver" if COMPILE_TEST 13967905540SMaxime Ripard select CLKSRC_MMIO 140f0c5afb7SDaniel Lezcano depends on COMMON_CLK 141f0c5afb7SDaniel Lezcano help 142f0c5afb7SDaniel Lezcano Enables support the Sun5i timer. 14367905540SMaxime Ripard 144910978e7SThierry Redingconfig TEGRA_TIMER 145adce4bc8SDaniel Lezcano bool "Tegra timer driver" if COMPILE_TEST 1462be6d9bfSArnd Bergmann select CLKSRC_MMIO 147b4822dc7SJoseph Lo select TIMER_OF 148acb4bb3fSDmitry Osipenko depends on ARCH_TEGRA || COMPILE_TEST 149adce4bc8SDaniel Lezcano help 150adce4bc8SDaniel Lezcano Enables support for the Tegra driver. 151910978e7SThierry Reding 152ff7ec345STony Priskconfig VT8500_TIMER 153b4bdf7efSDaniel Lezcano bool "VT8500 timer driver" if COMPILE_TEST 154d7023e62SRichard Weinberger depends on HAS_IOMEM 155b4bdf7efSDaniel Lezcano help 156b4bdf7efSDaniel Lezcano Enables support for the VT8500 driver. 157ff7ec345STony Prisk 1581c00289eSTomer Maimonconfig NPCM7XX_TIMER 1591c00289eSTomer Maimon bool "NPCM7xx timer driver" if COMPILE_TEST 1601c00289eSTomer Maimon depends on HAS_IOMEM 16199834eeaSArnd Bergmann select TIMER_OF 1621c00289eSTomer Maimon select CLKSRC_MMIO 1631c00289eSTomer Maimon help 1641c00289eSTomer Maimon Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture, 16506293463SRandy Dunlap where TIMER0 serves as clockevent and TIMER1 serves as clocksource. 1661c00289eSTomer Maimon 1674f0f234fSMichal Simekconfig CADENCE_TTC_TIMER 16857f49318SDaniel Lezcano bool "Cadence TTC timer driver" if COMPILE_TEST 16957f49318SDaniel Lezcano depends on COMMON_CLK 17057f49318SDaniel Lezcano help 17106293463SRandy Dunlap Enables support for the Cadence TTC driver. 1724f0f234fSMichal Simek 173a8b1b9fcSDaniel Lezcanoconfig ASM9260_TIMER 174b9755841SDaniel Lezcano bool "ASM9260 timer driver" if COMPILE_TEST 175a8b1b9fcSDaniel Lezcano select CLKSRC_MMIO 176bb0eb050SDaniel Lezcano select TIMER_OF 177b9755841SDaniel Lezcano help 178b9755841SDaniel Lezcano Enables support for the ASM9260 timer. 179a8b1b9fcSDaniel Lezcano 180694e33a7SLinus Walleijconfig CLKSRC_NOMADIK_MTU 18170329653SDaniel Lezcano bool "Nomakdik clocksource driver" if COMPILE_TEST 18270329653SDaniel Lezcano depends on ARM 183694e33a7SLinus Walleij select CLKSRC_MMIO 184694e33a7SLinus Walleij help 185694e33a7SLinus Walleij Support for Multi Timer Unit. MTU provides access 186694e33a7SLinus Walleij to multiple interrupt generating programmable 187694e33a7SLinus Walleij 32-bit free running decrementing counters. 188694e33a7SLinus Walleij 189489bcceaSMattias Wallinconfig CLKSRC_DBX500_PRCMU 1901becd6edSDaniel Lezcano bool "Clocksource PRCMU Timer" if COMPILE_TEST 191d7023e62SRichard Weinberger depends on HAS_IOMEM 192489bcceaSMattias Wallin help 19306293463SRandy Dunlap Use the always on PRCMU Timer as clocksource. 194489bcceaSMattias Wallin 195ecf0efdcSDaniel Lezcanoconfig CLPS711X_TIMER 19606293463SRandy Dunlap bool "Cirrus Logic timer driver" if COMPILE_TEST 197ecf0efdcSDaniel Lezcano select CLKSRC_MMIO 198ecf0efdcSDaniel Lezcano help 199ecf0efdcSDaniel Lezcano Enables support for the Cirrus Logic PS711 timer. 200ecf0efdcSDaniel Lezcano 201d81c50a0SDaniel Lezcanoconfig MXS_TIMER 20206293463SRandy Dunlap bool "MXS timer driver" if COMPILE_TEST 203d81c50a0SDaniel Lezcano select CLKSRC_MMIO 204d81c50a0SDaniel Lezcano select STMP_DEVICE 205d81c50a0SDaniel Lezcano help 20606293463SRandy Dunlap Enables support for the MXS timer. 207d81c50a0SDaniel Lezcano 208d683b9dcSDaniel Lezcanoconfig NSPIRE_TIMER 209d683b9dcSDaniel Lezcano bool "NSpire timer driver" if COMPILE_TEST 210d683b9dcSDaniel Lezcano select CLKSRC_MMIO 211d683b9dcSDaniel Lezcano help 212d683b9dcSDaniel Lezcano Enables support for the Nspire timer. 213d683b9dcSDaniel Lezcano 214c12547a0SDaniel Lezcanoconfig KEYSTONE_TIMER 215c12547a0SDaniel Lezcano bool "Keystone timer driver" if COMPILE_TEST 216c12547a0SDaniel Lezcano depends on ARM || ARM64 217c12547a0SDaniel Lezcano select CLKSRC_MMIO 218c12547a0SDaniel Lezcano help 219c12547a0SDaniel Lezcano Enables support for the Keystone timer. 220c12547a0SDaniel Lezcano 221568c0342SDaniel Lezcanoconfig INTEGRATOR_AP_TIMER 22206293463SRandy Dunlap bool "Integrator-AP timer driver" if COMPILE_TEST 223568c0342SDaniel Lezcano select CLKSRC_MMIO 224568c0342SDaniel Lezcano help 22506293463SRandy Dunlap Enables support for the Integrator-AP timer. 226568c0342SDaniel Lezcano 227050dd322SJoachim Eastwoodconfig CLKSRC_LPC32XX 228ddcf48c7SDaniel Lezcano bool "Clocksource for LPC32XX" if COMPILE_TEST 2292f8a26c1SArnd Bergmann depends on HAS_IOMEM 2301b18fd20SEzequiel Garcia depends on ARM 231050dd322SJoachim Eastwood select CLKSRC_MMIO 232bb0eb050SDaniel Lezcano select TIMER_OF 233ddcf48c7SDaniel Lezcano help 234ddcf48c7SDaniel Lezcano Support for the LPC32XX clocksource. 235050dd322SJoachim Eastwood 23684583983SEzequiel Garciaconfig CLKSRC_PISTACHIO 237dfdb1652SDaniel Lezcano bool "Clocksource for Pistachio SoC" if COMPILE_TEST 2382f8a26c1SArnd Bergmann depends on HAS_IOMEM 239bb0eb050SDaniel Lezcano select TIMER_OF 240dfdb1652SDaniel Lezcano help 241dfdb1652SDaniel Lezcano Enables the clocksource for the Pistachio SoC. 24284583983SEzequiel Garcia 243fe851f56SFelipe Balbiconfig CLKSRC_TI_32K 244fe851f56SFelipe Balbi bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST 245dfedaf10SFelipe Balbi depends on GENERIC_SCHED_CLOCK 246bb0eb050SDaniel Lezcano select TIMER_OF if OF 247fe851f56SFelipe Balbi help 248fe851f56SFelipe Balbi This option enables support for Texas Instruments 32.768 Hz clocksource 249fe851f56SFelipe Balbi available on many OMAP-like platforms. 250fe851f56SFelipe Balbi 251e37e4593SMaxime Coquelinconfig CLKSRC_STM32 2521cb6c215SPaul Gortmaker bool "Clocksource for STM32 SoCs" if !ARCH_STM32 2531cb6c215SPaul Gortmaker depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST) 254e37e4593SMaxime Coquelin select CLKSRC_MMIO 255d04af490SBenjamin Gaignard select TIMER_OF 256e37e4593SMaxime Coquelin 25748b41c5eSBenjamin Gaignardconfig CLKSRC_STM32_LP 25848b41c5eSBenjamin Gaignard bool "Low power clocksource for STM32 SoCs" 25948b41c5eSBenjamin Gaignard depends on MFD_STM32_LPTIMER || COMPILE_TEST 26048b41c5eSBenjamin Gaignard 2610302637fSVladimir Murzinconfig CLKSRC_MPS2 2620302637fSVladimir Murzin bool "Clocksource for MPS2 SoCs" if COMPILE_TEST 2630302637fSVladimir Murzin depends on GENERIC_SCHED_CLOCK 2640302637fSVladimir Murzin select CLKSRC_MMIO 265bb0eb050SDaniel Lezcano select TIMER_OF 2660302637fSVladimir Murzin 267c4c9a040SVineet Guptaconfig ARC_TIMERS 268c4c9a040SVineet Gupta bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST 269bf287607SAlexey Brodkin depends on GENERIC_SCHED_CLOCK 270bb0eb050SDaniel Lezcano select TIMER_OF 271c4c9a040SVineet Gupta help 272c4c9a040SVineet Gupta These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores 273c4c9a040SVineet Gupta (ARC700 as well as ARC HS38). 27406293463SRandy Dunlap TIMER0 serves as clockevent while TIMER1 provides clocksource. 275c4c9a040SVineet Gupta 276c4c9a040SVineet Guptaconfig ARC_TIMERS_64BIT 277c4c9a040SVineet Gupta bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST 278c4c9a040SVineet Gupta depends on ARC_TIMERS 279bb0eb050SDaniel Lezcano select TIMER_OF 280c4c9a040SVineet Gupta help 28106293463SRandy Dunlap This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP). 282c4c9a040SVineet Gupta RTC is implemented inside the core, while GFRC sits outside the core in 283c4c9a040SVineet Gupta ARConnect IP block. Driver automatically picks one of them for clocksource 284c4c9a040SVineet Gupta as appropriate. 285c4c9a040SVineet Gupta 2868a4da6e3SMark Rutlandconfig ARM_ARCH_TIMER 2878a4da6e3SMark Rutland bool 288bb0eb050SDaniel Lezcano select TIMER_OF if OF 289fa1bffabSDaniel Lezcano select TIMER_ACPI if ACPI 290a2c5d4edSJames Hogan 291037f6377SWill Deaconconfig ARM_ARCH_TIMER_EVTSTREAM 29246fd5c6bSWill Deacon bool "Enable ARM architected timer event stream generation by default" 293037f6377SWill Deacon default y if ARM_ARCH_TIMER 29477f7ce9aSStephen Boyd depends on ARM_ARCH_TIMER 295037f6377SWill Deacon help 29646fd5c6bSWill Deacon This option enables support by default for event stream generation 29746fd5c6bSWill Deacon based on the ARM architected timer. It is used for waking up CPUs 29846fd5c6bSWill Deacon executing the wfe instruction at a frequency represented as a 29946fd5c6bSWill Deacon power-of-2 divisor of the clock rate. The behaviour can also be 30046fd5c6bSWill Deacon overridden on the command line using the 30146fd5c6bSWill Deacon clocksource.arm_arch_timer.evtstream parameter. 302037f6377SWill Deacon The main use of the event stream is wfe-based timeouts of userspace 303037f6377SWill Deacon locking implementations. It might also be useful for imposing timeout 304037f6377SWill Deacon on wfe to safeguard against any programming errors in case an expected 305037f6377SWill Deacon event is not generated. 306037f6377SWill Deacon This must be disabled for hardware validation purposes to detect any 307037f6377SWill Deacon hardware anomalies of missing events. 308037f6377SWill Deacon 30916d10ef2SDing Tianhongconfig ARM_ARCH_TIMER_OOL_WORKAROUND 31016d10ef2SDing Tianhong bool 31116d10ef2SDing Tianhong 312f6dc1576SScott Woodconfig FSL_ERRATUM_A008585 313f6dc1576SScott Wood bool "Workaround for Freescale/NXP Erratum A-008585" 314f6dc1576SScott Wood default y 315f6dc1576SScott Wood depends on ARM_ARCH_TIMER && ARM64 31616d10ef2SDing Tianhong select ARM_ARCH_TIMER_OOL_WORKAROUND 317f6dc1576SScott Wood help 318f6dc1576SScott Wood This option enables a workaround for Freescale/NXP Erratum 319f6dc1576SScott Wood A-008585 ("ARM generic timer may contain an erroneous 320f6dc1576SScott Wood value"). The workaround will only be active if the 321f6dc1576SScott Wood fsl,erratum-a008585 property is found in the timer node. 322f6dc1576SScott Wood 323bb42ca47SDing Tianhongconfig HISILICON_ERRATUM_161010101 324bb42ca47SDing Tianhong bool "Workaround for Hisilicon Erratum 161010101" 325bb42ca47SDing Tianhong default y 326bb42ca47SDing Tianhong select ARM_ARCH_TIMER_OOL_WORKAROUND 327bb42ca47SDing Tianhong depends on ARM_ARCH_TIMER && ARM64 328bb42ca47SDing Tianhong help 329bb42ca47SDing Tianhong This option enables a workaround for Hisilicon Erratum 330bb42ca47SDing Tianhong 161010101. The workaround will be active if the hisilicon,erratum-161010101 331bb42ca47SDing Tianhong property is found in the timer node. 332bb42ca47SDing Tianhong 333fa8d815fSMarc Zyngierconfig ARM64_ERRATUM_858921 334fa8d815fSMarc Zyngier bool "Workaround for Cortex-A73 erratum 858921" 335fa8d815fSMarc Zyngier default y 336fa8d815fSMarc Zyngier select ARM_ARCH_TIMER_OOL_WORKAROUND 337fa8d815fSMarc Zyngier depends on ARM_ARCH_TIMER && ARM64 338fa8d815fSMarc Zyngier help 339fa8d815fSMarc Zyngier This option enables a workaround applicable to Cortex-A73 340fa8d815fSMarc Zyngier (all versions), whose counter may return incorrect values. 341fa8d815fSMarc Zyngier The workaround will be dynamically enabled when an affected 342fa8d815fSMarc Zyngier core is detected. 343fa8d815fSMarc Zyngier 344c950ca8cSSamuel Hollandconfig SUN50I_ERRATUM_UNKNOWN1 345c950ca8cSSamuel Holland bool "Workaround for Allwinner A64 erratum UNKNOWN1" 346c950ca8cSSamuel Holland default y 347c950ca8cSSamuel Holland depends on ARM_ARCH_TIMER && ARM64 && ARCH_SUNXI 348c950ca8cSSamuel Holland select ARM_ARCH_TIMER_OOL_WORKAROUND 349c950ca8cSSamuel Holland help 350c950ca8cSSamuel Holland This option enables a workaround for instability in the timer on 351c950ca8cSSamuel Holland the Allwinner A64 SoC. The workaround will only be active if the 352c950ca8cSSamuel Holland allwinner,erratum-unknown1 property is found in the timer node. 353c950ca8cSSamuel Holland 354c1b40e44SStuart Menefyconfig ARM_GLOBAL_TIMER 35567a87a43SDaniel Lezcano bool "Support for the ARM global timer" if COMPILE_TEST 356bb0eb050SDaniel Lezcano select TIMER_OF if OF 35767a87a43SDaniel Lezcano depends on ARM 358c1b40e44SStuart Menefy help 35906293463SRandy Dunlap This option enables support for the ARM global timer unit. 360c1b40e44SStuart Menefy 3610b7402dcSSudeep Hollaconfig ARM_TIMER_SP804 362dfc82faaSDavid Abdurachmanov bool "Support for Dual Timer SP804 module" if COMPILE_TEST 363*2f4574ddSArnd Bergmann depends on GENERIC_SCHED_CLOCK && HAVE_CLK 3640b7402dcSSudeep Holla select CLKSRC_MMIO 365bb0eb050SDaniel Lezcano select TIMER_OF if OF 3660b7402dcSSudeep Holla 367c1b40e44SStuart Menefyconfig CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK 368c1b40e44SStuart Menefy bool 369c1b40e44SStuart Menefy depends on ARM_GLOBAL_TIMER 370c1b40e44SStuart Menefy default y 371c1b40e44SStuart Menefy help 37206293463SRandy Dunlap Use ARM global timer clock source as sched_clock. 373c1b40e44SStuart Menefy 3744958ebb3SMaxime Coquelinconfig ARMV7M_SYSTICK 375e2146d86SDaniel Lezcano bool "Support for the ARMv7M system time" if COMPILE_TEST 376bb0eb050SDaniel Lezcano select TIMER_OF if OF 3774958ebb3SMaxime Coquelin select CLKSRC_MMIO 3784958ebb3SMaxime Coquelin help 37906293463SRandy Dunlap This option enables support for the ARMv7M system timer unit. 3804958ebb3SMaxime Coquelin 381b052ff30SMaxime Ripardconfig ATMEL_PIT 3822f982703SAlexandre Belloni bool "Atmel PIT support" if COMPILE_TEST 3832f982703SAlexandre Belloni depends on HAS_IOMEM 384bb0eb050SDaniel Lezcano select TIMER_OF if OF 3852f982703SAlexandre Belloni help 3862f982703SAlexandre Belloni Support for the Periodic Interval Timer found on Atmel SoCs. 387b052ff30SMaxime Ripard 388b53cdd03SAlexandre Belloniconfig ATMEL_ST 389b988d3f0SDaniel Lezcano bool "Atmel ST timer support" if COMPILE_TEST 390bd2746f0SMasahiro Yamada depends on HAS_IOMEM 391bb0eb050SDaniel Lezcano select TIMER_OF 3927ab7ef74SAlexandre Belloni select MFD_SYSCON 393b988d3f0SDaniel Lezcano help 394b988d3f0SDaniel Lezcano Support for the Atmel ST timer. 395b53cdd03SAlexandre Belloni 3966275f494SAlexandre Belloniconfig ATMEL_TCB_CLKSRC 3976275f494SAlexandre Belloni bool "Atmel TC Block timer driver" if COMPILE_TEST 3981ce861ceSAlexandre Belloni depends on ARM && HAS_IOMEM 3996275f494SAlexandre Belloni select TIMER_OF if OF 4006275f494SAlexandre Belloni help 4016275f494SAlexandre Belloni Support for Timer Counter Blocks on Atmel SoCs. 4026275f494SAlexandre Belloni 4036938d75aSThomas Abrahamconfig CLKSRC_EXYNOS_MCT 40439366ef4SDaniel Lezcano bool "Exynos multi core timer driver" if COMPILE_TEST 405f1a4c1f3SChanwoo Choi depends on ARM || ARM64 4066938d75aSThomas Abraham help 4076938d75aSThomas Abraham Support for Multi Core Timer controller on Exynos SoCs. 408241a9871SArnd Bergmann 409f1189989STomasz Figaconfig CLKSRC_SAMSUNG_PWM 410de37b0b5SAlexandre Belloni bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST 411d7023e62SRichard Weinberger depends on HAS_IOMEM 412f1189989STomasz Figa help 413f1189989STomasz Figa This is a new clocksource driver for the PWM timer found in 414f1189989STomasz Figa Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver 415f1189989STomasz Figa for all devicetree enabled platforms. This driver will be 416f1189989STomasz Figa needed only on systems that do not have the Exynos MCT available. 417c1967249SJingchang Lu 4182529c3a3SXiubo Liconfig FSL_FTM_TIMER 419ef49336bSDaniel Lezcano bool "Freescale FlexTimer Module driver" if COMPILE_TEST 420d7023e62SRichard Weinberger depends on HAS_IOMEM 42103724ac3SDaniel Lezcano select CLKSRC_MMIO 4222529c3a3SXiubo Li help 4232529c3a3SXiubo Li Support for Freescale FlexTimer Module (FTM) timer. 4242529c3a3SXiubo Li 425c1967249SJingchang Luconfig VF_PIT_TIMER 426c1967249SJingchang Lu bool 4272be6d9bfSArnd Bergmann select CLKSRC_MMIO 428c1967249SJingchang Lu help 42906293463SRandy Dunlap Support for Periodic Interrupt Timer on Freescale Vybrid Family SoCs. 430fd3f1270SMagnus Damm 43189355274SNeil Armstrongconfig OXNAS_RPS_TIMER 43289355274SNeil Armstrong bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST 433bb0eb050SDaniel Lezcano select TIMER_OF 43489355274SNeil Armstrong select CLKSRC_MMIO 43589355274SNeil Armstrong help 43689355274SNeil Armstrong This enables support for the Oxford Semiconductor OXNAS RPS timers. 43789355274SNeil Armstrong 438fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_CMT 439fd3f1270SMagnus Damm bool 440fd3f1270SMagnus Damm 441ecb3530dSMatthias Bruggerconfig MTK_TIMER 442fbca9eabSDaniel Lezcano bool "Mediatek timer driver" if COMPILE_TEST 4432f8a26c1SArnd Bergmann depends on HAS_IOMEM 444bb0eb050SDaniel Lezcano select TIMER_OF 445ecb3530dSMatthias Brugger select CLKSRC_MMIO 446fbca9eabSDaniel Lezcano help 447fbca9eabSDaniel Lezcano Support for Mediatek timer driver. 448ecb3530dSMatthias Brugger 449067bc914SBaolin Wangconfig SPRD_TIMER 4508a1ece26SChunyan Zhang bool "Spreadtrum timer driver" if EXPERT 451067bc914SBaolin Wang depends on HAS_IOMEM 4528a1ece26SChunyan Zhang depends on (ARCH_SPRD || COMPILE_TEST) 4538a1ece26SChunyan Zhang default ARCH_SPRD 454067bc914SBaolin Wang select TIMER_OF 455067bc914SBaolin Wang help 456067bc914SBaolin Wang Enables support for the Spreadtrum timer driver. 457067bc914SBaolin Wang 458fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_MTU2 459fd3f1270SMagnus Damm bool 460fd3f1270SMagnus Damm 461fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_TMU 462fd3f1270SMagnus Damm bool 463fd3f1270SMagnus Damm 464fd3f1270SMagnus Dammconfig SYS_SUPPORTS_EM_STI 465fd3f1270SMagnus Damm bool 466fd3f1270SMagnus Damm 4679995f4f1SRich Felkerconfig CLKSRC_JCORE_PIT 4689995f4f1SRich Felker bool "J-Core PIT timer driver" if COMPILE_TEST 4699995f4f1SRich Felker depends on OF 4709995f4f1SRich Felker depends on HAS_IOMEM 4719995f4f1SRich Felker select CLKSRC_MMIO 4729995f4f1SRich Felker help 4739995f4f1SRich Felker This enables build of clocksource and clockevent driver for 4749995f4f1SRich Felker the integrated PIT in the J-Core synthesizable, open source SoC. 4759995f4f1SRich Felker 476fd3f1270SMagnus Dammconfig SH_TIMER_CMT 477fd3f1270SMagnus Damm bool "Renesas CMT timer driver" if COMPILE_TEST 47811bc26feSRichard Weinberger depends on HAS_IOMEM 479fd3f1270SMagnus Damm default SYS_SUPPORTS_SH_CMT 480fd3f1270SMagnus Damm help 481fd3f1270SMagnus Damm This enables build of a clocksource and clockevent driver for 482fd3f1270SMagnus Damm the Compare Match Timer (CMT) hardware available in 16/32/48-bit 483fd3f1270SMagnus Damm variants on a wide range of Mobile and Automotive SoCs from Renesas. 484fd3f1270SMagnus Damm 485fd3f1270SMagnus Dammconfig SH_TIMER_MTU2 486fd3f1270SMagnus Damm bool "Renesas MTU2 timer driver" if COMPILE_TEST 48711bc26feSRichard Weinberger depends on HAS_IOMEM 488fd3f1270SMagnus Damm default SYS_SUPPORTS_SH_MTU2 489fd3f1270SMagnus Damm help 490fd3f1270SMagnus Damm This enables build of a clockevent driver for the Multi-Function 4917e139187SKuninori Morimoto Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas. 49206293463SRandy Dunlap This hardware comes with 16-bit timer registers. 493fd3f1270SMagnus Damm 494fb6002a8SChris Brandtconfig RENESAS_OSTM 495fb6002a8SChris Brandt bool "Renesas OSTM timer driver" if COMPILE_TEST 496fb6002a8SChris Brandt select CLKSRC_MMIO 49722731423SGeert Uytterhoeven select TIMER_OF 498fb6002a8SChris Brandt help 499fb6002a8SChris Brandt Enables the support for the Renesas OSTM. 500fb6002a8SChris Brandt 501fd3f1270SMagnus Dammconfig SH_TIMER_TMU 502fd3f1270SMagnus Damm bool "Renesas TMU timer driver" if COMPILE_TEST 50311bc26feSRichard Weinberger depends on HAS_IOMEM 504fd3f1270SMagnus Damm default SYS_SUPPORTS_SH_TMU 505fd3f1270SMagnus Damm help 506fd3f1270SMagnus Damm This enables build of a clocksource and clockevent driver for 507fd3f1270SMagnus Damm the 32-bit Timer Unit (TMU) hardware available on a wide range 508fd3f1270SMagnus Damm SoCs from Renesas. 509fd3f1270SMagnus Damm 510fd3f1270SMagnus Dammconfig EM_TIMER_STI 511fd3f1270SMagnus Damm bool "Renesas STI timer driver" if COMPILE_TEST 5122f8a26c1SArnd Bergmann depends on HAS_IOMEM 513fd3f1270SMagnus Damm default SYS_SUPPORTS_EM_STI 514fd3f1270SMagnus Damm help 515fd3f1270SMagnus Damm This enables build of a clocksource and clockevent driver for 516fd3f1270SMagnus Damm the 48-bit System Timer (STI) hardware available on a SoCs 517fd3f1270SMagnus Damm such as EMEV2 from former NEC Electronics. 518dfc25e45SLinus Torvalds 5193f8e8ceeSKumar Galaconfig CLKSRC_QCOM 5203dc0e9f6SDaniel Lezcano bool "Qualcomm MSM timer" if COMPILE_TEST 5213dc0e9f6SDaniel Lezcano depends on ARM 522bb0eb050SDaniel Lezcano select TIMER_OF 5233dc0e9f6SDaniel Lezcano help 5243dc0e9f6SDaniel Lezcano This enables the clocksource and the per CPU clockevent driver for the 5253dc0e9f6SDaniel Lezcano Qualcomm SoCs. 526220e2a8dSPawel Moll 527220e2a8dSPawel Mollconfig CLKSRC_VERSATILE 5285cc87a4dSDaniel Lezcano bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST 52977f6c0b8SArnd Bergmann depends on GENERIC_SCHED_CLOCK 530bb0eb050SDaniel Lezcano select TIMER_OF 531bfed0edeSRob Herring default y if (ARCH_VEXPRESS || ARCH_VERSATILE) && ARM 532220e2a8dSPawel Moll help 533220e2a8dSPawel Moll This option enables clock source based on free running 534220e2a8dSPawel Moll counter available in the "System Registers" block of 535bfed0edeSRob Herring ARM Versatile and Versatile Express reference platforms. 53658394271SJean Delvare 537fa5635a2SAndrew Brestickerconfig CLKSRC_MIPS_GIC 538fa5635a2SAndrew Bresticker bool 539fa5635a2SAndrew Bresticker depends on MIPS_GIC 5407d7de1a6SSerge Semin select CLOCKSOURCE_WATCHDOG 541bb0eb050SDaniel Lezcano select TIMER_OF 542fa5635a2SAndrew Bresticker 543e074ff86SDmitry Eremin-Solenikovconfig CLKSRC_PXA 5445ae996cbSDaniel Lezcano bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST 545d7023e62SRichard Weinberger depends on HAS_IOMEM 5465ae996cbSDaniel Lezcano select CLKSRC_MMIO 547e074ff86SDmitry Eremin-Solenikov help 548e074ff86SDmitry Eremin-Solenikov This enables OST0 support available on PXA and SA-11x0 549e074ff86SDmitry Eremin-Solenikov platforms. 550618b902dSYoshinori Sato 55197a23bebSDaniel Lezcanoconfig H8300_TMR8 55246e7c3c6SDaniel Lezcano bool "Clockevent timer for the H8300 platform" if COMPILE_TEST 5532f8a26c1SArnd Bergmann depends on HAS_IOMEM 55446e7c3c6SDaniel Lezcano help 55546e7c3c6SDaniel Lezcano This enables the 8 bits timer for the H8300 platform. 55697a23bebSDaniel Lezcano 557618b902dSYoshinori Satoconfig H8300_TMR16 55846e7c3c6SDaniel Lezcano bool "Clockevent timer for the H83069 platform" if COMPILE_TEST 5592f8a26c1SArnd Bergmann depends on HAS_IOMEM 56046e7c3c6SDaniel Lezcano help 56146e7c3c6SDaniel Lezcano This enables the 16 bits timer for the H8300 platform with the 56206293463SRandy Dunlap H83069 CPU. 563618b902dSYoshinori Sato 564618b902dSYoshinori Satoconfig H8300_TPU 56546e7c3c6SDaniel Lezcano bool "Clocksource for the H8300 platform" if COMPILE_TEST 5662f8a26c1SArnd Bergmann depends on HAS_IOMEM 56746e7c3c6SDaniel Lezcano help 56846e7c3c6SDaniel Lezcano This enables the clocksource for the H8300 platform with the 56906293463SRandy Dunlap H8S2678 CPU. 570618b902dSYoshinori Sato 571bea5af41SShawn Guoconfig CLKSRC_IMX_GPT 572bea5af41SShawn Guo bool "Clocksource using i.MX GPT" if COMPILE_TEST 573*2f4574ddSArnd Bergmann depends on (ARM || ARM64) && HAVE_CLK 574bea5af41SShawn Guo select CLKSRC_MMIO 575bea5af41SShawn Guo 576059ab7b8SDong Aishengconfig CLKSRC_IMX_TPM 577059ab7b8SDong Aisheng bool "Clocksource using i.MX TPM" if COMPILE_TEST 578*2f4574ddSArnd Bergmann depends on (ARM || ARM64) && HAVE_CLK 579059ab7b8SDong Aisheng select CLKSRC_MMIO 580a6d0812aSAnson Huang select TIMER_OF 581059ab7b8SDong Aisheng help 582059ab7b8SDong Aisheng Enable this option to use IMX Timer/PWM Module (TPM) timer as 583059ab7b8SDong Aisheng clocksource. 584059ab7b8SDong Aisheng 5857117a44bSBai Pingconfig TIMER_IMX_SYS_CTR 5867117a44bSBai Ping bool "i.MX system counter timer" if COMPILE_TEST 5877117a44bSBai Ping select TIMER_OF 5887117a44bSBai Ping help 5897117a44bSBai Ping Enable this option to use i.MX system counter timer as a 5907117a44bSBai Ping clockevent. 5917117a44bSBai Ping 59270bef01cSLee Jonesconfig CLKSRC_ST_LPC 593baacaf83SDaniel Lezcano bool "Low power clocksource found in the LPC" if COMPILE_TEST 594bb0eb050SDaniel Lezcano select TIMER_OF if OF 595863ee050SRichard Weinberger depends on HAS_IOMEM 5962be6d9bfSArnd Bergmann select CLKSRC_MMIO 59770bef01cSLee Jones help 59870bef01cSLee Jones Enable this option to use the Low Power controller timer 59970bef01cSLee Jones as clocksource. 60070bef01cSLee Jones 60135dbb74aSRick Chenconfig ATCPIT100_TIMER 60235dbb74aSRick Chen bool "ATCPIT100 timer driver" 60335dbb74aSRick Chen depends on NDS32 || COMPILE_TEST 60435dbb74aSRick Chen depends on HAS_IOMEM 60535dbb74aSRick Chen select TIMER_OF 60635dbb74aSRick Chen default NDS32 60735dbb74aSRick Chen help 60835dbb74aSRick Chen This option enables support for the Andestech ATCPIT100 timers. 60935dbb74aSRick Chen 61062b01943SPalmer Dabbeltconfig RISCV_TIMER 6112bc3fc87SAnup Patel bool "Timer for the RISC-V platform" if COMPILE_TEST 612ab310544SKefeng Wang depends on GENERIC_SCHED_CLOCK && RISCV && RISCV_SBI 61362b01943SPalmer Dabbelt select TIMER_PROBE 61462b01943SPalmer Dabbelt select TIMER_OF 61562b01943SPalmer Dabbelt help 61662b01943SPalmer Dabbelt This enables the per-hart timer built into all RISC-V systems, which 61762b01943SPalmer Dabbelt is accessed via both the SBI and the rdcycle instruction. This is 61862b01943SPalmer Dabbelt required for all RISC-V systems. 61962b01943SPalmer Dabbelt 6202ac6795fSAnup Patelconfig CLINT_TIMER 6212ac6795fSAnup Patel bool "CLINT Timer for the RISC-V platform" if COMPILE_TEST 6222ac6795fSAnup Patel depends on GENERIC_SCHED_CLOCK && RISCV 6232ac6795fSAnup Patel select TIMER_PROBE 6242ac6795fSAnup Patel select TIMER_OF 6252ac6795fSAnup Patel help 6262ac6795fSAnup Patel This option enables the CLINT timer for RISC-V systems. The CLINT 6272ac6795fSAnup Patel driver is usually used for NoMMU RISC-V systems. 6282ac6795fSAnup Patel 629a7ad38b0SGuo Renconfig CSKY_MP_TIMER 630a7ad38b0SGuo Ren bool "SMP Timer for the C-SKY platform" if COMPILE_TEST 631a7ad38b0SGuo Ren depends on CSKY 632a7ad38b0SGuo Ren select TIMER_OF 633a7ad38b0SGuo Ren help 634a7ad38b0SGuo Ren Say yes here to enable C-SKY SMP timer driver used for C-SKY SMP 635a7ad38b0SGuo Ren system. 63606293463SRandy Dunlap csky,mptimer is not only used in SMP system, it also could be used in 63706293463SRandy Dunlap single core system. It's not a mmio reg and it uses mtcr/mfcr instruction. 638a7ad38b0SGuo Ren 63933745c3cSGuo Renconfig GX6605S_TIMER 64033745c3cSGuo Ren bool "Gx6605s SOC system timer driver" if COMPILE_TEST 64133745c3cSGuo Ren depends on CSKY 64233745c3cSGuo Ren select CLKSRC_MMIO 64333745c3cSGuo Ren select TIMER_OF 64433745c3cSGuo Ren help 64533745c3cSGuo Ren This option enables support for gx6605s SOC's timer. 64633745c3cSGuo Ren 647b58f28f3SSugaya Taichiconfig MILBEAUT_TIMER 648b58f28f3SSugaya Taichi bool "Milbeaut timer driver" if COMPILE_TEST 649b58f28f3SSugaya Taichi depends on OF 650b58f28f3SSugaya Taichi depends on ARM 651b58f28f3SSugaya Taichi select TIMER_OF 652b58f28f3SSugaya Taichi select CLKSRC_MMIO 653b58f28f3SSugaya Taichi help 654b58f28f3SSugaya Taichi Enables the support for Milbeaut timer driver. 655b58f28f3SSugaya Taichi 65634e93683SPaul Cercueilconfig INGENIC_TIMER 65734e93683SPaul Cercueil bool "Clocksource/timer using the TCU in Ingenic JZ SoCs" 65834e93683SPaul Cercueil default MACH_INGENIC 65934e93683SPaul Cercueil depends on MIPS || COMPILE_TEST 66034e93683SPaul Cercueil depends on COMMON_CLK 66134e93683SPaul Cercueil select MFD_SYSCON 66234e93683SPaul Cercueil select TIMER_OF 66334e93683SPaul Cercueil select IRQ_DOMAIN 66434e93683SPaul Cercueil help 66534e93683SPaul Cercueil Support for the timer/counter unit of the Ingenic JZ SoCs. 66634e93683SPaul Cercueil 6675ecafc12S周琰杰 (Zhou Yanjie)config INGENIC_SYSOST 6685ecafc12S周琰杰 (Zhou Yanjie) bool "Clocksource/timer using the SYSOST in Ingenic X SoCs" 6695ecafc12S周琰杰 (Zhou Yanjie) depends on MIPS || COMPILE_TEST 6705ecafc12S周琰杰 (Zhou Yanjie) depends on COMMON_CLK 6715ecafc12S周琰杰 (Zhou Yanjie) select MFD_SYSCON 6725ecafc12S周琰杰 (Zhou Yanjie) select TIMER_OF 6735ecafc12S周琰杰 (Zhou Yanjie) select IRQ_DOMAIN 6745ecafc12S周琰杰 (Zhou Yanjie) help 6755ecafc12S周琰杰 (Zhou Yanjie) Support for the SYSOST of the Ingenic X Series SoCs. 6765ecafc12S周琰杰 (Zhou Yanjie) 677ca7b72b5SMaarten ter Huurneconfig INGENIC_OST 6785ecafc12S周琰杰 (Zhou Yanjie) bool "Clocksource using the OST in Ingenic JZ SoCs" 679ca7b72b5SMaarten ter Huurne depends on MIPS || COMPILE_TEST 680ca7b72b5SMaarten ter Huurne depends on COMMON_CLK 681ca7b72b5SMaarten ter Huurne select MFD_SYSCON 682ca7b72b5SMaarten ter Huurne help 683ca7b72b5SMaarten ter Huurne Support for the Operating System Timer of the Ingenic JZ SoCs. 684ca7b72b5SMaarten ter Huurne 685625022a5SClaudiu Bezneaconfig MICROCHIP_PIT64B 686625022a5SClaudiu Beznea bool "Microchip PIT64B support" 687625022a5SClaudiu Beznea depends on OF || COMPILE_TEST 688625022a5SClaudiu Beznea select CLKSRC_MMIO 68925259f7aSMichael Ellerman select TIMER_OF 690625022a5SClaudiu Beznea help 691625022a5SClaudiu Beznea This option enables Microchip PIT64B timer for Atmel 692625022a5SClaudiu Beznea based system. It supports the oneshot, the periodic 693625022a5SClaudiu Beznea modes and high resolution. It is used as a clocksource 694625022a5SClaudiu Beznea and a clockevent. 695625022a5SClaudiu Beznea 69658394271SJean Delvareendmenu 697