blob: 14c7c4712478769e4ffcaaba4c80c5630ad14ed5 [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Jean Delvare58394272014-06-16 11:48:45 +02002menu "Clock Source drivers"
Arnd Bergmann2f8a26c2017-09-05 17:04:56 +02003 depends on GENERIC_CLOCKEVENTS
Jean Delvare58394272014-06-16 11:48:45 +02004
Daniel Lezcanobb0eb052017-05-26 19:34:11 +02005config TIMER_OF
Stephen Warrenae278a92012-11-19 16:41:20 -07006 bool
Daniel Lezcanobb0eb052017-05-26 19:34:11 +02007 select TIMER_PROBE
Marc Zyngieraad83b152015-09-28 15:49:16 +01008
Daniel Lezcanofa1bffa2017-05-26 19:40:24 +02009config TIMER_ACPI
Marc Zyngieraad83b152015-09-28 15:49:16 +010010 bool
Daniel Lezcanobb0eb052017-05-26 19:34:11 +020011 select TIMER_PROBE
Marc Zyngieraad83b152015-09-28 15:49:16 +010012
Daniel Lezcanobb0eb052017-05-26 19:34:11 +020013config TIMER_PROBE
Marc Zyngieraad83b152015-09-28 15:49:16 +010014 bool
Stephen Warrenae278a92012-11-19 16:41:20 -070015
Russell King89c0b8e2011-05-08 18:47:58 +010016config CLKSRC_I8253
17 bool
Russell King442c8172011-05-08 14:06:52 +010018
Thomas Gleixnere6220bd2011-06-09 13:08:25 +000019config CLKEVT_I8253
20 bool
21
Ralf Baechle15f304b2011-06-01 19:04:59 +010022config I8253_LOCK
23 bool
24
Keerthyaf04aa82018-02-15 11:31:46 +053025config OMAP_DM_TIMER
26 bool
27
Ralf Baechle15f304b2011-06-01 19:04:59 +010028config CLKBLD_I8253
Thomas Gleixnere6220bd2011-06-09 13:08:25 +000029 def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
Ralf Baechle15f304b2011-06-01 19:04:59 +010030
Russell King442c8172011-05-08 14:06:52 +010031config CLKSRC_MMIO
32 bool
Jamie Iles06c3df42011-06-06 12:43:07 +010033
Daniel Lezcano2ea879a2016-06-02 18:35:38 +020034config BCM2835_TIMER
35 bool "BCM2835 timer driver" if COMPILE_TEST
Daniel Lezcano2ea879a2016-06-02 18:35:38 +020036 select CLKSRC_MMIO
37 help
38 Enables the support for the BCM2835 timer driver.
39
Daniel Lezcano1cad71e2016-06-02 19:20:36 +020040config BCM_KONA_TIMER
41 bool "BCM mobile timer driver" if COMPILE_TEST
Daniel Lezcano1cad71e2016-06-02 19:20:36 +020042 select CLKSRC_MMIO
43 help
44 Enables the support for the BCM Kona mobile timer driver.
45
Bartosz Golaszewski721154f2019-06-24 11:50:55 +020046config DAVINCI_TIMER
47 bool "Texas Instruments DaVinci timer driver" if COMPILE_TEST
48 help
49 Enables the support for the TI DaVinci timer driver.
50
Baruch Siach9b8bb772015-01-26 20:35:18 +020051config DIGICOLOR_TIMER
Daniel Lezcanoe6c1db12015-10-30 22:32:10 +010052 bool "Digicolor timer driver" if COMPILE_TEST
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +010053 select CLKSRC_MMIO
Richard Weinbergerd7023e622016-01-25 23:24:19 +010054 depends on HAS_IOMEM
Daniel Lezcanoe6c1db12015-10-30 22:32:10 +010055 help
56 Enables the support for the digicolor timer driver.
Baruch Siach9b8bb772015-01-26 20:35:18 +020057
Jamie Iles06c3df42011-06-06 12:43:07 +010058config DW_APB_TIMER
Daniel Lezcano5b097f62015-10-30 22:35:00 +010059 bool "DW APB timer driver" if COMPILE_TEST
60 help
61 Enables the support for the dw_apb timer.
Mattias Wallin489bcce2011-05-27 10:30:12 +020062
Dinh Nguyencfda5902012-07-11 15:13:16 -050063config DW_APB_TIMER_OF
64 bool
Heiko Stuebner1b4eca02013-06-04 11:38:11 +020065 select DW_APB_TIMER
Daniel Lezcanobb0eb052017-05-26 19:34:11 +020066 select TIMER_OF
Dinh Nguyencfda5902012-07-11 15:13:16 -050067
Linus Walleijf5bf0ee2017-03-24 22:32:34 +010068config FTTMR010_TIMER
69 bool "Faraday Technology timer driver" if COMPILE_TEST
Linus Walleij47505352017-01-22 13:17:17 +010070 depends on HAS_IOMEM
71 select CLKSRC_MMIO
Daniel Lezcanobb0eb052017-05-26 19:34:11 +020072 select TIMER_OF
Linus Walleij47505352017-01-22 13:17:17 +010073 select MFD_SYSCON
74 help
Linus Walleijf5bf0ee2017-03-24 22:32:34 +010075 Enables support for the Faraday Technology timer block
76 FTTMR010.
Linus Walleij47505352017-01-22 13:17:17 +010077
Linus Walleij13e0b402019-01-26 00:49:19 +010078config IXP4XX_TIMER
79 bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST
80 depends on HAS_IOMEM
81 select CLKSRC_MMIO
82 help
83 Enables support for the Intel XScale IXP4xx SoC timer.
84
Daniel Lezcano468b8c42015-01-25 22:06:02 +010085config ROCKCHIP_TIMER
Daniel Lezcano40ada2a2015-10-30 17:58:47 +010086 bool "Rockchip timer driver" if COMPILE_TEST
87 depends on ARM || ARM64
Daniel Lezcanobb0eb052017-05-26 19:34:11 +020088 select TIMER_OF
Alexander Kochetkov5e0a39d2017-01-31 15:43:14 +030089 select CLKSRC_MMIO
Daniel Lezcano40ada2a2015-10-30 17:58:47 +010090 help
Randy Dunlap06293462019-11-27 21:10:22 -080091 Enables the support for the Rockchip timer driver.
Daniel Lezcano468b8c42015-01-25 22:06:02 +010092
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020093config ARMADA_370_XP_TIMER
Daniel Lezcano9519e802015-10-30 20:30:34 +010094 bool "Armada 370 and XP timer driver" if COMPILE_TEST
95 depends on ARM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +020096 select TIMER_OF
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +010097 select CLKSRC_MMIO
Daniel Lezcano9519e802015-10-30 20:30:34 +010098 help
99 Enables the support for the Armada 370 and XP timer driver.
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +0200100
Carlo Caionee4a6b372014-09-29 01:50:05 +0200101config MESON6_TIMER
Daniel Lezcano0b7a7bb2015-10-30 22:07:39 +0100102 bool "Meson6 timer driver" if COMPILE_TEST
Beniamino Galvani7b6b0a42014-11-18 16:41:20 +0100103 select CLKSRC_MMIO
Daniel Lezcano0b7a7bb2015-10-30 22:07:39 +0100104 help
105 Enables the support for the Meson6 timer driver.
Carlo Caionee4a6b372014-09-29 01:50:05 +0200106
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +0200107config ORION_TIMER
Daniel Lezcanoc9165542015-10-30 22:28:31 +0100108 bool "Orion timer driver" if COMPILE_TEST
109 depends on ARM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200110 select TIMER_OF
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +0200111 select CLKSRC_MMIO
Daniel Lezcanoc9165542015-10-30 22:28:31 +0100112 help
113 Enables the support for the Orion timer driver
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +0200114
Andreas Färber4be78a82017-02-23 19:27:12 +0100115config OWL_TIMER
116 bool "Owl timer driver" if COMPILE_TEST
Andreas Färber4be78a82017-02-23 19:27:12 +0100117 select CLKSRC_MMIO
118 help
119 Enables the support for the Actions Semi Owl timer driver.
120
Manivannan Sadhasivam7f83a132018-12-10 23:05:46 +0530121config RDA_TIMER
122 bool "RDA timer driver" if COMPILE_TEST
Manivannan Sadhasivam7f83a132018-12-10 23:05:46 +0530123 select CLKSRC_MMIO
124 select TIMER_OF
125 help
126 Enables the support for the RDA Micro timer driver.
127
Maxime Ripard119fd632013-03-24 11:49:25 +0100128config SUN4I_TIMER
Daniel Lezcanob4fcd482015-10-30 22:39:00 +0100129 bool "Sun4i timer driver" if COMPILE_TEST
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100130 depends on HAS_IOMEM
Maxime Ripard71c568c2013-10-14 21:07:46 +0200131 select CLKSRC_MMIO
Daniel Lezcano239751e2017-06-06 23:07:51 +0200132 select TIMER_OF
Daniel Lezcanob4fcd482015-10-30 22:39:00 +0100133 help
134 Enables support for the Sun4i timer.
Maxime Ripardb2ac5d72012-11-12 15:07:50 +0100135
Maxime Ripard67905542013-11-07 12:01:48 +0100136config SUN5I_HSTIMER
Daniel Lezcanof0c5afb2015-10-31 17:01:46 +0100137 bool "Sun5i timer driver" if COMPILE_TEST
Maxime Ripard67905542013-11-07 12:01:48 +0100138 select CLKSRC_MMIO
Daniel Lezcanof0c5afb2015-10-31 17:01:46 +0100139 depends on COMMON_CLK
140 help
141 Enables support the Sun5i timer.
Maxime Ripard67905542013-11-07 12:01:48 +0100142
Thierry Reding910978e72014-07-07 15:26:30 +0200143config TEGRA_TIMER
Daniel Lezcanoadce4bc2015-10-31 20:13:09 +0100144 bool "Tegra timer driver" if COMPILE_TEST
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +0100145 select CLKSRC_MMIO
Joseph Lob4822dc2019-02-21 15:21:44 +0800146 select TIMER_OF
Dmitry Osipenkoacb4bb32019-06-03 21:59:46 +0300147 depends on ARCH_TEGRA || COMPILE_TEST
Daniel Lezcanoadce4bc2015-10-31 20:13:09 +0100148 help
149 Enables support for the Tegra driver.
Thierry Reding910978e72014-07-07 15:26:30 +0200150
Tony Priskff7ec342013-01-14 17:58:21 +1300151config VT8500_TIMER
Daniel Lezcanob4bdf7e2015-10-31 20:23:54 +0100152 bool "VT8500 timer driver" if COMPILE_TEST
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100153 depends on HAS_IOMEM
Daniel Lezcanob4bdf7e2015-10-31 20:23:54 +0100154 help
155 Enables support for the VT8500 driver.
Tony Priskff7ec342013-01-14 17:58:21 +1300156
Tomer Maimon1c002892018-03-08 17:24:58 +0200157config NPCM7XX_TIMER
158 bool "NPCM7xx timer driver" if COMPILE_TEST
159 depends on HAS_IOMEM
Arnd Bergmann99834ee2019-03-05 14:24:48 +0100160 select TIMER_OF
Tomer Maimon1c002892018-03-08 17:24:58 +0200161 select CLKSRC_MMIO
162 help
163 Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture,
Randy Dunlap06293462019-11-27 21:10:22 -0800164 where TIMER0 serves as clockevent and TIMER1 serves as clocksource.
Tomer Maimon1c002892018-03-08 17:24:58 +0200165
Michal Simek4f0f2342013-03-20 10:46:01 +0100166config CADENCE_TTC_TIMER
Daniel Lezcano57f49312015-10-31 21:39:03 +0100167 bool "Cadence TTC timer driver" if COMPILE_TEST
168 depends on COMMON_CLK
169 help
Randy Dunlap06293462019-11-27 21:10:22 -0800170 Enables support for the Cadence TTC driver.
Michal Simek4f0f2342013-03-20 10:46:01 +0100171
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +0100172config ASM9260_TIMER
Daniel Lezcanob9755842015-10-31 21:41:23 +0100173 bool "ASM9260 timer driver" if COMPILE_TEST
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +0100174 select CLKSRC_MMIO
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200175 select TIMER_OF
Daniel Lezcanob9755842015-10-31 21:41:23 +0100176 help
177 Enables support for the ASM9260 timer.
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +0100178
Linus Walleij694e33a2012-10-18 14:01:25 +0200179config CLKSRC_NOMADIK_MTU
Daniel Lezcano70329652015-11-01 21:11:28 +0100180 bool "Nomakdik clocksource driver" if COMPILE_TEST
181 depends on ARM
Linus Walleij694e33a2012-10-18 14:01:25 +0200182 select CLKSRC_MMIO
183 help
184 Support for Multi Timer Unit. MTU provides access
185 to multiple interrupt generating programmable
186 32-bit free running decrementing counters.
187
Mattias Wallin489bcce2011-05-27 10:30:12 +0200188config CLKSRC_DBX500_PRCMU
Daniel Lezcano1becd6e2015-11-01 21:16:01 +0100189 bool "Clocksource PRCMU Timer" if COMPILE_TEST
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100190 depends on HAS_IOMEM
Mattias Wallin489bcce2011-05-27 10:30:12 +0200191 help
Randy Dunlap06293462019-11-27 21:10:22 -0800192 Use the always on PRCMU Timer as clocksource.
Mattias Wallin489bcce2011-05-27 10:30:12 +0200193
Daniel Lezcanoecf0efd2016-06-02 20:06:54 +0200194config CLPS711X_TIMER
Randy Dunlap06293462019-11-27 21:10:22 -0800195 bool "Cirrus Logic timer driver" if COMPILE_TEST
Daniel Lezcanoecf0efd2016-06-02 20:06:54 +0200196 select CLKSRC_MMIO
197 help
198 Enables support for the Cirrus Logic PS711 timer.
199
Daniel Lezcanob56d5d22016-06-03 13:11:39 +0200200config ATLAS7_TIMER
201 bool "Atlas7 timer driver" if COMPILE_TEST
Daniel Lezcanob56d5d22016-06-03 13:11:39 +0200202 select CLKSRC_MMIO
203 help
204 Enables support for the Atlas7 timer.
205
Daniel Lezcanod81c50a2016-06-03 13:36:18 +0200206config MXS_TIMER
Randy Dunlap06293462019-11-27 21:10:22 -0800207 bool "MXS timer driver" if COMPILE_TEST
Daniel Lezcanod81c50a2016-06-03 13:36:18 +0200208 select CLKSRC_MMIO
209 select STMP_DEVICE
210 help
Randy Dunlap06293462019-11-27 21:10:22 -0800211 Enables support for the MXS timer.
Daniel Lezcanod81c50a2016-06-03 13:36:18 +0200212
Daniel Lezcanof3550d42016-06-03 14:28:38 +0200213config PRIMA2_TIMER
214 bool "Prima2 timer driver" if COMPILE_TEST
Daniel Lezcanof3550d42016-06-03 14:28:38 +0200215 select CLKSRC_MMIO
216 help
217 Enables support for the Prima2 timer.
218
Daniel Lezcano85f98db2016-06-03 14:31:16 +0200219config U300_TIMER
220 bool "U300 timer driver" if COMPILE_TEST
Daniel Lezcano85f98db2016-06-03 14:31:16 +0200221 depends on ARM
222 select CLKSRC_MMIO
223 help
224 Enables support for the U300 timer.
225
Daniel Lezcanod683b9d2016-06-03 15:03:21 +0200226config NSPIRE_TIMER
227 bool "NSpire timer driver" if COMPILE_TEST
Daniel Lezcanod683b9d2016-06-03 15:03:21 +0200228 select CLKSRC_MMIO
229 help
230 Enables support for the Nspire timer.
231
Daniel Lezcanoc12547a2016-06-03 15:05:05 +0200232config KEYSTONE_TIMER
233 bool "Keystone timer driver" if COMPILE_TEST
Daniel Lezcanoc12547a2016-06-03 15:05:05 +0200234 depends on ARM || ARM64
235 select CLKSRC_MMIO
236 help
237 Enables support for the Keystone timer.
238
Daniel Lezcano568c0342016-06-03 15:11:21 +0200239config INTEGRATOR_AP_TIMER
Randy Dunlap06293462019-11-27 21:10:22 -0800240 bool "Integrator-AP timer driver" if COMPILE_TEST
Daniel Lezcano568c0342016-06-03 15:11:21 +0200241 select CLKSRC_MMIO
242 help
Randy Dunlap06293462019-11-27 21:10:22 -0800243 Enables support for the Integrator-AP timer.
Daniel Lezcano568c0342016-06-03 15:11:21 +0200244
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +0200245config CLKSRC_EFM32
246 bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
247 depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
Axel Lin09ca2752013-11-20 10:15:11 +0800248 select CLKSRC_MMIO
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +0200249 default ARCH_EFM32
250 help
251 Support to use the timers of EFM32 SoCs as clock source and clock
252 event device.
253
Joachim Eastwood050dd322015-05-12 00:00:48 +0200254config CLKSRC_LPC32XX
Daniel Lezcanoddcf48c2015-10-31 21:44:52 +0100255 bool "Clocksource for LPC32XX" if COMPILE_TEST
Arnd Bergmann2f8a26c2017-09-05 17:04:56 +0200256 depends on HAS_IOMEM
Ezequiel Garcia1b18fd22016-02-09 22:54:27 -0300257 depends on ARM
Joachim Eastwood050dd322015-05-12 00:00:48 +0200258 select CLKSRC_MMIO
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200259 select TIMER_OF
Daniel Lezcanoddcf48c2015-10-31 21:44:52 +0100260 help
261 Support for the LPC32XX clocksource.
Joachim Eastwood050dd322015-05-12 00:00:48 +0200262
Ezequiel Garcia84583982015-08-07 16:39:31 +0100263config CLKSRC_PISTACHIO
Daniel Lezcanodfdb1652015-10-30 17:28:13 +0100264 bool "Clocksource for Pistachio SoC" if COMPILE_TEST
Arnd Bergmann2f8a26c2017-09-05 17:04:56 +0200265 depends on HAS_IOMEM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200266 select TIMER_OF
Daniel Lezcanodfdb1652015-10-30 17:28:13 +0100267 help
268 Enables the clocksource for the Pistachio SoC.
Ezequiel Garcia84583982015-08-07 16:39:31 +0100269
Felipe Balbife851f52015-09-29 13:55:33 -0500270config CLKSRC_TI_32K
271 bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
Felipe Balbidfedaf12015-10-16 16:10:05 -0500272 depends on GENERIC_SCHED_CLOCK
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200273 select TIMER_OF if OF
Felipe Balbife851f52015-09-29 13:55:33 -0500274 help
275 This option enables support for Texas Instruments 32.768 Hz clocksource
276 available on many OMAP-like platforms.
277
Maxime Coqueline37e4592015-05-22 23:03:33 +0200278config CLKSRC_STM32
Paul Gortmaker1cb6c212015-06-20 19:02:32 -0400279 bool "Clocksource for STM32 SoCs" if !ARCH_STM32
280 depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
Maxime Coqueline37e4592015-05-22 23:03:33 +0200281 select CLKSRC_MMIO
Benjamin Gaignardd04af492018-01-08 14:28:51 +0100282 select TIMER_OF
Maxime Coqueline37e4592015-05-22 23:03:33 +0200283
Benjamin Gaignard48b41c52020-06-03 14:54:38 +0200284config CLKSRC_STM32_LP
285 bool "Low power clocksource for STM32 SoCs"
286 depends on MFD_STM32_LPTIMER || COMPILE_TEST
287
Vladimir Murzin03026372016-04-25 09:45:44 +0100288config CLKSRC_MPS2
289 bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
290 depends on GENERIC_SCHED_CLOCK
291 select CLKSRC_MMIO
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200292 select TIMER_OF
Vladimir Murzin03026372016-04-25 09:45:44 +0100293
Vineet Guptac4c9a042016-10-31 13:46:38 -0700294config ARC_TIMERS
295 bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
Alexey Brodkinbf287602018-11-19 14:29:17 +0300296 depends on GENERIC_SCHED_CLOCK
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200297 select TIMER_OF
Vineet Guptac4c9a042016-10-31 13:46:38 -0700298 help
299 These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
300 (ARC700 as well as ARC HS38).
Randy Dunlap06293462019-11-27 21:10:22 -0800301 TIMER0 serves as clockevent while TIMER1 provides clocksource.
Vineet Guptac4c9a042016-10-31 13:46:38 -0700302
303config ARC_TIMERS_64BIT
304 bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
Vineet Guptac4c9a042016-10-31 13:46:38 -0700305 depends on ARC_TIMERS
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200306 select TIMER_OF
Vineet Guptac4c9a042016-10-31 13:46:38 -0700307 help
Randy Dunlap06293462019-11-27 21:10:22 -0800308 This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP).
Vineet Guptac4c9a042016-10-31 13:46:38 -0700309 RTC is implemented inside the core, while GFRC sits outside the core in
310 ARConnect IP block. Driver automatically picks one of them for clocksource
311 as appropriate.
312
Mark Rutland8a4da6e2012-11-12 14:33:44 +0000313config ARM_ARCH_TIMER
314 bool
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200315 select TIMER_OF if OF
Daniel Lezcanofa1bffa2017-05-26 19:40:24 +0200316 select TIMER_ACPI if ACPI
James Hogana2c5d4e2012-10-09 10:54:39 +0100317
Will Deacon037f6372013-08-23 15:32:29 +0100318config ARM_ARCH_TIMER_EVTSTREAM
Will Deacon46fd5c62016-06-27 17:30:13 +0100319 bool "Enable ARM architected timer event stream generation by default"
Will Deacon037f6372013-08-23 15:32:29 +0100320 default y if ARM_ARCH_TIMER
Stephen Boyd77f7ce92013-11-20 12:02:03 -0800321 depends on ARM_ARCH_TIMER
Will Deacon037f6372013-08-23 15:32:29 +0100322 help
Will Deacon46fd5c62016-06-27 17:30:13 +0100323 This option enables support by default for event stream generation
324 based on the ARM architected timer. It is used for waking up CPUs
325 executing the wfe instruction at a frequency represented as a
326 power-of-2 divisor of the clock rate. The behaviour can also be
327 overridden on the command line using the
328 clocksource.arm_arch_timer.evtstream parameter.
Will Deacon037f6372013-08-23 15:32:29 +0100329 The main use of the event stream is wfe-based timeouts of userspace
330 locking implementations. It might also be useful for imposing timeout
331 on wfe to safeguard against any programming errors in case an expected
332 event is not generated.
333 This must be disabled for hardware validation purposes to detect any
334 hardware anomalies of missing events.
335
Ding Tianhong16d10ef2017-02-06 16:47:41 +0000336config ARM_ARCH_TIMER_OOL_WORKAROUND
337 bool
338
Scott Woodf6dc1572016-09-22 03:35:17 -0500339config FSL_ERRATUM_A008585
340 bool "Workaround for Freescale/NXP Erratum A-008585"
341 default y
342 depends on ARM_ARCH_TIMER && ARM64
Ding Tianhong16d10ef2017-02-06 16:47:41 +0000343 select ARM_ARCH_TIMER_OOL_WORKAROUND
Scott Woodf6dc1572016-09-22 03:35:17 -0500344 help
345 This option enables a workaround for Freescale/NXP Erratum
346 A-008585 ("ARM generic timer may contain an erroneous
347 value"). The workaround will only be active if the
348 fsl,erratum-a008585 property is found in the timer node.
349
Ding Tianhongbb42ca42017-02-06 16:47:42 +0000350config HISILICON_ERRATUM_161010101
351 bool "Workaround for Hisilicon Erratum 161010101"
352 default y
353 select ARM_ARCH_TIMER_OOL_WORKAROUND
354 depends on ARM_ARCH_TIMER && ARM64
355 help
356 This option enables a workaround for Hisilicon Erratum
357 161010101. The workaround will be active if the hisilicon,erratum-161010101
358 property is found in the timer node.
359
Marc Zyngierfa8d8152017-01-27 12:52:31 +0000360config ARM64_ERRATUM_858921
361 bool "Workaround for Cortex-A73 erratum 858921"
362 default y
363 select ARM_ARCH_TIMER_OOL_WORKAROUND
364 depends on ARM_ARCH_TIMER && ARM64
365 help
366 This option enables a workaround applicable to Cortex-A73
367 (all versions), whose counter may return incorrect values.
368 The workaround will be dynamically enabled when an affected
369 core is detected.
370
Samuel Hollandc950ca82019-01-12 20:17:18 -0600371config SUN50I_ERRATUM_UNKNOWN1
372 bool "Workaround for Allwinner A64 erratum UNKNOWN1"
373 default y
374 depends on ARM_ARCH_TIMER && ARM64 && ARCH_SUNXI
375 select ARM_ARCH_TIMER_OOL_WORKAROUND
376 help
377 This option enables a workaround for instability in the timer on
378 the Allwinner A64 SoC. The workaround will only be active if the
379 allwinner,erratum-unknown1 property is found in the timer node.
380
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100381config ARM_GLOBAL_TIMER
Daniel Lezcano67a87a42016-06-06 14:34:28 +0200382 bool "Support for the ARM global timer" if COMPILE_TEST
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200383 select TIMER_OF if OF
Daniel Lezcano67a87a42016-06-06 14:34:28 +0200384 depends on ARM
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100385 help
Randy Dunlap06293462019-11-27 21:10:22 -0800386 This option enables support for the ARM global timer unit.
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100387
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100388config ARM_TIMER_SP804
David Abdurachmanovdfc82fa2019-04-08 10:07:45 +0200389 bool "Support for Dual Timer SP804 module" if COMPILE_TEST
Guenter Roeck002af192015-06-23 20:49:05 -0700390 depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100391 select CLKSRC_MMIO
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200392 select TIMER_OF if OF
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100393
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100394config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
395 bool
396 depends on ARM_GLOBAL_TIMER
397 default y
398 help
Randy Dunlap06293462019-11-27 21:10:22 -0800399 Use ARM global timer clock source as sched_clock.
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100400
Maxime Coquelin4958ebb2015-05-09 09:53:46 +0200401config ARMV7M_SYSTICK
Daniel Lezcanoe2146d82016-06-02 18:41:52 +0200402 bool "Support for the ARMv7M system time" if COMPILE_TEST
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200403 select TIMER_OF if OF
Maxime Coquelin4958ebb2015-05-09 09:53:46 +0200404 select CLKSRC_MMIO
405 help
Randy Dunlap06293462019-11-27 21:10:22 -0800406 This option enables support for the ARMv7M system timer unit.
Maxime Coquelin4958ebb2015-05-09 09:53:46 +0200407
Maxime Ripardb052ff32014-09-02 18:12:35 +0200408config ATMEL_PIT
Alexandre Belloni2f982702019-04-26 23:47:15 +0200409 bool "Atmel PIT support" if COMPILE_TEST
410 depends on HAS_IOMEM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200411 select TIMER_OF if OF
Alexandre Belloni2f982702019-04-26 23:47:15 +0200412 help
413 Support for the Periodic Interval Timer found on Atmel SoCs.
Maxime Ripardb052ff32014-09-02 18:12:35 +0200414
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100415config ATMEL_ST
Daniel Lezcanob988d3f2016-06-06 19:08:39 +0200416 bool "Atmel ST timer support" if COMPILE_TEST
Masahiro Yamadabd2746f2018-03-06 20:20:33 +0900417 depends on HAS_IOMEM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200418 select TIMER_OF
Alexandre Belloni7ab7ef72015-03-19 14:17:48 +0100419 select MFD_SYSCON
Daniel Lezcanob988d3f2016-06-06 19:08:39 +0200420 help
421 Support for the Atmel ST timer.
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100422
Alexandre Belloni6275f492019-04-26 23:47:14 +0200423config ATMEL_TCB_CLKSRC
424 bool "Atmel TC Block timer driver" if COMPILE_TEST
Alexandre Belloni1ce861c2019-08-13 15:30:50 +0200425 depends on ARM && HAS_IOMEM
Alexandre Belloni6275f492019-04-26 23:47:14 +0200426 select TIMER_OF if OF
427 help
428 Support for Timer Counter Blocks on Atmel SoCs.
429
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900430config CLKSRC_EXYNOS_MCT
Daniel Lezcano39366ef2015-11-01 21:51:30 +0100431 bool "Exynos multi core timer driver" if COMPILE_TEST
Chanwoo Choif1a4c1f2016-08-24 22:49:05 +0900432 depends on ARM || ARM64
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900433 help
434 Support for Multi Core Timer controller on Exynos SoCs.
Arnd Bergmann241a9872013-05-06 23:49:09 +0200435
Tomasz Figaf1189982013-04-20 23:22:13 +0200436config CLKSRC_SAMSUNG_PWM
Alexandre Bellonide37b0b2016-06-16 15:53:18 +0200437 bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100438 depends on HAS_IOMEM
Tomasz Figaf1189982013-04-20 23:22:13 +0200439 help
440 This is a new clocksource driver for the PWM timer found in
441 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
442 for all devicetree enabled platforms. This driver will be
443 needed only on systems that do not have the Exynos MCT available.
Jingchang Luc1967242013-05-29 10:12:17 +0200444
Xiubo Li2529c3a2014-05-23 10:12:04 +0200445config FSL_FTM_TIMER
Daniel Lezcanoef493362015-11-02 09:51:02 +0100446 bool "Freescale FlexTimer Module driver" if COMPILE_TEST
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100447 depends on HAS_IOMEM
Daniel Lezcano03724ac2016-01-08 14:21:31 +0100448 select CLKSRC_MMIO
Xiubo Li2529c3a2014-05-23 10:12:04 +0200449 help
450 Support for Freescale FlexTimer Module (FTM) timer.
451
Jingchang Luc1967242013-05-29 10:12:17 +0200452config VF_PIT_TIMER
453 bool
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +0100454 select CLKSRC_MMIO
Jingchang Luc1967242013-05-29 10:12:17 +0200455 help
Randy Dunlap06293462019-11-27 21:10:22 -0800456 Support for Periodic Interrupt Timer on Freescale Vybrid Family SoCs.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100457
Neil Armstrong89355272016-06-15 12:13:26 +0200458config OXNAS_RPS_TIMER
459 bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200460 select TIMER_OF
Neil Armstrong89355272016-06-15 12:13:26 +0200461 select CLKSRC_MMIO
462 help
463 This enables support for the Oxford Semiconductor OXNAS RPS timers.
464
Magnus Dammfd3f1272014-02-20 12:54:45 +0100465config SYS_SUPPORTS_SH_CMT
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800466 bool
Magnus Dammfd3f1272014-02-20 12:54:45 +0100467
Matthias Bruggerecb35302014-07-18 11:36:43 +0200468config MTK_TIMER
Daniel Lezcanofbca9ea2015-10-30 17:53:27 +0100469 bool "Mediatek timer driver" if COMPILE_TEST
Arnd Bergmann2f8a26c2017-09-05 17:04:56 +0200470 depends on HAS_IOMEM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200471 select TIMER_OF
Matthias Bruggerecb35302014-07-18 11:36:43 +0200472 select CLKSRC_MMIO
Daniel Lezcanofbca9ea2015-10-30 17:53:27 +0100473 help
474 Support for Mediatek timer driver.
Matthias Bruggerecb35302014-07-18 11:36:43 +0200475
Baolin Wang067bc912018-01-08 14:28:47 +0100476config SPRD_TIMER
Chunyan Zhang8a1ece22018-05-07 17:04:47 +0800477 bool "Spreadtrum timer driver" if EXPERT
Baolin Wang067bc912018-01-08 14:28:47 +0100478 depends on HAS_IOMEM
Chunyan Zhang8a1ece22018-05-07 17:04:47 +0800479 depends on (ARCH_SPRD || COMPILE_TEST)
480 default ARCH_SPRD
Baolin Wang067bc912018-01-08 14:28:47 +0100481 select TIMER_OF
482 help
483 Enables support for the Spreadtrum timer driver.
484
Magnus Dammfd3f1272014-02-20 12:54:45 +0100485config SYS_SUPPORTS_SH_MTU2
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800486 bool
Magnus Dammfd3f1272014-02-20 12:54:45 +0100487
488config SYS_SUPPORTS_SH_TMU
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800489 bool
Magnus Dammfd3f1272014-02-20 12:54:45 +0100490
491config SYS_SUPPORTS_EM_STI
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800492 bool
Magnus Dammfd3f1272014-02-20 12:54:45 +0100493
Rich Felker9995f4f2016-10-13 21:51:06 +0000494config CLKSRC_JCORE_PIT
495 bool "J-Core PIT timer driver" if COMPILE_TEST
496 depends on OF
Rich Felker9995f4f2016-10-13 21:51:06 +0000497 depends on HAS_IOMEM
498 select CLKSRC_MMIO
499 help
500 This enables build of clocksource and clockevent driver for
501 the integrated PIT in the J-Core synthesizable, open source SoC.
502
Magnus Dammfd3f1272014-02-20 12:54:45 +0100503config SH_TIMER_CMT
504 bool "Renesas CMT timer driver" if COMPILE_TEST
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100505 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100506 default SYS_SUPPORTS_SH_CMT
507 help
508 This enables build of a clocksource and clockevent driver for
509 the Compare Match Timer (CMT) hardware available in 16/32/48-bit
510 variants on a wide range of Mobile and Automotive SoCs from Renesas.
511
512config SH_TIMER_MTU2
513 bool "Renesas MTU2 timer driver" if COMPILE_TEST
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100514 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100515 default SYS_SUPPORTS_SH_MTU2
516 help
517 This enables build of a clockevent driver for the Multi-Function
Kuninori Morimoto7e139182014-07-18 11:36:36 +0200518 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
Randy Dunlap06293462019-11-27 21:10:22 -0800519 This hardware comes with 16-bit timer registers.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100520
Chris Brandtfb6002a2017-01-27 15:02:15 -0500521config RENESAS_OSTM
522 bool "Renesas OSTM timer driver" if COMPILE_TEST
Chris Brandtfb6002a2017-01-27 15:02:15 -0500523 select CLKSRC_MMIO
Geert Uytterhoeven22731422019-10-16 16:47:46 +0200524 select TIMER_OF
Chris Brandtfb6002a2017-01-27 15:02:15 -0500525 help
526 Enables the support for the Renesas OSTM.
527
Magnus Dammfd3f1272014-02-20 12:54:45 +0100528config SH_TIMER_TMU
529 bool "Renesas TMU timer driver" if COMPILE_TEST
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100530 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100531 default SYS_SUPPORTS_SH_TMU
532 help
533 This enables build of a clocksource and clockevent driver for
534 the 32-bit Timer Unit (TMU) hardware available on a wide range
535 SoCs from Renesas.
536
537config EM_TIMER_STI
538 bool "Renesas STI timer driver" if COMPILE_TEST
Arnd Bergmann2f8a26c2017-09-05 17:04:56 +0200539 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100540 default SYS_SUPPORTS_EM_STI
541 help
542 This enables build of a clocksource and clockevent driver for
543 the 48-bit System Timer (STI) hardware available on a SoCs
544 such as EMEV2 from former NEC Electronics.
Linus Torvaldsdfc25e42014-04-05 13:51:19 -0700545
Kumar Gala3f8e8ce2014-01-29 16:17:30 -0600546config CLKSRC_QCOM
Daniel Lezcano3dc0e9f2015-10-09 11:10:43 +0200547 bool "Qualcomm MSM timer" if COMPILE_TEST
548 depends on ARM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200549 select TIMER_OF
Daniel Lezcano3dc0e9f2015-10-09 11:10:43 +0200550 help
551 This enables the clocksource and the per CPU clockevent driver for the
552 Qualcomm SoCs.
Pawel Moll220e2a82014-04-16 18:22:59 +0100553
554config CLKSRC_VERSATILE
Daniel Lezcano5cc87a42016-06-07 11:05:01 +0200555 bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
Arnd Bergmann77f6c0b2020-09-24 12:30:50 +0200556 depends on GENERIC_SCHED_CLOCK
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200557 select TIMER_OF
Rob Herringbfed0ed2020-04-17 16:20:45 -0500558 default y if (ARCH_VEXPRESS || ARCH_VERSATILE) && ARM
Pawel Moll220e2a82014-04-16 18:22:59 +0100559 help
560 This option enables clock source based on free running
561 counter available in the "System Registers" block of
Rob Herringbfed0ed2020-04-17 16:20:45 -0500562 ARM Versatile and Versatile Express reference platforms.
Jean Delvare58394272014-06-16 11:48:45 +0200563
Andrew Brestickerfa5635a2014-10-20 12:03:58 -0700564config CLKSRC_MIPS_GIC
565 bool
566 depends on MIPS_GIC
Serge Semin7d7de1a2020-05-21 23:48:17 +0300567 select CLOCKSOURCE_WATCHDOG
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200568 select TIMER_OF
Andrew Brestickerfa5635a2014-10-20 12:03:58 -0700569
Marc Gonzalezccd63ce2015-10-09 16:59:18 +0200570config CLKSRC_TANGO_XTAL
Daniel Lezcano5a7351f2015-10-29 20:54:19 +0100571 bool "Clocksource for Tango SoC" if COMPILE_TEST
572 depends on ARM
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200573 select TIMER_OF
Daniel Lezcano08818412015-11-13 10:44:38 +0100574 select CLKSRC_MMIO
Daniel Lezcano5a7351f2015-10-29 20:54:19 +0100575 help
Randy Dunlap06293462019-11-27 21:10:22 -0800576 This enables the clocksource for Tango SoC.
Marc Gonzalezccd63ce2015-10-09 16:59:18 +0200577
Dmitry Eremin-Solenikove074ff82014-12-21 16:07:09 +0100578config CLKSRC_PXA
Daniel Lezcano5ae996c2015-10-09 17:47:32 +0200579 bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100580 depends on HAS_IOMEM
Daniel Lezcano5ae996c2015-10-09 17:47:32 +0200581 select CLKSRC_MMIO
Dmitry Eremin-Solenikove074ff82014-12-21 16:07:09 +0100582 help
583 This enables OST0 support available on PXA and SA-11x0
584 platforms.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900585
Daniel Lezcano97a23be2015-11-09 14:43:52 +0100586config H8300_TMR8
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800587 bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
588 depends on HAS_IOMEM
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100589 help
590 This enables the 8 bits timer for the H8300 platform.
Daniel Lezcano97a23be2015-11-09 14:43:52 +0100591
Yoshinori Sato618b9022015-01-28 02:52:42 +0900592config H8300_TMR16
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800593 bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
594 depends on HAS_IOMEM
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100595 help
596 This enables the 16 bits timer for the H8300 platform with the
Randy Dunlap06293462019-11-27 21:10:22 -0800597 H83069 CPU.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900598
599config H8300_TPU
Krzysztof Kozlowski9ca9fe62019-11-20 21:42:36 +0800600 bool "Clocksource for the H8300 platform" if COMPILE_TEST
601 depends on HAS_IOMEM
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100602 help
603 This enables the clocksource for the H8300 platform with the
Randy Dunlap06293462019-11-27 21:10:22 -0800604 H8S2678 CPU.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900605
Shawn Guobea5af42015-05-15 15:41:00 +0800606config CLKSRC_IMX_GPT
607 bool "Clocksource using i.MX GPT" if COMPILE_TEST
Anson Huangdf181e32018-11-05 01:10:27 +0000608 depends on (ARM || ARM64) && CLKDEV_LOOKUP
Shawn Guobea5af42015-05-15 15:41:00 +0800609 select CLKSRC_MMIO
610
Dong Aisheng059ab7b2017-08-01 16:40:17 +0800611config CLKSRC_IMX_TPM
612 bool "Clocksource using i.MX TPM" if COMPILE_TEST
Anson Huanga6d08122020-07-08 11:16:07 +0800613 depends on (ARM || ARM64) && CLKDEV_LOOKUP
Dong Aisheng059ab7b2017-08-01 16:40:17 +0800614 select CLKSRC_MMIO
Anson Huanga6d08122020-07-08 11:16:07 +0800615 select TIMER_OF
Dong Aisheng059ab7b2017-08-01 16:40:17 +0800616 help
617 Enable this option to use IMX Timer/PWM Module (TPM) timer as
618 clocksource.
619
Bai Ping7117a442019-06-05 06:40:52 +0000620config TIMER_IMX_SYS_CTR
621 bool "i.MX system counter timer" if COMPILE_TEST
622 select TIMER_OF
623 help
624 Enable this option to use i.MX system counter timer as a
625 clockevent.
626
Lee Jones70bef012015-05-26 13:39:43 +0100627config CLKSRC_ST_LPC
Daniel Lezcanobaacaf82015-10-09 15:36:28 +0200628 bool "Low power clocksource found in the LPC" if COMPILE_TEST
Daniel Lezcanobb0eb052017-05-26 19:34:11 +0200629 select TIMER_OF if OF
Richard Weinberger863ee052016-01-02 23:06:36 +0100630 depends on HAS_IOMEM
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +0100631 select CLKSRC_MMIO
Lee Jones70bef012015-05-26 13:39:43 +0100632 help
633 Enable this option to use the Low Power controller timer
634 as clocksource.
635
Rick Chen35dbb742017-12-11 15:53:15 +0800636config ATCPIT100_TIMER
637 bool "ATCPIT100 timer driver"
638 depends on NDS32 || COMPILE_TEST
639 depends on HAS_IOMEM
640 select TIMER_OF
641 default NDS32
642 help
643 This option enables support for the Andestech ATCPIT100 timers.
644
Palmer Dabbelt62b01942018-08-04 10:23:19 +0200645config RISCV_TIMER
Anup Patel2bc3fc82020-08-17 18:12:50 +0530646 bool "Timer for the RISC-V platform" if COMPILE_TEST
Kefeng Wangab310542020-10-28 21:12:30 +0800647 depends on GENERIC_SCHED_CLOCK && RISCV && RISCV_SBI
Palmer Dabbelt62b01942018-08-04 10:23:19 +0200648 select TIMER_PROBE
649 select TIMER_OF
650 help
651 This enables the per-hart timer built into all RISC-V systems, which
652 is accessed via both the SBI and the rdcycle instruction. This is
653 required for all RISC-V systems.
654
Anup Patel2ac67952020-08-17 18:12:49 +0530655config CLINT_TIMER
656 bool "CLINT Timer for the RISC-V platform" if COMPILE_TEST
657 depends on GENERIC_SCHED_CLOCK && RISCV
658 select TIMER_PROBE
659 select TIMER_OF
660 help
661 This option enables the CLINT timer for RISC-V systems. The CLINT
662 driver is usually used for NoMMU RISC-V systems.
663
Guo Rena7ad38b2018-11-03 00:51:28 +0800664config CSKY_MP_TIMER
665 bool "SMP Timer for the C-SKY platform" if COMPILE_TEST
666 depends on CSKY
667 select TIMER_OF
668 help
669 Say yes here to enable C-SKY SMP timer driver used for C-SKY SMP
670 system.
Randy Dunlap06293462019-11-27 21:10:22 -0800671 csky,mptimer is not only used in SMP system, it also could be used in
672 single core system. It's not a mmio reg and it uses mtcr/mfcr instruction.
Guo Rena7ad38b2018-11-03 00:51:28 +0800673
Guo Ren33745c32018-11-03 00:51:30 +0800674config GX6605S_TIMER
675 bool "Gx6605s SOC system timer driver" if COMPILE_TEST
676 depends on CSKY
677 select CLKSRC_MMIO
678 select TIMER_OF
679 help
680 This option enables support for gx6605s SOC's timer.
681
Sugaya Taichib58f28f2019-02-27 13:53:20 +0900682config MILBEAUT_TIMER
683 bool "Milbeaut timer driver" if COMPILE_TEST
684 depends on OF
685 depends on ARM
686 select TIMER_OF
687 select CLKSRC_MMIO
688 help
689 Enables the support for Milbeaut timer driver.
690
Paul Cercueil34e93682019-07-24 13:16:09 -0400691config INGENIC_TIMER
692 bool "Clocksource/timer using the TCU in Ingenic JZ SoCs"
693 default MACH_INGENIC
694 depends on MIPS || COMPILE_TEST
695 depends on COMMON_CLK
696 select MFD_SYSCON
697 select TIMER_OF
698 select IRQ_DOMAIN
699 help
700 Support for the timer/counter unit of the Ingenic JZ SoCs.
701
周琰杰 (Zhou Yanjie)5ecafc12020-07-23 01:18:04 +0800702config INGENIC_SYSOST
703 bool "Clocksource/timer using the SYSOST in Ingenic X SoCs"
704 depends on MIPS || COMPILE_TEST
705 depends on COMMON_CLK
706 select MFD_SYSCON
707 select TIMER_OF
708 select IRQ_DOMAIN
709 help
710 Support for the SYSOST of the Ingenic X Series SoCs.
711
Maarten ter Huurneca7b72b2020-02-12 15:04:08 -0300712config INGENIC_OST
周琰杰 (Zhou Yanjie)5ecafc12020-07-23 01:18:04 +0800713 bool "Clocksource using the OST in Ingenic JZ SoCs"
Maarten ter Huurneca7b72b2020-02-12 15:04:08 -0300714 depends on MIPS || COMPILE_TEST
715 depends on COMMON_CLK
716 select MFD_SYSCON
717 help
718 Support for the Operating System Timer of the Ingenic JZ SoCs.
719
Claudiu Beznea625022a2019-12-13 13:19:21 +0200720config MICROCHIP_PIT64B
721 bool "Microchip PIT64B support"
722 depends on OF || COMPILE_TEST
723 select CLKSRC_MMIO
Michael Ellerman25259f72020-04-26 22:43:56 +1000724 select TIMER_OF
Claudiu Beznea625022a2019-12-13 13:19:21 +0200725 help
726 This option enables Microchip PIT64B timer for Atmel
727 based system. It supports the oneshot, the periodic
728 modes and high resolution. It is used as a clocksource
729 and a clockevent.
730
Jean Delvare58394272014-06-16 11:48:45 +0200731endmenu