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 469b8bb773SBaruch Siachconfig DIGICOLOR_TIMER 47e6c1db13SDaniel Lezcano bool "Digicolor timer driver" if COMPILE_TEST 482be6d9bfSArnd Bergmann select CLKSRC_MMIO 49d7023e62SRichard Weinberger depends on HAS_IOMEM 50e6c1db13SDaniel Lezcano help 51e6c1db13SDaniel Lezcano Enables the support for the digicolor timer driver. 529b8bb773SBaruch Siach 5306c3df49SJamie Ilesconfig DW_APB_TIMER 545b097f6bSDaniel Lezcano bool "DW APB timer driver" if COMPILE_TEST 555b097f6bSDaniel Lezcano help 565b097f6bSDaniel Lezcano Enables the support for the dw_apb timer. 57489bcceaSMattias Wallin 58cfda5901SDinh Nguyenconfig DW_APB_TIMER_OF 59cfda5901SDinh Nguyen bool 601b4eca0fSHeiko Stuebner select DW_APB_TIMER 61bb0eb050SDaniel Lezcano select TIMER_OF 62cfda5901SDinh Nguyen 63f5bf0ee4SLinus Walleijconfig FTTMR010_TIMER 64f5bf0ee4SLinus Walleij bool "Faraday Technology timer driver" if COMPILE_TEST 654750535bSLinus Walleij depends on HAS_IOMEM 664750535bSLinus Walleij select CLKSRC_MMIO 67bb0eb050SDaniel Lezcano select TIMER_OF 684750535bSLinus Walleij select MFD_SYSCON 694750535bSLinus Walleij help 70f5bf0ee4SLinus Walleij Enables support for the Faraday Technology timer block 71f5bf0ee4SLinus Walleij FTTMR010. 724750535bSLinus Walleij 7313e0b405SLinus Walleijconfig IXP4XX_TIMER 7413e0b405SLinus Walleij bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST 7513e0b405SLinus Walleij depends on HAS_IOMEM 7613e0b405SLinus Walleij select CLKSRC_MMIO 7713e0b405SLinus Walleij help 7813e0b405SLinus Walleij Enables support for the Intel XScale IXP4xx SoC timer. 7913e0b405SLinus Walleij 80468b8c4cSDaniel Lezcanoconfig ROCKCHIP_TIMER 8140ada2aaSDaniel Lezcano bool "Rockchip timer driver" if COMPILE_TEST 8240ada2aaSDaniel Lezcano depends on ARM || ARM64 83bb0eb050SDaniel Lezcano select TIMER_OF 845e0a39d0SAlexander Kochetkov select CLKSRC_MMIO 8540ada2aaSDaniel Lezcano help 8640ada2aaSDaniel Lezcano Enables the support for the rockchip timer driver. 87468b8c4cSDaniel Lezcano 886fe9cbd1SGregory CLEMENTconfig ARMADA_370_XP_TIMER 899519e80cSDaniel Lezcano bool "Armada 370 and XP timer driver" if COMPILE_TEST 909519e80cSDaniel Lezcano depends on ARM 91bb0eb050SDaniel Lezcano select TIMER_OF 922be6d9bfSArnd Bergmann select CLKSRC_MMIO 939519e80cSDaniel Lezcano help 949519e80cSDaniel Lezcano Enables the support for the Armada 370 and XP timer driver. 956fe9cbd1SGregory CLEMENT 96e4a6b378SCarlo Caioneconfig MESON6_TIMER 970b7a7bb7SDaniel Lezcano bool "Meson6 timer driver" if COMPILE_TEST 987b6b0a45SBeniamino Galvani select CLKSRC_MMIO 990b7a7bb7SDaniel Lezcano help 1000b7a7bb7SDaniel Lezcano Enables the support for the Meson6 timer driver. 101e4a6b378SCarlo Caione 1020c1dcfd5SSebastian Hesselbarthconfig ORION_TIMER 103c9165549SDaniel Lezcano bool "Orion timer driver" if COMPILE_TEST 104c9165549SDaniel Lezcano depends on ARM 105bb0eb050SDaniel Lezcano select TIMER_OF 1060c1dcfd5SSebastian Hesselbarth select CLKSRC_MMIO 107c9165549SDaniel Lezcano help 108c9165549SDaniel Lezcano Enables the support for the Orion timer driver 1090c1dcfd5SSebastian Hesselbarth 1104be78a86SAndreas Färberconfig OWL_TIMER 1114be78a86SAndreas Färber bool "Owl timer driver" if COMPILE_TEST 1124be78a86SAndreas Färber select CLKSRC_MMIO 1134be78a86SAndreas Färber help 1144be78a86SAndreas Färber Enables the support for the Actions Semi Owl timer driver. 1154be78a86SAndreas Färber 1167f83a132SManivannan Sadhasivamconfig RDA_TIMER 1177f83a132SManivannan Sadhasivam bool "RDA timer driver" if COMPILE_TEST 1187f83a132SManivannan Sadhasivam depends on GENERIC_CLOCKEVENTS 1197f83a132SManivannan Sadhasivam select CLKSRC_MMIO 1207f83a132SManivannan Sadhasivam select TIMER_OF 1217f83a132SManivannan Sadhasivam help 1227f83a132SManivannan Sadhasivam Enables the support for the RDA Micro timer driver. 1237f83a132SManivannan Sadhasivam 124119fd635SMaxime Ripardconfig SUN4I_TIMER 125b4fcd48bSDaniel Lezcano bool "Sun4i timer driver" if COMPILE_TEST 126d7023e62SRichard Weinberger depends on HAS_IOMEM 12771c568c0SMaxime Ripard select CLKSRC_MMIO 128239751edSDaniel Lezcano select TIMER_OF 129b4fcd48bSDaniel Lezcano help 130b4fcd48bSDaniel Lezcano Enables support for the Sun4i timer. 131b2ac5d75SMaxime Ripard 13267905540SMaxime Ripardconfig SUN5I_HSTIMER 133f0c5afb7SDaniel Lezcano bool "Sun5i timer driver" if COMPILE_TEST 13467905540SMaxime Ripard select CLKSRC_MMIO 135f0c5afb7SDaniel Lezcano depends on COMMON_CLK 136f0c5afb7SDaniel Lezcano help 137f0c5afb7SDaniel Lezcano Enables support the Sun5i timer. 13867905540SMaxime Ripard 139910978e7SThierry Redingconfig TEGRA_TIMER 140adce4bc8SDaniel Lezcano bool "Tegra timer driver" if COMPILE_TEST 1412be6d9bfSArnd Bergmann select CLKSRC_MMIO 142b4822dc7SJoseph Lo select TIMER_OF 143acb4bb3fSDmitry Osipenko depends on ARCH_TEGRA || COMPILE_TEST 144adce4bc8SDaniel Lezcano help 145adce4bc8SDaniel Lezcano Enables support for the Tegra driver. 146910978e7SThierry Reding 147ff7ec345STony Priskconfig VT8500_TIMER 148b4bdf7efSDaniel Lezcano bool "VT8500 timer driver" if COMPILE_TEST 149d7023e62SRichard Weinberger depends on HAS_IOMEM 150b4bdf7efSDaniel Lezcano help 151b4bdf7efSDaniel Lezcano Enables support for the VT8500 driver. 152ff7ec345STony Prisk 1531c00289eSTomer Maimonconfig NPCM7XX_TIMER 1541c00289eSTomer Maimon bool "NPCM7xx timer driver" if COMPILE_TEST 1551c00289eSTomer Maimon depends on HAS_IOMEM 15699834eeaSArnd Bergmann select TIMER_OF 1571c00289eSTomer Maimon select CLKSRC_MMIO 1581c00289eSTomer Maimon help 1591c00289eSTomer Maimon Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture, 1601c00289eSTomer Maimon While TIMER0 serves as clockevent and TIMER1 serves as clocksource. 1611c00289eSTomer Maimon 1624f0f234fSMichal Simekconfig CADENCE_TTC_TIMER 16357f49318SDaniel Lezcano bool "Cadence TTC timer driver" if COMPILE_TEST 16457f49318SDaniel Lezcano depends on COMMON_CLK 16557f49318SDaniel Lezcano help 16657f49318SDaniel Lezcano Enables support for the cadence ttc driver. 1674f0f234fSMichal Simek 168a8b1b9fcSDaniel Lezcanoconfig ASM9260_TIMER 169b9755841SDaniel Lezcano bool "ASM9260 timer driver" if COMPILE_TEST 170a8b1b9fcSDaniel Lezcano select CLKSRC_MMIO 171bb0eb050SDaniel Lezcano select TIMER_OF 172b9755841SDaniel Lezcano help 173b9755841SDaniel Lezcano Enables support for the ASM9260 timer. 174a8b1b9fcSDaniel Lezcano 175694e33a7SLinus Walleijconfig CLKSRC_NOMADIK_MTU 17670329653SDaniel Lezcano bool "Nomakdik clocksource driver" if COMPILE_TEST 17770329653SDaniel Lezcano depends on ARM 178694e33a7SLinus Walleij select CLKSRC_MMIO 179694e33a7SLinus Walleij help 180694e33a7SLinus Walleij Support for Multi Timer Unit. MTU provides access 181694e33a7SLinus Walleij to multiple interrupt generating programmable 182694e33a7SLinus Walleij 32-bit free running decrementing counters. 183694e33a7SLinus Walleij 184489bcceaSMattias Wallinconfig CLKSRC_DBX500_PRCMU 1851becd6edSDaniel Lezcano bool "Clocksource PRCMU Timer" if COMPILE_TEST 186d7023e62SRichard Weinberger depends on HAS_IOMEM 187489bcceaSMattias Wallin help 188489bcceaSMattias Wallin Use the always on PRCMU Timer as clocksource 189489bcceaSMattias Wallin 190ecf0efdcSDaniel Lezcanoconfig CLPS711X_TIMER 191ecf0efdcSDaniel Lezcano bool "Cirrus logic timer driver" if COMPILE_TEST 192ecf0efdcSDaniel Lezcano select CLKSRC_MMIO 193ecf0efdcSDaniel Lezcano help 194ecf0efdcSDaniel Lezcano Enables support for the Cirrus Logic PS711 timer. 195ecf0efdcSDaniel Lezcano 196b56d5d21SDaniel Lezcanoconfig ATLAS7_TIMER 197b56d5d21SDaniel Lezcano bool "Atlas7 timer driver" if COMPILE_TEST 198b56d5d21SDaniel Lezcano select CLKSRC_MMIO 199b56d5d21SDaniel Lezcano help 200b56d5d21SDaniel Lezcano Enables support for the Atlas7 timer. 201b56d5d21SDaniel Lezcano 202d81c50a0SDaniel Lezcanoconfig MXS_TIMER 203d81c50a0SDaniel Lezcano bool "Mxs timer driver" if COMPILE_TEST 204d81c50a0SDaniel Lezcano select CLKSRC_MMIO 205d81c50a0SDaniel Lezcano select STMP_DEVICE 206d81c50a0SDaniel Lezcano help 207d81c50a0SDaniel Lezcano Enables support for the Mxs timer. 208d81c50a0SDaniel Lezcano 209f3550d49SDaniel Lezcanoconfig PRIMA2_TIMER 210f3550d49SDaniel Lezcano bool "Prima2 timer driver" if COMPILE_TEST 211f3550d49SDaniel Lezcano select CLKSRC_MMIO 212f3550d49SDaniel Lezcano help 213f3550d49SDaniel Lezcano Enables support for the Prima2 timer. 214f3550d49SDaniel Lezcano 21585f98db4SDaniel Lezcanoconfig U300_TIMER 21685f98db4SDaniel Lezcano bool "U300 timer driver" if COMPILE_TEST 21785f98db4SDaniel Lezcano depends on ARM 21885f98db4SDaniel Lezcano select CLKSRC_MMIO 21985f98db4SDaniel Lezcano help 22085f98db4SDaniel Lezcano Enables support for the U300 timer. 22185f98db4SDaniel Lezcano 222d683b9dcSDaniel Lezcanoconfig NSPIRE_TIMER 223d683b9dcSDaniel Lezcano bool "NSpire timer driver" if COMPILE_TEST 224d683b9dcSDaniel Lezcano select CLKSRC_MMIO 225d683b9dcSDaniel Lezcano help 226d683b9dcSDaniel Lezcano Enables support for the Nspire timer. 227d683b9dcSDaniel Lezcano 228c12547a0SDaniel Lezcanoconfig KEYSTONE_TIMER 229c12547a0SDaniel Lezcano bool "Keystone timer driver" if COMPILE_TEST 230c12547a0SDaniel Lezcano depends on ARM || ARM64 231c12547a0SDaniel Lezcano select CLKSRC_MMIO 232c12547a0SDaniel Lezcano help 233c12547a0SDaniel Lezcano Enables support for the Keystone timer. 234c12547a0SDaniel Lezcano 235568c0342SDaniel Lezcanoconfig INTEGRATOR_AP_TIMER 236568c0342SDaniel Lezcano bool "Integrator-ap timer driver" if COMPILE_TEST 237568c0342SDaniel Lezcano select CLKSRC_MMIO 238568c0342SDaniel Lezcano help 239568c0342SDaniel Lezcano Enables support for the Integrator-ap timer. 240568c0342SDaniel Lezcano 2419c9b7818SUwe Kleine-Königconfig CLKSRC_EFM32 2429c9b7818SUwe Kleine-König bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32 2439c9b7818SUwe Kleine-König depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST) 24409ca2757SAxel Lin select CLKSRC_MMIO 2459c9b7818SUwe Kleine-König default ARCH_EFM32 2469c9b7818SUwe Kleine-König help 2479c9b7818SUwe Kleine-König Support to use the timers of EFM32 SoCs as clock source and clock 2489c9b7818SUwe Kleine-König event device. 2499c9b7818SUwe Kleine-König 250050dd322SJoachim Eastwoodconfig CLKSRC_LPC32XX 251ddcf48c7SDaniel Lezcano bool "Clocksource for LPC32XX" if COMPILE_TEST 2522f8a26c1SArnd Bergmann depends on HAS_IOMEM 2531b18fd20SEzequiel Garcia depends on ARM 254050dd322SJoachim Eastwood select CLKSRC_MMIO 255bb0eb050SDaniel Lezcano select TIMER_OF 256ddcf48c7SDaniel Lezcano help 257ddcf48c7SDaniel Lezcano Support for the LPC32XX clocksource. 258050dd322SJoachim Eastwood 25984583983SEzequiel Garciaconfig CLKSRC_PISTACHIO 260dfdb1652SDaniel Lezcano bool "Clocksource for Pistachio SoC" if COMPILE_TEST 2612f8a26c1SArnd Bergmann depends on HAS_IOMEM 262bb0eb050SDaniel Lezcano select TIMER_OF 263dfdb1652SDaniel Lezcano help 264dfdb1652SDaniel Lezcano Enables the clocksource for the Pistachio SoC. 26584583983SEzequiel Garcia 266fe851f56SFelipe Balbiconfig CLKSRC_TI_32K 267fe851f56SFelipe Balbi bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST 268dfedaf10SFelipe Balbi depends on GENERIC_SCHED_CLOCK 269bb0eb050SDaniel Lezcano select TIMER_OF if OF 270fe851f56SFelipe Balbi help 271fe851f56SFelipe Balbi This option enables support for Texas Instruments 32.768 Hz clocksource 272fe851f56SFelipe Balbi available on many OMAP-like platforms. 273fe851f56SFelipe Balbi 274a5322457SNoam Camusconfig CLKSRC_NPS 275a5322457SNoam Camus bool "NPS400 clocksource driver" if COMPILE_TEST 276a5322457SNoam Camus depends on !PHYS_ADDR_T_64BIT 277a5322457SNoam Camus select CLKSRC_MMIO 278bb0eb050SDaniel Lezcano select TIMER_OF if OF 279a5322457SNoam Camus help 280a5322457SNoam Camus NPS400 clocksource support. 281a5322457SNoam Camus Got 64 bit counter with update rate up to 1000MHz. 282a5322457SNoam Camus This counter is accessed via couple of 32 bit memory mapped registers. 283a5322457SNoam Camus 284e37e4593SMaxime Coquelinconfig CLKSRC_STM32 2851cb6c215SPaul Gortmaker bool "Clocksource for STM32 SoCs" if !ARCH_STM32 2861cb6c215SPaul Gortmaker depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST) 287e37e4593SMaxime Coquelin select CLKSRC_MMIO 288d04af490SBenjamin Gaignard select TIMER_OF 289e37e4593SMaxime Coquelin 2900302637fSVladimir Murzinconfig CLKSRC_MPS2 2910302637fSVladimir Murzin bool "Clocksource for MPS2 SoCs" if COMPILE_TEST 2920302637fSVladimir Murzin depends on GENERIC_SCHED_CLOCK 2930302637fSVladimir Murzin select CLKSRC_MMIO 294bb0eb050SDaniel Lezcano select TIMER_OF 2950302637fSVladimir Murzin 296c4c9a040SVineet Guptaconfig ARC_TIMERS 297c4c9a040SVineet Gupta bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST 298bf287607SAlexey Brodkin depends on GENERIC_SCHED_CLOCK 299bb0eb050SDaniel Lezcano select TIMER_OF 300c4c9a040SVineet Gupta help 301c4c9a040SVineet Gupta These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores 302c4c9a040SVineet Gupta (ARC700 as well as ARC HS38). 303c4c9a040SVineet Gupta TIMER0 serves as clockevent while TIMER1 provides clocksource 304c4c9a040SVineet Gupta 305c4c9a040SVineet Guptaconfig ARC_TIMERS_64BIT 306c4c9a040SVineet Gupta bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST 307c4c9a040SVineet Gupta depends on ARC_TIMERS 308bb0eb050SDaniel Lezcano select TIMER_OF 309c4c9a040SVineet Gupta help 310c4c9a040SVineet Gupta This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP) 311c4c9a040SVineet Gupta RTC is implemented inside the core, while GFRC sits outside the core in 312c4c9a040SVineet Gupta ARConnect IP block. Driver automatically picks one of them for clocksource 313c4c9a040SVineet Gupta as appropriate. 314c4c9a040SVineet Gupta 3158a4da6e3SMark Rutlandconfig ARM_ARCH_TIMER 3168a4da6e3SMark Rutland bool 317bb0eb050SDaniel Lezcano select TIMER_OF if OF 318fa1bffabSDaniel Lezcano select TIMER_ACPI if ACPI 319a2c5d4edSJames Hogan 320037f6377SWill Deaconconfig ARM_ARCH_TIMER_EVTSTREAM 32146fd5c6bSWill Deacon bool "Enable ARM architected timer event stream generation by default" 322037f6377SWill Deacon default y if ARM_ARCH_TIMER 32377f7ce9aSStephen Boyd depends on ARM_ARCH_TIMER 324037f6377SWill Deacon help 32546fd5c6bSWill Deacon This option enables support by default for event stream generation 32646fd5c6bSWill Deacon based on the ARM architected timer. It is used for waking up CPUs 32746fd5c6bSWill Deacon executing the wfe instruction at a frequency represented as a 32846fd5c6bSWill Deacon power-of-2 divisor of the clock rate. The behaviour can also be 32946fd5c6bSWill Deacon overridden on the command line using the 33046fd5c6bSWill Deacon clocksource.arm_arch_timer.evtstream parameter. 331037f6377SWill Deacon The main use of the event stream is wfe-based timeouts of userspace 332037f6377SWill Deacon locking implementations. It might also be useful for imposing timeout 333037f6377SWill Deacon on wfe to safeguard against any programming errors in case an expected 334037f6377SWill Deacon event is not generated. 335037f6377SWill Deacon This must be disabled for hardware validation purposes to detect any 336037f6377SWill Deacon hardware anomalies of missing events. 337037f6377SWill Deacon 33816d10ef2SDing Tianhongconfig ARM_ARCH_TIMER_OOL_WORKAROUND 33916d10ef2SDing Tianhong bool 34016d10ef2SDing Tianhong 341f6dc1576SScott Woodconfig FSL_ERRATUM_A008585 342f6dc1576SScott Wood bool "Workaround for Freescale/NXP Erratum A-008585" 343f6dc1576SScott Wood default y 344f6dc1576SScott Wood depends on ARM_ARCH_TIMER && ARM64 34516d10ef2SDing Tianhong select ARM_ARCH_TIMER_OOL_WORKAROUND 346f6dc1576SScott Wood help 347f6dc1576SScott Wood This option enables a workaround for Freescale/NXP Erratum 348f6dc1576SScott Wood A-008585 ("ARM generic timer may contain an erroneous 349f6dc1576SScott Wood value"). The workaround will only be active if the 350f6dc1576SScott Wood fsl,erratum-a008585 property is found in the timer node. 351f6dc1576SScott Wood 352bb42ca47SDing Tianhongconfig HISILICON_ERRATUM_161010101 353bb42ca47SDing Tianhong bool "Workaround for Hisilicon Erratum 161010101" 354bb42ca47SDing Tianhong default y 355bb42ca47SDing Tianhong select ARM_ARCH_TIMER_OOL_WORKAROUND 356bb42ca47SDing Tianhong depends on ARM_ARCH_TIMER && ARM64 357bb42ca47SDing Tianhong help 358bb42ca47SDing Tianhong This option enables a workaround for Hisilicon Erratum 359bb42ca47SDing Tianhong 161010101. The workaround will be active if the hisilicon,erratum-161010101 360bb42ca47SDing Tianhong property is found in the timer node. 361bb42ca47SDing Tianhong 362fa8d815fSMarc Zyngierconfig ARM64_ERRATUM_858921 363fa8d815fSMarc Zyngier bool "Workaround for Cortex-A73 erratum 858921" 364fa8d815fSMarc Zyngier default y 365fa8d815fSMarc Zyngier select ARM_ARCH_TIMER_OOL_WORKAROUND 366fa8d815fSMarc Zyngier depends on ARM_ARCH_TIMER && ARM64 367fa8d815fSMarc Zyngier help 368fa8d815fSMarc Zyngier This option enables a workaround applicable to Cortex-A73 369fa8d815fSMarc Zyngier (all versions), whose counter may return incorrect values. 370fa8d815fSMarc Zyngier The workaround will be dynamically enabled when an affected 371fa8d815fSMarc Zyngier core is detected. 372fa8d815fSMarc Zyngier 373c950ca8cSSamuel Hollandconfig SUN50I_ERRATUM_UNKNOWN1 374c950ca8cSSamuel Holland bool "Workaround for Allwinner A64 erratum UNKNOWN1" 375c950ca8cSSamuel Holland default y 376c950ca8cSSamuel Holland depends on ARM_ARCH_TIMER && ARM64 && ARCH_SUNXI 377c950ca8cSSamuel Holland select ARM_ARCH_TIMER_OOL_WORKAROUND 378c950ca8cSSamuel Holland help 379c950ca8cSSamuel Holland This option enables a workaround for instability in the timer on 380c950ca8cSSamuel Holland the Allwinner A64 SoC. The workaround will only be active if the 381c950ca8cSSamuel Holland allwinner,erratum-unknown1 property is found in the timer node. 382c950ca8cSSamuel Holland 383c1b40e44SStuart Menefyconfig ARM_GLOBAL_TIMER 38467a87a43SDaniel Lezcano bool "Support for the ARM global timer" if COMPILE_TEST 385bb0eb050SDaniel Lezcano select TIMER_OF if OF 38667a87a43SDaniel Lezcano depends on ARM 387c1b40e44SStuart Menefy help 388c1b40e44SStuart Menefy This options enables support for the ARM global timer unit 389c1b40e44SStuart Menefy 3900b7402dcSSudeep Hollaconfig ARM_TIMER_SP804 391dfc82faaSDavid Abdurachmanov bool "Support for Dual Timer SP804 module" if COMPILE_TEST 392002af195SGuenter Roeck depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP 3930b7402dcSSudeep Holla select CLKSRC_MMIO 394bb0eb050SDaniel Lezcano select TIMER_OF if OF 3950b7402dcSSudeep Holla 396c1b40e44SStuart Menefyconfig CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK 397c1b40e44SStuart Menefy bool 398c1b40e44SStuart Menefy depends on ARM_GLOBAL_TIMER 399c1b40e44SStuart Menefy default y 400c1b40e44SStuart Menefy help 401c1b40e44SStuart Menefy Use ARM global timer clock source as sched_clock 402c1b40e44SStuart Menefy 4034958ebb3SMaxime Coquelinconfig ARMV7M_SYSTICK 404e2146d86SDaniel Lezcano bool "Support for the ARMv7M system time" if COMPILE_TEST 405bb0eb050SDaniel Lezcano select TIMER_OF if OF 4064958ebb3SMaxime Coquelin select CLKSRC_MMIO 4074958ebb3SMaxime Coquelin help 4084958ebb3SMaxime Coquelin This options enables support for the ARMv7M system timer unit 4094958ebb3SMaxime Coquelin 410b052ff30SMaxime Ripardconfig ATMEL_PIT 4112f982703SAlexandre Belloni bool "Atmel PIT support" if COMPILE_TEST 4122f982703SAlexandre Belloni depends on HAS_IOMEM 413bb0eb050SDaniel Lezcano select TIMER_OF if OF 4142f982703SAlexandre Belloni help 4152f982703SAlexandre Belloni Support for the Periodic Interval Timer found on Atmel SoCs. 416b052ff30SMaxime Ripard 417b53cdd03SAlexandre Belloniconfig ATMEL_ST 418b988d3f0SDaniel Lezcano bool "Atmel ST timer support" if COMPILE_TEST 419bd2746f0SMasahiro Yamada depends on HAS_IOMEM 420bb0eb050SDaniel Lezcano select TIMER_OF 4217ab7ef74SAlexandre Belloni select MFD_SYSCON 422b988d3f0SDaniel Lezcano help 423b988d3f0SDaniel Lezcano Support for the Atmel ST timer. 424b53cdd03SAlexandre Belloni 4256275f494SAlexandre Belloniconfig ATMEL_TCB_CLKSRC 4266275f494SAlexandre Belloni bool "Atmel TC Block timer driver" if COMPILE_TEST 4276275f494SAlexandre Belloni depends on HAS_IOMEM 4286275f494SAlexandre Belloni select TIMER_OF if OF 4296275f494SAlexandre Belloni help 4306275f494SAlexandre Belloni Support for Timer Counter Blocks on Atmel SoCs. 4316275f494SAlexandre Belloni 4326938d75aSThomas Abrahamconfig CLKSRC_EXYNOS_MCT 43339366ef4SDaniel Lezcano bool "Exynos multi core timer driver" if COMPILE_TEST 434f1a4c1f3SChanwoo Choi depends on ARM || ARM64 4356938d75aSThomas Abraham help 4366938d75aSThomas Abraham Support for Multi Core Timer controller on Exynos SoCs. 437241a9871SArnd Bergmann 438f1189989STomasz Figaconfig CLKSRC_SAMSUNG_PWM 439de37b0b5SAlexandre Belloni bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST 440d7023e62SRichard Weinberger depends on HAS_IOMEM 441f1189989STomasz Figa help 442f1189989STomasz Figa This is a new clocksource driver for the PWM timer found in 443f1189989STomasz Figa Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver 444f1189989STomasz Figa for all devicetree enabled platforms. This driver will be 445f1189989STomasz Figa needed only on systems that do not have the Exynos MCT available. 446c1967249SJingchang Lu 4472529c3a3SXiubo Liconfig FSL_FTM_TIMER 448ef49336bSDaniel Lezcano bool "Freescale FlexTimer Module driver" if COMPILE_TEST 449d7023e62SRichard Weinberger depends on HAS_IOMEM 45003724ac3SDaniel Lezcano select CLKSRC_MMIO 4512529c3a3SXiubo Li help 4522529c3a3SXiubo Li Support for Freescale FlexTimer Module (FTM) timer. 4532529c3a3SXiubo Li 454c1967249SJingchang Luconfig VF_PIT_TIMER 455c1967249SJingchang Lu bool 4562be6d9bfSArnd Bergmann select CLKSRC_MMIO 457c1967249SJingchang Lu help 458c1967249SJingchang Lu Support for Period Interrupt Timer on Freescale Vybrid Family SoCs. 459fd3f1270SMagnus Damm 46089355274SNeil Armstrongconfig OXNAS_RPS_TIMER 46189355274SNeil Armstrong bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST 462bb0eb050SDaniel Lezcano select TIMER_OF 46389355274SNeil Armstrong select CLKSRC_MMIO 46489355274SNeil Armstrong help 46589355274SNeil Armstrong This enables support for the Oxford Semiconductor OXNAS RPS timers. 46689355274SNeil Armstrong 467fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_CMT 468fd3f1270SMagnus Damm bool 469fd3f1270SMagnus Damm 470ecb3530dSMatthias Bruggerconfig MTK_TIMER 471fbca9eabSDaniel Lezcano bool "Mediatek timer driver" if COMPILE_TEST 4722f8a26c1SArnd Bergmann depends on HAS_IOMEM 473bb0eb050SDaniel Lezcano select TIMER_OF 474ecb3530dSMatthias Brugger select CLKSRC_MMIO 475fbca9eabSDaniel Lezcano help 476fbca9eabSDaniel Lezcano Support for Mediatek timer driver. 477ecb3530dSMatthias Brugger 478067bc914SBaolin Wangconfig SPRD_TIMER 4798a1ece26SChunyan Zhang bool "Spreadtrum timer driver" if EXPERT 480067bc914SBaolin Wang depends on HAS_IOMEM 4818a1ece26SChunyan Zhang depends on (ARCH_SPRD || COMPILE_TEST) 4828a1ece26SChunyan Zhang default ARCH_SPRD 483067bc914SBaolin Wang select TIMER_OF 484067bc914SBaolin Wang help 485067bc914SBaolin Wang Enables support for the Spreadtrum timer driver. 486067bc914SBaolin Wang 487fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_MTU2 488fd3f1270SMagnus Damm bool 489fd3f1270SMagnus Damm 490fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_TMU 491fd3f1270SMagnus Damm bool 492fd3f1270SMagnus Damm 493fd3f1270SMagnus Dammconfig SYS_SUPPORTS_EM_STI 494fd3f1270SMagnus Damm bool 495fd3f1270SMagnus Damm 4969995f4f1SRich Felkerconfig CLKSRC_JCORE_PIT 4979995f4f1SRich Felker bool "J-Core PIT timer driver" if COMPILE_TEST 4989995f4f1SRich Felker depends on OF 4999995f4f1SRich Felker depends on HAS_IOMEM 5009995f4f1SRich Felker select CLKSRC_MMIO 5019995f4f1SRich Felker help 5029995f4f1SRich Felker This enables build of clocksource and clockevent driver for 5039995f4f1SRich Felker the integrated PIT in the J-Core synthesizable, open source SoC. 5049995f4f1SRich Felker 505fd3f1270SMagnus Dammconfig SH_TIMER_CMT 506fd3f1270SMagnus Damm bool "Renesas CMT timer driver" if COMPILE_TEST 50711bc26feSRichard Weinberger depends on HAS_IOMEM 508fd3f1270SMagnus Damm default SYS_SUPPORTS_SH_CMT 509fd3f1270SMagnus Damm help 510fd3f1270SMagnus Damm This enables build of a clocksource and clockevent driver for 511fd3f1270SMagnus Damm the Compare Match Timer (CMT) hardware available in 16/32/48-bit 512fd3f1270SMagnus Damm variants on a wide range of Mobile and Automotive SoCs from Renesas. 513fd3f1270SMagnus Damm 514fd3f1270SMagnus Dammconfig SH_TIMER_MTU2 515fd3f1270SMagnus Damm bool "Renesas MTU2 timer driver" if COMPILE_TEST 51611bc26feSRichard Weinberger depends on HAS_IOMEM 517fd3f1270SMagnus Damm default SYS_SUPPORTS_SH_MTU2 518fd3f1270SMagnus Damm help 519fd3f1270SMagnus Damm This enables build of a clockevent driver for the Multi-Function 5207e139187SKuninori Morimoto Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas. 521fd3f1270SMagnus Damm This hardware comes with 16 bit-timer registers. 522fd3f1270SMagnus Damm 523fb6002a8SChris Brandtconfig RENESAS_OSTM 524fb6002a8SChris Brandt bool "Renesas OSTM timer driver" if COMPILE_TEST 525fb6002a8SChris Brandt select CLKSRC_MMIO 526fb6002a8SChris Brandt help 527fb6002a8SChris Brandt Enables the support for the Renesas OSTM. 528fb6002a8SChris Brandt 529fd3f1270SMagnus Dammconfig SH_TIMER_TMU 530fd3f1270SMagnus Damm bool "Renesas TMU timer driver" if COMPILE_TEST 53111bc26feSRichard Weinberger depends on HAS_IOMEM 532fd3f1270SMagnus Damm default SYS_SUPPORTS_SH_TMU 533fd3f1270SMagnus Damm help 534fd3f1270SMagnus Damm This enables build of a clocksource and clockevent driver for 535fd3f1270SMagnus Damm the 32-bit Timer Unit (TMU) hardware available on a wide range 536fd3f1270SMagnus Damm SoCs from Renesas. 537fd3f1270SMagnus Damm 538fd3f1270SMagnus Dammconfig EM_TIMER_STI 539fd3f1270SMagnus Damm bool "Renesas STI timer driver" if COMPILE_TEST 5402f8a26c1SArnd Bergmann depends on HAS_IOMEM 541fd3f1270SMagnus Damm default SYS_SUPPORTS_EM_STI 542fd3f1270SMagnus Damm help 543fd3f1270SMagnus Damm This enables build of a clocksource and clockevent driver for 544fd3f1270SMagnus Damm the 48-bit System Timer (STI) hardware available on a SoCs 545fd3f1270SMagnus Damm such as EMEV2 from former NEC Electronics. 546dfc25e45SLinus Torvalds 5473f8e8ceeSKumar Galaconfig CLKSRC_QCOM 5483dc0e9f6SDaniel Lezcano bool "Qualcomm MSM timer" if COMPILE_TEST 5493dc0e9f6SDaniel Lezcano depends on ARM 550bb0eb050SDaniel Lezcano select TIMER_OF 5513dc0e9f6SDaniel Lezcano help 5523dc0e9f6SDaniel Lezcano This enables the clocksource and the per CPU clockevent driver for the 5533dc0e9f6SDaniel Lezcano Qualcomm SoCs. 554220e2a8dSPawel Moll 555220e2a8dSPawel Mollconfig CLKSRC_VERSATILE 5565cc87a4dSDaniel Lezcano bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST 5575cc87a4dSDaniel Lezcano depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET 558bb0eb050SDaniel Lezcano select TIMER_OF 559220e2a8dSPawel Moll default y if MFD_VEXPRESS_SYSREG 560220e2a8dSPawel Moll help 561220e2a8dSPawel Moll This option enables clock source based on free running 562220e2a8dSPawel Moll counter available in the "System Registers" block of 563220e2a8dSPawel Moll ARM Versatile, RealView and Versatile Express reference 564220e2a8dSPawel Moll platforms. 56558394271SJean Delvare 566fa5635a2SAndrew Brestickerconfig CLKSRC_MIPS_GIC 567fa5635a2SAndrew Bresticker bool 568fa5635a2SAndrew Bresticker depends on MIPS_GIC 569bb0eb050SDaniel Lezcano select TIMER_OF 570fa5635a2SAndrew Bresticker 571ccd63ce4SMarc Gonzalezconfig CLKSRC_TANGO_XTAL 5725a7351f0SDaniel Lezcano bool "Clocksource for Tango SoC" if COMPILE_TEST 5735a7351f0SDaniel Lezcano depends on ARM 574bb0eb050SDaniel Lezcano select TIMER_OF 5750881841fSDaniel Lezcano select CLKSRC_MMIO 5765a7351f0SDaniel Lezcano help 5775a7351f0SDaniel Lezcano This enables the clocksource for Tango SoC 578ccd63ce4SMarc Gonzalez 579e074ff86SDmitry Eremin-Solenikovconfig CLKSRC_PXA 5805ae996cbSDaniel Lezcano bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST 581d7023e62SRichard Weinberger depends on HAS_IOMEM 5825ae996cbSDaniel Lezcano select CLKSRC_MMIO 583e074ff86SDmitry Eremin-Solenikov help 584e074ff86SDmitry Eremin-Solenikov This enables OST0 support available on PXA and SA-11x0 585e074ff86SDmitry Eremin-Solenikov platforms. 586618b902dSYoshinori Sato 58797a23bebSDaniel Lezcanoconfig H8300_TMR8 58846e7c3c6SDaniel Lezcano bool "Clockevent timer for the H8300 platform" if COMPILE_TEST 5892f8a26c1SArnd Bergmann depends on HAS_IOMEM 59046e7c3c6SDaniel Lezcano help 59146e7c3c6SDaniel Lezcano This enables the 8 bits timer for the H8300 platform. 59297a23bebSDaniel Lezcano 593618b902dSYoshinori Satoconfig H8300_TMR16 59446e7c3c6SDaniel Lezcano bool "Clockevent timer for the H83069 platform" if COMPILE_TEST 5952f8a26c1SArnd Bergmann depends on HAS_IOMEM 59646e7c3c6SDaniel Lezcano help 59746e7c3c6SDaniel Lezcano This enables the 16 bits timer for the H8300 platform with the 59846e7c3c6SDaniel Lezcano H83069 cpu. 599618b902dSYoshinori Sato 600618b902dSYoshinori Satoconfig H8300_TPU 60146e7c3c6SDaniel Lezcano bool "Clocksource for the H8300 platform" if COMPILE_TEST 6022f8a26c1SArnd Bergmann depends on HAS_IOMEM 60346e7c3c6SDaniel Lezcano help 60446e7c3c6SDaniel Lezcano This enables the clocksource for the H8300 platform with the 60546e7c3c6SDaniel Lezcano H8S2678 cpu. 606618b902dSYoshinori Sato 607bea5af41SShawn Guoconfig CLKSRC_IMX_GPT 608bea5af41SShawn Guo bool "Clocksource using i.MX GPT" if COMPILE_TEST 609df181e38SAnson Huang depends on (ARM || ARM64) && CLKDEV_LOOKUP 610bea5af41SShawn Guo select CLKSRC_MMIO 611bea5af41SShawn Guo 612059ab7b8SDong Aishengconfig CLKSRC_IMX_TPM 613059ab7b8SDong Aisheng bool "Clocksource using i.MX TPM" if COMPILE_TEST 6142f8a26c1SArnd Bergmann depends on ARM && CLKDEV_LOOKUP 615059ab7b8SDong Aisheng select CLKSRC_MMIO 616059ab7b8SDong Aisheng help 617059ab7b8SDong Aisheng Enable this option to use IMX Timer/PWM Module (TPM) timer as 618059ab7b8SDong Aisheng clocksource. 619059ab7b8SDong Aisheng 620*7117a44bSBai Pingconfig TIMER_IMX_SYS_CTR 621*7117a44bSBai Ping bool "i.MX system counter timer" if COMPILE_TEST 622*7117a44bSBai Ping select TIMER_OF 623*7117a44bSBai Ping help 624*7117a44bSBai Ping Enable this option to use i.MX system counter timer as a 625*7117a44bSBai Ping clockevent. 626*7117a44bSBai Ping 62770bef01cSLee Jonesconfig CLKSRC_ST_LPC 628baacaf83SDaniel Lezcano bool "Low power clocksource found in the LPC" if COMPILE_TEST 629bb0eb050SDaniel Lezcano select TIMER_OF if OF 630863ee050SRichard Weinberger depends on HAS_IOMEM 6312be6d9bfSArnd Bergmann select CLKSRC_MMIO 63270bef01cSLee Jones help 63370bef01cSLee Jones Enable this option to use the Low Power controller timer 63470bef01cSLee Jones as clocksource. 63570bef01cSLee Jones 63635dbb74aSRick Chenconfig ATCPIT100_TIMER 63735dbb74aSRick Chen bool "ATCPIT100 timer driver" 63835dbb74aSRick Chen depends on NDS32 || COMPILE_TEST 63935dbb74aSRick Chen depends on HAS_IOMEM 64035dbb74aSRick Chen select TIMER_OF 64135dbb74aSRick Chen default NDS32 64235dbb74aSRick Chen help 64335dbb74aSRick Chen This option enables support for the Andestech ATCPIT100 timers. 64435dbb74aSRick Chen 64562b01943SPalmer Dabbeltconfig RISCV_TIMER 64662b01943SPalmer Dabbelt bool "Timer for the RISC-V platform" 64792e0d143SAnup Patel depends on GENERIC_SCHED_CLOCK && RISCV 64862b01943SPalmer Dabbelt default y 64962b01943SPalmer Dabbelt select TIMER_PROBE 65062b01943SPalmer Dabbelt select TIMER_OF 65162b01943SPalmer Dabbelt help 65262b01943SPalmer Dabbelt This enables the per-hart timer built into all RISC-V systems, which 65362b01943SPalmer Dabbelt is accessed via both the SBI and the rdcycle instruction. This is 65462b01943SPalmer Dabbelt required for all RISC-V systems. 65562b01943SPalmer Dabbelt 656a7ad38b0SGuo Renconfig CSKY_MP_TIMER 657a7ad38b0SGuo Ren bool "SMP Timer for the C-SKY platform" if COMPILE_TEST 658a7ad38b0SGuo Ren depends on CSKY 659a7ad38b0SGuo Ren select TIMER_OF 660a7ad38b0SGuo Ren help 661a7ad38b0SGuo Ren Say yes here to enable C-SKY SMP timer driver used for C-SKY SMP 662a7ad38b0SGuo Ren system. 663a7ad38b0SGuo Ren csky,mptimer is not only used in SMP system, it also could be used 664a7ad38b0SGuo Ren single core system. It's not a mmio reg and it use mtcr/mfcr instruction. 665a7ad38b0SGuo Ren 66633745c3cSGuo Renconfig GX6605S_TIMER 66733745c3cSGuo Ren bool "Gx6605s SOC system timer driver" if COMPILE_TEST 66833745c3cSGuo Ren depends on CSKY 66933745c3cSGuo Ren select CLKSRC_MMIO 67033745c3cSGuo Ren select TIMER_OF 67133745c3cSGuo Ren help 67233745c3cSGuo Ren This option enables support for gx6605s SOC's timer. 67333745c3cSGuo Ren 674b58f28f3SSugaya Taichiconfig MILBEAUT_TIMER 675b58f28f3SSugaya Taichi bool "Milbeaut timer driver" if COMPILE_TEST 676b58f28f3SSugaya Taichi depends on OF 677b58f28f3SSugaya Taichi depends on ARM 678b58f28f3SSugaya Taichi select TIMER_OF 679b58f28f3SSugaya Taichi select CLKSRC_MMIO 680b58f28f3SSugaya Taichi help 681b58f28f3SSugaya Taichi Enables the support for Milbeaut timer driver. 682b58f28f3SSugaya Taichi 68358394271SJean Delvareendmenu 684