blob: 483f3b1af4fdc940db00077cd73a05164004ea2f [file] [log] [blame]
Jean Delvare58394272014-06-16 11:48:45 +02001menu "Clock Source drivers"
Arnd Bergmann3da6d492015-11-16 17:51:17 +01002 depends on !ARCH_USES_GETTIMEOFFSET
Jean Delvare58394272014-06-16 11:48:45 +02003
Stephen Warrenae278a92012-11-19 16:41:20 -07004config CLKSRC_OF
5 bool
Marc Zyngieraad83b152015-09-28 15:49:16 +01006 select CLKSRC_PROBE
7
Daniel Lezcano376bc272016-04-19 08:56:27 +02008config CLKEVT_OF
9 bool
10 select CLKEVT_PROBE
11
Marc Zyngieraad83b152015-09-28 15:49:16 +010012config CLKSRC_ACPI
13 bool
14 select CLKSRC_PROBE
15
16config CLKSRC_PROBE
17 bool
Stephen Warrenae278a92012-11-19 16:41:20 -070018
Daniel Lezcano376bc272016-04-19 08:56:27 +020019config CLKEVT_PROBE
20 bool
21
Russell King89c0b8e2011-05-08 18:47:58 +010022config CLKSRC_I8253
23 bool
Russell King442c8172011-05-08 14:06:52 +010024
Thomas Gleixnere6220bd2011-06-09 13:08:25 +000025config CLKEVT_I8253
26 bool
27
Ralf Baechle15f304b2011-06-01 19:04:59 +010028config I8253_LOCK
29 bool
30
31config CLKBLD_I8253
Thomas Gleixnere6220bd2011-06-09 13:08:25 +000032 def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
Ralf Baechle15f304b2011-06-01 19:04:59 +010033
Russell King442c8172011-05-08 14:06:52 +010034config CLKSRC_MMIO
35 bool
Jamie Iles06c3df42011-06-06 12:43:07 +010036
Daniel Lezcano2ea879a2016-06-02 18:35:38 +020037config BCM2835_TIMER
38 bool "BCM2835 timer driver" if COMPILE_TEST
39 depends on GENERIC_CLOCKEVENTS
40 select CLKSRC_MMIO
41 help
42 Enables the support for the BCM2835 timer driver.
43
Daniel Lezcano1cad71e2016-06-02 19:20:36 +020044config BCM_KONA_TIMER
45 bool "BCM mobile timer driver" if COMPILE_TEST
46 depends on GENERIC_CLOCKEVENTS
47 select CLKSRC_MMIO
48 help
49 Enables the support for the BCM Kona mobile 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
Daniel Lezcano0901f182015-11-04 14:21:42 +010053 depends on GENERIC_CLOCKEVENTS
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +010054 select CLKSRC_MMIO
Richard Weinbergerd7023e622016-01-25 23:24:19 +010055 depends on HAS_IOMEM
Daniel Lezcanoe6c1db12015-10-30 22:32:10 +010056 help
57 Enables the support for the digicolor timer driver.
Baruch Siach9b8bb772015-01-26 20:35:18 +020058
Jamie Iles06c3df42011-06-06 12:43:07 +010059config DW_APB_TIMER
Daniel Lezcano5b097f62015-10-30 22:35:00 +010060 bool "DW APB timer driver" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +010061 depends on GENERIC_CLOCKEVENTS
Daniel Lezcano5b097f62015-10-30 22:35:00 +010062 help
63 Enables the support for the dw_apb timer.
Mattias Wallin489bcce2011-05-27 10:30:12 +020064
Dinh Nguyencfda5902012-07-11 15:13:16 -050065config DW_APB_TIMER_OF
66 bool
Heiko Stuebner1b4eca02013-06-04 11:38:11 +020067 select DW_APB_TIMER
Heiko Stuebner10021482013-06-04 11:38:42 +020068 select CLKSRC_OF
Dinh Nguyencfda5902012-07-11 15:13:16 -050069
Linus Walleij47505352017-01-22 13:17:17 +010070config GEMINI_TIMER
71 bool "Cortina Gemini timer driver" if COMPILE_TEST
72 depends on GENERIC_CLOCKEVENTS
73 depends on HAS_IOMEM
74 select CLKSRC_MMIO
75 select CLKSRC_OF
76 select MFD_SYSCON
77 help
78 Enables support for the Gemini timer
79
Daniel Lezcano468b8c42015-01-25 22:06:02 +010080config ROCKCHIP_TIMER
Daniel Lezcano40ada2a2015-10-30 17:58:47 +010081 bool "Rockchip timer driver" if COMPILE_TEST
82 depends on ARM || ARM64
Daniel Lezcano468b8c42015-01-25 22:06:02 +010083 select CLKSRC_OF
Alexander Kochetkov5e0a39d2017-01-31 15:43:14 +030084 select CLKSRC_MMIO
Daniel Lezcano40ada2a2015-10-30 17:58:47 +010085 help
86 Enables the support for the rockchip timer driver.
Daniel Lezcano468b8c42015-01-25 22:06:02 +010087
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020088config ARMADA_370_XP_TIMER
Daniel Lezcano9519e802015-10-30 20:30:34 +010089 bool "Armada 370 and XP timer driver" if COMPILE_TEST
90 depends on ARM
Jean Pihet7b0dd722013-09-18 20:55:09 +020091 select CLKSRC_OF
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +010092 select CLKSRC_MMIO
Daniel Lezcano9519e802015-10-30 20:30:34 +010093 help
94 Enables the support for the Armada 370 and XP timer driver.
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020095
Carlo Caionee4a6b372014-09-29 01:50:05 +020096config MESON6_TIMER
Daniel Lezcano0b7a7bb2015-10-30 22:07:39 +010097 bool "Meson6 timer driver" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +010098 depends on GENERIC_CLOCKEVENTS
Beniamino Galvani7b6b0a42014-11-18 16:41:20 +010099 select CLKSRC_MMIO
Daniel Lezcano0b7a7bb2015-10-30 22:07:39 +0100100 help
101 Enables the support for the Meson6 timer driver.
Carlo Caionee4a6b372014-09-29 01:50:05 +0200102
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +0200103config ORION_TIMER
Daniel Lezcanoc9165542015-10-30 22:28:31 +0100104 bool "Orion timer driver" if COMPILE_TEST
105 depends on ARM
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +0200106 select CLKSRC_OF
107 select CLKSRC_MMIO
Daniel Lezcanoc9165542015-10-30 22:28:31 +0100108 help
109 Enables the support for the Orion timer driver
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +0200110
Maxime Ripard119fd632013-03-24 11:49:25 +0100111config SUN4I_TIMER
Daniel Lezcanob4fcd482015-10-30 22:39:00 +0100112 bool "Sun4i timer driver" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +0100113 depends on GENERIC_CLOCKEVENTS
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100114 depends on HAS_IOMEM
Maxime Ripard71c568c2013-10-14 21:07:46 +0200115 select CLKSRC_MMIO
Daniel Lezcanob4fcd482015-10-30 22:39:00 +0100116 help
117 Enables support for the Sun4i timer.
Maxime Ripardb2ac5d72012-11-12 15:07:50 +0100118
Maxime Ripard67905542013-11-07 12:01:48 +0100119config SUN5I_HSTIMER
Daniel Lezcanof0c5afb2015-10-31 17:01:46 +0100120 bool "Sun5i timer driver" if COMPILE_TEST
Maxime Ripard67905542013-11-07 12:01:48 +0100121 select CLKSRC_MMIO
Daniel Lezcanof0c5afb2015-10-31 17:01:46 +0100122 depends on COMMON_CLK
123 help
124 Enables support the Sun5i timer.
Maxime Ripard67905542013-11-07 12:01:48 +0100125
Thierry Reding910978e72014-07-07 15:26:30 +0200126config TEGRA_TIMER
Daniel Lezcanoadce4bc2015-10-31 20:13:09 +0100127 bool "Tegra timer driver" if COMPILE_TEST
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +0100128 select CLKSRC_MMIO
Daniel Lezcanoadce4bc2015-10-31 20:13:09 +0100129 depends on ARM
130 help
131 Enables support for the Tegra driver.
Thierry Reding910978e72014-07-07 15:26:30 +0200132
Tony Priskff7ec342013-01-14 17:58:21 +1300133config VT8500_TIMER
Daniel Lezcanob4bdf7e2015-10-31 20:23:54 +0100134 bool "VT8500 timer driver" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +0100135 depends on GENERIC_CLOCKEVENTS
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100136 depends on HAS_IOMEM
Daniel Lezcanob4bdf7e2015-10-31 20:23:54 +0100137 help
138 Enables support for the VT8500 driver.
Tony Priskff7ec342013-01-14 17:58:21 +1300139
Michal Simek4f0f2342013-03-20 10:46:01 +0100140config CADENCE_TTC_TIMER
Daniel Lezcano57f49312015-10-31 21:39:03 +0100141 bool "Cadence TTC timer driver" if COMPILE_TEST
142 depends on COMMON_CLK
143 help
144 Enables support for the cadence ttc driver.
Michal Simek4f0f2342013-03-20 10:46:01 +0100145
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +0100146config ASM9260_TIMER
Daniel Lezcanob9755842015-10-31 21:41:23 +0100147 bool "ASM9260 timer driver" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +0100148 depends on GENERIC_CLOCKEVENTS
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +0100149 select CLKSRC_MMIO
150 select CLKSRC_OF
Daniel Lezcanob9755842015-10-31 21:41:23 +0100151 help
152 Enables support for the ASM9260 timer.
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +0100153
Linus Walleij694e33a2012-10-18 14:01:25 +0200154config CLKSRC_NOMADIK_MTU
Daniel Lezcano70329652015-11-01 21:11:28 +0100155 bool "Nomakdik clocksource driver" if COMPILE_TEST
156 depends on ARM
Linus Walleij694e33a2012-10-18 14:01:25 +0200157 select CLKSRC_MMIO
158 help
159 Support for Multi Timer Unit. MTU provides access
160 to multiple interrupt generating programmable
161 32-bit free running decrementing counters.
162
163config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
164 bool
165 depends on CLKSRC_NOMADIK_MTU
166 help
167 Use the Multi Timer Unit as the sched_clock.
168
Mattias Wallin489bcce2011-05-27 10:30:12 +0200169config CLKSRC_DBX500_PRCMU
Daniel Lezcano1becd6e2015-11-01 21:16:01 +0100170 bool "Clocksource PRCMU Timer" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +0100171 depends on GENERIC_CLOCKEVENTS
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100172 depends on HAS_IOMEM
Mattias Wallin489bcce2011-05-27 10:30:12 +0200173 help
174 Use the always on PRCMU Timer as clocksource
175
Daniel Lezcanoecf0efd2016-06-02 20:06:54 +0200176config CLPS711X_TIMER
177 bool "Cirrus logic timer driver" if COMPILE_TEST
178 depends on GENERIC_CLOCKEVENTS
179 select CLKSRC_MMIO
180 help
181 Enables support for the Cirrus Logic PS711 timer.
182
Daniel Lezcanob56d5d22016-06-03 13:11:39 +0200183config ATLAS7_TIMER
184 bool "Atlas7 timer driver" if COMPILE_TEST
185 depends on GENERIC_CLOCKEVENTS
186 select CLKSRC_MMIO
187 help
188 Enables support for the Atlas7 timer.
189
Daniel Lezcano419be9e2016-06-03 13:29:03 +0200190config MOXART_TIMER
191 bool "Moxart timer driver" if COMPILE_TEST
192 depends on GENERIC_CLOCKEVENTS
193 select CLKSRC_MMIO
194 help
195 Enables support for the Moxart timer.
196
Daniel Lezcanod81c50a2016-06-03 13:36:18 +0200197config MXS_TIMER
198 bool "Mxs timer driver" if COMPILE_TEST
199 depends on GENERIC_CLOCKEVENTS
200 select CLKSRC_MMIO
201 select STMP_DEVICE
202 help
203 Enables support for the Mxs timer.
204
Daniel Lezcanof3550d42016-06-03 14:28:38 +0200205config PRIMA2_TIMER
206 bool "Prima2 timer driver" if COMPILE_TEST
207 depends on GENERIC_CLOCKEVENTS
208 select CLKSRC_MMIO
209 help
210 Enables support for the Prima2 timer.
211
Daniel Lezcano85f98db2016-06-03 14:31:16 +0200212config U300_TIMER
213 bool "U300 timer driver" if COMPILE_TEST
214 depends on GENERIC_CLOCKEVENTS
215 depends on ARM
216 select CLKSRC_MMIO
217 help
218 Enables support for the U300 timer.
219
Daniel Lezcanod683b9d2016-06-03 15:03:21 +0200220config NSPIRE_TIMER
221 bool "NSpire timer driver" if COMPILE_TEST
222 depends on GENERIC_CLOCKEVENTS
223 select CLKSRC_MMIO
224 help
225 Enables support for the Nspire timer.
226
Daniel Lezcanoc12547a2016-06-03 15:05:05 +0200227config KEYSTONE_TIMER
228 bool "Keystone timer driver" if COMPILE_TEST
229 depends on GENERIC_CLOCKEVENTS
230 depends on ARM || ARM64
231 select CLKSRC_MMIO
232 help
233 Enables support for the Keystone timer.
234
Daniel Lezcano568c0342016-06-03 15:11:21 +0200235config INTEGRATOR_AP_TIMER
236 bool "Integrator-ap timer driver" if COMPILE_TEST
237 depends on GENERIC_CLOCKEVENTS
238 select CLKSRC_MMIO
239 help
240 Enables support for the Integrator-ap timer.
241
Mattias Wallin489bcce2011-05-27 10:30:12 +0200242config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
243 bool "Clocksource PRCMU Timer sched_clock"
Linus Walleij694e33a2012-10-18 14:01:25 +0200244 depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
Mattias Wallin489bcce2011-05-27 10:30:12 +0200245 default y
246 help
247 Use the always on PRCMU Timer as sched_clock
Marc Zyngier985c0672012-03-05 11:49:30 +0000248
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +0200249config CLKSRC_EFM32
250 bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
251 depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
Axel Lin09ca2752013-11-20 10:15:11 +0800252 select CLKSRC_MMIO
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +0200253 default ARCH_EFM32
254 help
255 Support to use the timers of EFM32 SoCs as clock source and clock
256 event device.
257
Joachim Eastwood050dd322015-05-12 00:00:48 +0200258config CLKSRC_LPC32XX
Daniel Lezcanoddcf48c2015-10-31 21:44:52 +0100259 bool "Clocksource for LPC32XX" if COMPILE_TEST
Richard Weinberger863ee052016-01-02 23:06:36 +0100260 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Ezequiel Garcia1b18fd22016-02-09 22:54:27 -0300261 depends on ARM
Joachim Eastwood050dd322015-05-12 00:00:48 +0200262 select CLKSRC_MMIO
263 select CLKSRC_OF
Daniel Lezcanoddcf48c2015-10-31 21:44:52 +0100264 help
265 Support for the LPC32XX clocksource.
Joachim Eastwood050dd322015-05-12 00:00:48 +0200266
Ezequiel Garcia84583982015-08-07 16:39:31 +0100267config CLKSRC_PISTACHIO
Daniel Lezcanodfdb1652015-10-30 17:28:13 +0100268 bool "Clocksource for Pistachio SoC" if COMPILE_TEST
Richard Weinberger863ee052016-01-02 23:06:36 +0100269 depends on HAS_IOMEM
Ezequiel Garcia84583982015-08-07 16:39:31 +0100270 select CLKSRC_OF
Daniel Lezcanodfdb1652015-10-30 17:28:13 +0100271 help
272 Enables the clocksource for the Pistachio SoC.
Ezequiel Garcia84583982015-08-07 16:39:31 +0100273
Felipe Balbife851f52015-09-29 13:55:33 -0500274config CLKSRC_TI_32K
275 bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
Felipe Balbidfedaf12015-10-16 16:10:05 -0500276 depends on GENERIC_SCHED_CLOCK
Felipe Balbife851f52015-09-29 13:55:33 -0500277 select CLKSRC_OF if OF
278 help
279 This option enables support for Texas Instruments 32.768 Hz clocksource
280 available on many OMAP-like platforms.
281
Noam Camusa5322452015-10-17 22:37:30 +0300282config CLKSRC_NPS
283 bool "NPS400 clocksource driver" if COMPILE_TEST
284 depends on !PHYS_ADDR_T_64BIT
285 select CLKSRC_MMIO
286 select CLKSRC_OF if OF
287 help
288 NPS400 clocksource support.
289 Got 64 bit counter with update rate up to 1000MHz.
290 This counter is accessed via couple of 32 bit memory mapped registers.
291
Maxime Coqueline37e4592015-05-22 23:03:33 +0200292config CLKSRC_STM32
Paul Gortmaker1cb6c212015-06-20 19:02:32 -0400293 bool "Clocksource for STM32 SoCs" if !ARCH_STM32
294 depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
Maxime Coqueline37e4592015-05-22 23:03:33 +0200295 select CLKSRC_MMIO
296
Vladimir Murzin03026372016-04-25 09:45:44 +0100297config CLKSRC_MPS2
298 bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
299 depends on GENERIC_SCHED_CLOCK
300 select CLKSRC_MMIO
301 select CLKSRC_OF
302
Vineet Guptac4c9a042016-10-31 13:46:38 -0700303config ARC_TIMERS
304 bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
305 depends on GENERIC_CLOCKEVENTS
306 select CLKSRC_OF
307 help
308 These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
309 (ARC700 as well as ARC HS38).
310 TIMER0 serves as clockevent while TIMER1 provides clocksource
311
312config ARC_TIMERS_64BIT
313 bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
314 depends on GENERIC_CLOCKEVENTS
315 depends on ARC_TIMERS
316 select CLKSRC_OF
317 help
318 This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP)
319 RTC is implemented inside the core, while GFRC sits outside the core in
320 ARConnect IP block. Driver automatically picks one of them for clocksource
321 as appropriate.
322
Mark Rutland8a4da6e2012-11-12 14:33:44 +0000323config ARM_ARCH_TIMER
324 bool
Rob Herring0583fe42013-04-10 18:27:51 -0500325 select CLKSRC_OF if OF
Marc Zyngierae281cb2015-09-28 15:49:17 +0100326 select CLKSRC_ACPI if ACPI
James Hogana2c5d4e2012-10-09 10:54:39 +0100327
Will Deacon037f6372013-08-23 15:32:29 +0100328config ARM_ARCH_TIMER_EVTSTREAM
Will Deacon46fd5c62016-06-27 17:30:13 +0100329 bool "Enable ARM architected timer event stream generation by default"
Will Deacon037f6372013-08-23 15:32:29 +0100330 default y if ARM_ARCH_TIMER
Stephen Boyd77f7ce92013-11-20 12:02:03 -0800331 depends on ARM_ARCH_TIMER
Will Deacon037f6372013-08-23 15:32:29 +0100332 help
Will Deacon46fd5c62016-06-27 17:30:13 +0100333 This option enables support by default for event stream generation
334 based on the ARM architected timer. It is used for waking up CPUs
335 executing the wfe instruction at a frequency represented as a
336 power-of-2 divisor of the clock rate. The behaviour can also be
337 overridden on the command line using the
338 clocksource.arm_arch_timer.evtstream parameter.
Will Deacon037f6372013-08-23 15:32:29 +0100339 The main use of the event stream is wfe-based timeouts of userspace
340 locking implementations. It might also be useful for imposing timeout
341 on wfe to safeguard against any programming errors in case an expected
342 event is not generated.
343 This must be disabled for hardware validation purposes to detect any
344 hardware anomalies of missing events.
345
Ding Tianhong16d10ef2017-02-06 16:47:41 +0000346config ARM_ARCH_TIMER_OOL_WORKAROUND
347 bool
348
Scott Woodf6dc1572016-09-22 03:35:17 -0500349config FSL_ERRATUM_A008585
350 bool "Workaround for Freescale/NXP Erratum A-008585"
351 default y
352 depends on ARM_ARCH_TIMER && ARM64
Ding Tianhong16d10ef2017-02-06 16:47:41 +0000353 select ARM_ARCH_TIMER_OOL_WORKAROUND
Scott Woodf6dc1572016-09-22 03:35:17 -0500354 help
355 This option enables a workaround for Freescale/NXP Erratum
356 A-008585 ("ARM generic timer may contain an erroneous
357 value"). The workaround will only be active if the
358 fsl,erratum-a008585 property is found in the timer node.
359
Ding Tianhongbb42ca42017-02-06 16:47:42 +0000360config HISILICON_ERRATUM_161010101
361 bool "Workaround for Hisilicon Erratum 161010101"
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 for Hisilicon Erratum
367 161010101. The workaround will be active if the hisilicon,erratum-161010101
368 property is found in the timer node.
369
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100370config ARM_GLOBAL_TIMER
Daniel Lezcano67a87a42016-06-06 14:34:28 +0200371 bool "Support for the ARM global timer" if COMPILE_TEST
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100372 select CLKSRC_OF if OF
Daniel Lezcano67a87a42016-06-06 14:34:28 +0200373 depends on ARM
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100374 help
375 This options enables support for the ARM global timer unit
376
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100377config ARM_TIMER_SP804
378 bool "Support for Dual Timer SP804 module"
Guenter Roeck002af192015-06-23 20:49:05 -0700379 depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100380 select CLKSRC_MMIO
381 select CLKSRC_OF if OF
382
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100383config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
384 bool
385 depends on ARM_GLOBAL_TIMER
386 default y
387 help
388 Use ARM global timer clock source as sched_clock
389
Maxime Coquelin4958ebb2015-05-09 09:53:46 +0200390config ARMV7M_SYSTICK
Daniel Lezcanoe2146d82016-06-02 18:41:52 +0200391 bool "Support for the ARMv7M system time" if COMPILE_TEST
Maxime Coquelin4958ebb2015-05-09 09:53:46 +0200392 select CLKSRC_OF if OF
393 select CLKSRC_MMIO
394 help
395 This options enables support for the ARMv7M system timer unit
396
Maxime Ripardb052ff32014-09-02 18:12:35 +0200397config ATMEL_PIT
398 select CLKSRC_OF if OF
399 def_bool SOC_AT91SAM9 || SOC_SAMA5
400
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100401config ATMEL_ST
Daniel Lezcanob988d3f2016-06-06 19:08:39 +0200402 bool "Atmel ST timer support" if COMPILE_TEST
403 depends on GENERIC_CLOCKEVENTS
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100404 select CLKSRC_OF
Alexandre Belloni7ab7ef72015-03-19 14:17:48 +0100405 select MFD_SYSCON
Daniel Lezcanob988d3f2016-06-06 19:08:39 +0200406 help
407 Support for the Atmel ST timer.
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100408
James Hogana2c5d4e2012-10-09 10:54:39 +0100409config CLKSRC_METAG_GENERIC
410 def_bool y if METAG
411 help
412 This option enables support for the Meta per-thread timers.
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900413
414config CLKSRC_EXYNOS_MCT
Daniel Lezcano39366ef2015-11-01 21:51:30 +0100415 bool "Exynos multi core timer driver" if COMPILE_TEST
Chanwoo Choif1a4c1f2016-08-24 22:49:05 +0900416 depends on ARM || ARM64
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900417 help
418 Support for Multi Core Timer controller on Exynos SoCs.
Arnd Bergmann241a9872013-05-06 23:49:09 +0200419
Tomasz Figaf1189982013-04-20 23:22:13 +0200420config CLKSRC_SAMSUNG_PWM
Alexandre Bellonide37b0b2016-06-16 15:53:18 +0200421 bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +0100422 depends on GENERIC_CLOCKEVENTS
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100423 depends on HAS_IOMEM
Tomasz Figaf1189982013-04-20 23:22:13 +0200424 help
425 This is a new clocksource driver for the PWM timer found in
426 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
427 for all devicetree enabled platforms. This driver will be
428 needed only on systems that do not have the Exynos MCT available.
Jingchang Luc1967242013-05-29 10:12:17 +0200429
Xiubo Li2529c3a2014-05-23 10:12:04 +0200430config FSL_FTM_TIMER
Daniel Lezcanoef493362015-11-02 09:51:02 +0100431 bool "Freescale FlexTimer Module driver" if COMPILE_TEST
Daniel Lezcano0901f182015-11-04 14:21:42 +0100432 depends on GENERIC_CLOCKEVENTS
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100433 depends on HAS_IOMEM
Daniel Lezcano03724ac2016-01-08 14:21:31 +0100434 select CLKSRC_MMIO
Xiubo Li2529c3a2014-05-23 10:12:04 +0200435 help
436 Support for Freescale FlexTimer Module (FTM) timer.
437
Jingchang Luc1967242013-05-29 10:12:17 +0200438config VF_PIT_TIMER
439 bool
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +0100440 select CLKSRC_MMIO
Jingchang Luc1967242013-05-29 10:12:17 +0200441 help
442 Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100443
Neil Armstrong89355272016-06-15 12:13:26 +0200444config OXNAS_RPS_TIMER
445 bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
446 depends on GENERIC_CLOCKEVENTS
447 select CLKSRC_OF
448 select CLKSRC_MMIO
449 help
450 This enables support for the Oxford Semiconductor OXNAS RPS timers.
451
Magnus Dammfd3f1272014-02-20 12:54:45 +0100452config SYS_SUPPORTS_SH_CMT
453 bool
454
Matthias Bruggerecb35302014-07-18 11:36:43 +0200455config MTK_TIMER
Daniel Lezcanofbca9ea2015-10-30 17:53:27 +0100456 bool "Mediatek timer driver" if COMPILE_TEST
Richard Weinberger863ee052016-01-02 23:06:36 +0100457 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Matthias Bruggerecb35302014-07-18 11:36:43 +0200458 select CLKSRC_OF
459 select CLKSRC_MMIO
Daniel Lezcanofbca9ea2015-10-30 17:53:27 +0100460 help
461 Support for Mediatek timer driver.
Matthias Bruggerecb35302014-07-18 11:36:43 +0200462
Magnus Dammfd3f1272014-02-20 12:54:45 +0100463config SYS_SUPPORTS_SH_MTU2
464 bool
465
466config SYS_SUPPORTS_SH_TMU
467 bool
468
469config SYS_SUPPORTS_EM_STI
470 bool
471
Rich Felker9995f4f2016-10-13 21:51:06 +0000472config CLKSRC_JCORE_PIT
473 bool "J-Core PIT timer driver" if COMPILE_TEST
474 depends on OF
475 depends on GENERIC_CLOCKEVENTS
476 depends on HAS_IOMEM
477 select CLKSRC_MMIO
478 help
479 This enables build of clocksource and clockevent driver for
480 the integrated PIT in the J-Core synthesizable, open source SoC.
481
Magnus Dammfd3f1272014-02-20 12:54:45 +0100482config SH_TIMER_CMT
483 bool "Renesas CMT timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100484 depends on GENERIC_CLOCKEVENTS
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100485 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100486 default SYS_SUPPORTS_SH_CMT
487 help
488 This enables build of a clocksource and clockevent driver for
489 the Compare Match Timer (CMT) hardware available in 16/32/48-bit
490 variants on a wide range of Mobile and Automotive SoCs from Renesas.
491
492config SH_TIMER_MTU2
493 bool "Renesas MTU2 timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100494 depends on GENERIC_CLOCKEVENTS
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100495 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100496 default SYS_SUPPORTS_SH_MTU2
497 help
498 This enables build of a clockevent driver for the Multi-Function
Kuninori Morimoto7e139182014-07-18 11:36:36 +0200499 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100500 This hardware comes with 16 bit-timer registers.
501
Chris Brandtfb6002a2017-01-27 15:02:15 -0500502config RENESAS_OSTM
503 bool "Renesas OSTM timer driver" if COMPILE_TEST
504 depends on GENERIC_CLOCKEVENTS
505 select CLKSRC_MMIO
506 help
507 Enables the support for the Renesas OSTM.
508
Magnus Dammfd3f1272014-02-20 12:54:45 +0100509config SH_TIMER_TMU
510 bool "Renesas TMU timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100511 depends on GENERIC_CLOCKEVENTS
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100512 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100513 default SYS_SUPPORTS_SH_TMU
514 help
515 This enables build of a clocksource and clockevent driver for
516 the 32-bit Timer Unit (TMU) hardware available on a wide range
517 SoCs from Renesas.
518
519config EM_TIMER_STI
520 bool "Renesas STI timer driver" if COMPILE_TEST
Chen Gang40c96312014-07-08 20:39:40 +0800521 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100522 default SYS_SUPPORTS_EM_STI
523 help
524 This enables build of a clocksource and clockevent driver for
525 the 48-bit System Timer (STI) hardware available on a SoCs
526 such as EMEV2 from former NEC Electronics.
Linus Torvaldsdfc25e42014-04-05 13:51:19 -0700527
Kumar Gala3f8e8ce2014-01-29 16:17:30 -0600528config CLKSRC_QCOM
Daniel Lezcano3dc0e9f2015-10-09 11:10:43 +0200529 bool "Qualcomm MSM timer" if COMPILE_TEST
530 depends on ARM
531 select CLKSRC_OF
532 help
533 This enables the clocksource and the per CPU clockevent driver for the
534 Qualcomm SoCs.
Pawel Moll220e2a82014-04-16 18:22:59 +0100535
536config CLKSRC_VERSATILE
Daniel Lezcano5cc87a42016-06-07 11:05:01 +0200537 bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
538 depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
Pawel Moll220e2a82014-04-16 18:22:59 +0100539 select CLKSRC_OF
540 default y if MFD_VEXPRESS_SYSREG
541 help
542 This option enables clock source based on free running
543 counter available in the "System Registers" block of
544 ARM Versatile, RealView and Versatile Express reference
545 platforms.
Jean Delvare58394272014-06-16 11:48:45 +0200546
Andrew Brestickerfa5635a2014-10-20 12:03:58 -0700547config CLKSRC_MIPS_GIC
548 bool
549 depends on MIPS_GIC
Andrew Brestickere12aa822014-11-12 11:43:39 -0800550 select CLKSRC_OF
Andrew Brestickerfa5635a2014-10-20 12:03:58 -0700551
Marc Gonzalezccd63ce2015-10-09 16:59:18 +0200552config CLKSRC_TANGO_XTAL
Daniel Lezcano5a7351f2015-10-29 20:54:19 +0100553 bool "Clocksource for Tango SoC" if COMPILE_TEST
554 depends on ARM
Marc Gonzalezccd63ce2015-10-09 16:59:18 +0200555 select CLKSRC_OF
Daniel Lezcano08818412015-11-13 10:44:38 +0100556 select CLKSRC_MMIO
Daniel Lezcano5a7351f2015-10-29 20:54:19 +0100557 help
558 This enables the clocksource for Tango SoC
Marc Gonzalezccd63ce2015-10-09 16:59:18 +0200559
Dmitry Eremin-Solenikove074ff82014-12-21 16:07:09 +0100560config CLKSRC_PXA
Daniel Lezcano5ae996c2015-10-09 17:47:32 +0200561 bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
562 depends on GENERIC_CLOCKEVENTS
Richard Weinbergerd7023e622016-01-25 23:24:19 +0100563 depends on HAS_IOMEM
Daniel Lezcano5ae996c2015-10-09 17:47:32 +0200564 select CLKSRC_MMIO
Dmitry Eremin-Solenikove074ff82014-12-21 16:07:09 +0100565 help
566 This enables OST0 support available on PXA and SA-11x0
567 platforms.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900568
Daniel Lezcano97a23be2015-11-09 14:43:52 +0100569config H8300_TMR8
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100570 bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
Richard Weinberger863ee052016-01-02 23:06:36 +0100571 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100572 help
573 This enables the 8 bits timer for the H8300 platform.
Daniel Lezcano97a23be2015-11-09 14:43:52 +0100574
Yoshinori Sato618b9022015-01-28 02:52:42 +0900575config H8300_TMR16
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100576 bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
Richard Weinberger863ee052016-01-02 23:06:36 +0100577 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100578 help
579 This enables the 16 bits timer for the H8300 platform with the
580 H83069 cpu.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900581
582config H8300_TPU
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100583 bool "Clocksource for the H8300 platform" if COMPILE_TEST
Richard Weinberger863ee052016-01-02 23:06:36 +0100584 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Daniel Lezcano46e7c3c2015-11-09 15:18:08 +0100585 help
586 This enables the clocksource for the H8300 platform with the
587 H8S2678 cpu.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900588
Shawn Guobea5af42015-05-15 15:41:00 +0800589config CLKSRC_IMX_GPT
590 bool "Clocksource using i.MX GPT" if COMPILE_TEST
591 depends on ARM && CLKDEV_LOOKUP
592 select CLKSRC_MMIO
593
Lee Jones70bef012015-05-26 13:39:43 +0100594config CLKSRC_ST_LPC
Daniel Lezcanobaacaf82015-10-09 15:36:28 +0200595 bool "Low power clocksource found in the LPC" if COMPILE_TEST
Lee Jones70bef012015-05-26 13:39:43 +0100596 select CLKSRC_OF if OF
Richard Weinberger863ee052016-01-02 23:06:36 +0100597 depends on HAS_IOMEM
Arnd Bergmann2be6d9b2016-01-25 17:02:49 +0100598 select CLKSRC_MMIO
Lee Jones70bef012015-05-26 13:39:43 +0100599 help
600 Enable this option to use the Low Power controller timer
601 as clocksource.
602
Jean Delvare58394272014-06-16 11:48:45 +0200603endmenu