xref: /openbmc/linux/drivers/clocksource/Kconfig (revision 4750535b)
158394271SJean Delvaremenu "Clock Source drivers"
23da6d49eSArnd Bergmann	depends on !ARCH_USES_GETTIMEOFFSET
358394271SJean Delvare
4ae278a93SStephen Warrenconfig CLKSRC_OF
5ae278a93SStephen Warren	bool
6aad83b15SMarc Zyngier	select CLKSRC_PROBE
7aad83b15SMarc Zyngier
8376bc271SDaniel Lezcanoconfig CLKEVT_OF
9376bc271SDaniel Lezcano	bool
10376bc271SDaniel Lezcano	select CLKEVT_PROBE
11376bc271SDaniel Lezcano
12aad83b15SMarc Zyngierconfig CLKSRC_ACPI
13aad83b15SMarc Zyngier	bool
14aad83b15SMarc Zyngier	select CLKSRC_PROBE
15aad83b15SMarc Zyngier
16aad83b15SMarc Zyngierconfig CLKSRC_PROBE
17aad83b15SMarc Zyngier	bool
18ae278a93SStephen Warren
19376bc271SDaniel Lezcanoconfig CLKEVT_PROBE
20376bc271SDaniel Lezcano	bool
21376bc271SDaniel Lezcano
2289c0b8e2SRussell Kingconfig CLKSRC_I8253
2389c0b8e2SRussell King	bool
24442c8176SRussell King
25e6220bdcSThomas Gleixnerconfig CLKEVT_I8253
26e6220bdcSThomas Gleixner	bool
27e6220bdcSThomas Gleixner
2815f304b6SRalf Baechleconfig I8253_LOCK
2915f304b6SRalf Baechle	bool
3015f304b6SRalf Baechle
3115f304b6SRalf Baechleconfig CLKBLD_I8253
32e6220bdcSThomas Gleixner	def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
3315f304b6SRalf Baechle
34442c8176SRussell Kingconfig CLKSRC_MMIO
35442c8176SRussell King	bool
3606c3df49SJamie Iles
372ea879a7SDaniel Lezcanoconfig BCM2835_TIMER
382ea879a7SDaniel Lezcano	bool "BCM2835 timer driver" if COMPILE_TEST
392ea879a7SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
402ea879a7SDaniel Lezcano	select CLKSRC_MMIO
412ea879a7SDaniel Lezcano	help
422ea879a7SDaniel Lezcano	  Enables the support for the BCM2835 timer driver.
432ea879a7SDaniel Lezcano
441cad71e3SDaniel Lezcanoconfig BCM_KONA_TIMER
451cad71e3SDaniel Lezcano	bool "BCM mobile timer driver" if COMPILE_TEST
461cad71e3SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
471cad71e3SDaniel Lezcano	select CLKSRC_MMIO
481cad71e3SDaniel Lezcano	help
491cad71e3SDaniel Lezcano	  Enables the support for the BCM Kona mobile timer driver.
501cad71e3SDaniel Lezcano
519b8bb773SBaruch Siachconfig DIGICOLOR_TIMER
52e6c1db13SDaniel Lezcano	bool "Digicolor timer driver" if COMPILE_TEST
530901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
542be6d9bfSArnd Bergmann	select CLKSRC_MMIO
55d7023e62SRichard Weinberger	depends on HAS_IOMEM
56e6c1db13SDaniel Lezcano	help
57e6c1db13SDaniel Lezcano	  Enables the support for the digicolor timer driver.
589b8bb773SBaruch Siach
5906c3df49SJamie Ilesconfig DW_APB_TIMER
605b097f6bSDaniel Lezcano	bool "DW APB timer driver" if COMPILE_TEST
610901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
625b097f6bSDaniel Lezcano	help
635b097f6bSDaniel Lezcano	  Enables the support for the dw_apb timer.
64489bcceaSMattias Wallin
65cfda5901SDinh Nguyenconfig DW_APB_TIMER_OF
66cfda5901SDinh Nguyen	bool
671b4eca0fSHeiko Stuebner	select DW_APB_TIMER
6810021488SHeiko Stuebner	select CLKSRC_OF
69cfda5901SDinh Nguyen
70*4750535bSLinus Walleijconfig GEMINI_TIMER
71*4750535bSLinus Walleij	bool "Cortina Gemini timer driver" if COMPILE_TEST
72*4750535bSLinus Walleij	depends on GENERIC_CLOCKEVENTS
73*4750535bSLinus Walleij	depends on HAS_IOMEM
74*4750535bSLinus Walleij	select CLKSRC_MMIO
75*4750535bSLinus Walleij	select CLKSRC_OF
76*4750535bSLinus Walleij	select MFD_SYSCON
77*4750535bSLinus Walleij	help
78*4750535bSLinus Walleij	  Enables support for the Gemini timer
79*4750535bSLinus Walleij
80468b8c4cSDaniel Lezcanoconfig ROCKCHIP_TIMER
8140ada2aaSDaniel Lezcano	bool "Rockchip timer driver" if COMPILE_TEST
8240ada2aaSDaniel Lezcano	depends on ARM || ARM64
83468b8c4cSDaniel Lezcano	select CLKSRC_OF
8440ada2aaSDaniel Lezcano	help
8540ada2aaSDaniel Lezcano	  Enables the support for the rockchip timer driver.
86468b8c4cSDaniel Lezcano
876fe9cbd1SGregory CLEMENTconfig ARMADA_370_XP_TIMER
889519e80cSDaniel Lezcano	bool "Armada 370 and XP timer driver" if COMPILE_TEST
899519e80cSDaniel Lezcano	depends on ARM
907b0dd72aSJean Pihet	select CLKSRC_OF
912be6d9bfSArnd Bergmann	select CLKSRC_MMIO
929519e80cSDaniel Lezcano	help
939519e80cSDaniel Lezcano	  Enables the support for the Armada 370 and XP timer driver.
946fe9cbd1SGregory CLEMENT
95e4a6b378SCarlo Caioneconfig MESON6_TIMER
960b7a7bb7SDaniel Lezcano	bool "Meson6 timer driver" if COMPILE_TEST
970901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
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
1050c1dcfd5SSebastian Hesselbarth	select CLKSRC_OF
1060c1dcfd5SSebastian Hesselbarth	select CLKSRC_MMIO
107c9165549SDaniel Lezcano	help
108c9165549SDaniel Lezcano	  Enables the support for the Orion timer driver
1090c1dcfd5SSebastian Hesselbarth
110119fd635SMaxime Ripardconfig SUN4I_TIMER
111b4fcd48bSDaniel Lezcano	bool "Sun4i timer driver" if COMPILE_TEST
1120901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
113d7023e62SRichard Weinberger	depends on HAS_IOMEM
11471c568c0SMaxime Ripard	select CLKSRC_MMIO
115b4fcd48bSDaniel Lezcano	help
116b4fcd48bSDaniel Lezcano	  Enables support for the Sun4i timer.
117b2ac5d75SMaxime Ripard
11867905540SMaxime Ripardconfig SUN5I_HSTIMER
119f0c5afb7SDaniel Lezcano	bool "Sun5i timer driver" if COMPILE_TEST
12067905540SMaxime Ripard	select CLKSRC_MMIO
121f0c5afb7SDaniel Lezcano	depends on COMMON_CLK
122f0c5afb7SDaniel Lezcano	help
123f0c5afb7SDaniel Lezcano	  Enables support the Sun5i timer.
12467905540SMaxime Ripard
125910978e7SThierry Redingconfig TEGRA_TIMER
126adce4bc8SDaniel Lezcano	bool "Tegra timer driver" if COMPILE_TEST
1272be6d9bfSArnd Bergmann	select CLKSRC_MMIO
128adce4bc8SDaniel Lezcano	depends on ARM
129adce4bc8SDaniel Lezcano	help
130adce4bc8SDaniel Lezcano	  Enables support for the Tegra driver.
131910978e7SThierry Reding
132ff7ec345STony Priskconfig VT8500_TIMER
133b4bdf7efSDaniel Lezcano	bool "VT8500 timer driver" if COMPILE_TEST
1340901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
135d7023e62SRichard Weinberger	depends on HAS_IOMEM
136b4bdf7efSDaniel Lezcano	help
137b4bdf7efSDaniel Lezcano	  Enables support for the VT8500 driver.
138ff7ec345STony Prisk
1394f0f234fSMichal Simekconfig CADENCE_TTC_TIMER
14057f49318SDaniel Lezcano	bool "Cadence TTC timer driver" if COMPILE_TEST
14157f49318SDaniel Lezcano	depends on COMMON_CLK
14257f49318SDaniel Lezcano	help
14357f49318SDaniel Lezcano	  Enables support for the cadence ttc driver.
1444f0f234fSMichal Simek
145a8b1b9fcSDaniel Lezcanoconfig ASM9260_TIMER
146b9755841SDaniel Lezcano	bool "ASM9260 timer driver" if COMPILE_TEST
1470901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
148a8b1b9fcSDaniel Lezcano	select CLKSRC_MMIO
149a8b1b9fcSDaniel Lezcano	select CLKSRC_OF
150b9755841SDaniel Lezcano	help
151b9755841SDaniel Lezcano	  Enables support for the ASM9260 timer.
152a8b1b9fcSDaniel Lezcano
153694e33a7SLinus Walleijconfig CLKSRC_NOMADIK_MTU
15470329653SDaniel Lezcano	bool "Nomakdik clocksource driver" if COMPILE_TEST
15570329653SDaniel Lezcano	depends on ARM
156694e33a7SLinus Walleij	select CLKSRC_MMIO
157694e33a7SLinus Walleij	help
158694e33a7SLinus Walleij	  Support for Multi Timer Unit. MTU provides access
159694e33a7SLinus Walleij	  to multiple interrupt generating programmable
160694e33a7SLinus Walleij	  32-bit free running decrementing counters.
161694e33a7SLinus Walleij
162694e33a7SLinus Walleijconfig CLKSRC_NOMADIK_MTU_SCHED_CLOCK
163694e33a7SLinus Walleij	bool
164694e33a7SLinus Walleij	depends on CLKSRC_NOMADIK_MTU
165694e33a7SLinus Walleij	help
166694e33a7SLinus Walleij	  Use the Multi Timer Unit as the sched_clock.
167694e33a7SLinus Walleij
168489bcceaSMattias Wallinconfig CLKSRC_DBX500_PRCMU
1691becd6edSDaniel Lezcano	bool "Clocksource PRCMU Timer" if COMPILE_TEST
1700901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
171d7023e62SRichard Weinberger	depends on HAS_IOMEM
172489bcceaSMattias Wallin	help
173489bcceaSMattias Wallin	  Use the always on PRCMU Timer as clocksource
174489bcceaSMattias Wallin
175ecf0efdcSDaniel Lezcanoconfig CLPS711X_TIMER
176ecf0efdcSDaniel Lezcano	bool "Cirrus logic timer driver" if COMPILE_TEST
177ecf0efdcSDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
178ecf0efdcSDaniel Lezcano	select CLKSRC_MMIO
179ecf0efdcSDaniel Lezcano	help
180ecf0efdcSDaniel Lezcano	  Enables support for the Cirrus Logic PS711 timer.
181ecf0efdcSDaniel Lezcano
182b56d5d21SDaniel Lezcanoconfig ATLAS7_TIMER
183b56d5d21SDaniel Lezcano	bool "Atlas7 timer driver" if COMPILE_TEST
184b56d5d21SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
185b56d5d21SDaniel Lezcano	select CLKSRC_MMIO
186b56d5d21SDaniel Lezcano	help
187b56d5d21SDaniel Lezcano	  Enables support for the Atlas7 timer.
188b56d5d21SDaniel Lezcano
189419be9e3SDaniel Lezcanoconfig MOXART_TIMER
190419be9e3SDaniel Lezcano	bool "Moxart timer driver" if COMPILE_TEST
191419be9e3SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
192419be9e3SDaniel Lezcano	select CLKSRC_MMIO
193419be9e3SDaniel Lezcano	help
194419be9e3SDaniel Lezcano	  Enables support for the Moxart timer.
195419be9e3SDaniel Lezcano
196d81c50a0SDaniel Lezcanoconfig MXS_TIMER
197d81c50a0SDaniel Lezcano	bool "Mxs timer driver" if COMPILE_TEST
198d81c50a0SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
199d81c50a0SDaniel Lezcano	select CLKSRC_MMIO
200d81c50a0SDaniel Lezcano	select STMP_DEVICE
201d81c50a0SDaniel Lezcano	help
202d81c50a0SDaniel Lezcano	  Enables support for the Mxs timer.
203d81c50a0SDaniel Lezcano
204f3550d49SDaniel Lezcanoconfig PRIMA2_TIMER
205f3550d49SDaniel Lezcano	bool "Prima2 timer driver" if COMPILE_TEST
206f3550d49SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
207f3550d49SDaniel Lezcano	select CLKSRC_MMIO
208f3550d49SDaniel Lezcano	help
209f3550d49SDaniel Lezcano	  Enables support for the Prima2 timer.
210f3550d49SDaniel Lezcano
21185f98db4SDaniel Lezcanoconfig U300_TIMER
21285f98db4SDaniel Lezcano	bool "U300 timer driver" if COMPILE_TEST
21385f98db4SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
21485f98db4SDaniel Lezcano	depends on ARM
21585f98db4SDaniel Lezcano	select CLKSRC_MMIO
21685f98db4SDaniel Lezcano	help
21785f98db4SDaniel Lezcano	  Enables support for the U300 timer.
21885f98db4SDaniel Lezcano
219d683b9dcSDaniel Lezcanoconfig NSPIRE_TIMER
220d683b9dcSDaniel Lezcano	bool "NSpire timer driver" if COMPILE_TEST
221d683b9dcSDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
222d683b9dcSDaniel Lezcano	select CLKSRC_MMIO
223d683b9dcSDaniel Lezcano	help
224d683b9dcSDaniel Lezcano	  Enables support for the Nspire timer.
225d683b9dcSDaniel Lezcano
226c12547a0SDaniel Lezcanoconfig KEYSTONE_TIMER
227c12547a0SDaniel Lezcano	bool "Keystone timer driver" if COMPILE_TEST
228c12547a0SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
229c12547a0SDaniel Lezcano	depends on ARM || ARM64
230c12547a0SDaniel Lezcano	select CLKSRC_MMIO
231c12547a0SDaniel Lezcano	help
232c12547a0SDaniel Lezcano	  Enables support for the Keystone timer.
233c12547a0SDaniel Lezcano
234568c0342SDaniel Lezcanoconfig INTEGRATOR_AP_TIMER
235568c0342SDaniel Lezcano	bool "Integrator-ap timer driver" if COMPILE_TEST
236568c0342SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
237568c0342SDaniel Lezcano	select CLKSRC_MMIO
238568c0342SDaniel Lezcano	help
239568c0342SDaniel Lezcano	  Enables support for the Integrator-ap timer.
240568c0342SDaniel Lezcano
241489bcceaSMattias Wallinconfig CLKSRC_DBX500_PRCMU_SCHED_CLOCK
242489bcceaSMattias Wallin	bool "Clocksource PRCMU Timer sched_clock"
243694e33a7SLinus Walleij	depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
244489bcceaSMattias Wallin	default y
245489bcceaSMattias Wallin	help
246489bcceaSMattias Wallin	  Use the always on PRCMU Timer as sched_clock
247985c0679SMarc Zyngier
2489c9b7818SUwe Kleine-Königconfig CLKSRC_EFM32
2499c9b7818SUwe Kleine-König	bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
2509c9b7818SUwe Kleine-König	depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
25109ca2757SAxel Lin	select CLKSRC_MMIO
2529c9b7818SUwe Kleine-König	default ARCH_EFM32
2539c9b7818SUwe Kleine-König	help
2549c9b7818SUwe Kleine-König	  Support to use the timers of EFM32 SoCs as clock source and clock
2559c9b7818SUwe Kleine-König	  event device.
2569c9b7818SUwe Kleine-König
257050dd322SJoachim Eastwoodconfig CLKSRC_LPC32XX
258ddcf48c7SDaniel Lezcano	bool "Clocksource for LPC32XX" if COMPILE_TEST
259863ee050SRichard Weinberger	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
2601b18fd20SEzequiel Garcia	depends on ARM
261050dd322SJoachim Eastwood	select CLKSRC_MMIO
262050dd322SJoachim Eastwood	select CLKSRC_OF
263ddcf48c7SDaniel Lezcano	help
264ddcf48c7SDaniel Lezcano	  Support for the LPC32XX clocksource.
265050dd322SJoachim Eastwood
26684583983SEzequiel Garciaconfig CLKSRC_PISTACHIO
267dfdb1652SDaniel Lezcano	bool "Clocksource for Pistachio SoC" if COMPILE_TEST
268863ee050SRichard Weinberger	depends on HAS_IOMEM
26984583983SEzequiel Garcia	select CLKSRC_OF
270dfdb1652SDaniel Lezcano	help
271dfdb1652SDaniel Lezcano	  Enables the clocksource for the Pistachio SoC.
27284583983SEzequiel Garcia
273fe851f56SFelipe Balbiconfig CLKSRC_TI_32K
274fe851f56SFelipe Balbi	bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
275dfedaf10SFelipe Balbi	depends on GENERIC_SCHED_CLOCK
276fe851f56SFelipe Balbi	select CLKSRC_OF if OF
277fe851f56SFelipe Balbi	help
278fe851f56SFelipe Balbi	  This option enables support for Texas Instruments 32.768 Hz clocksource
279fe851f56SFelipe Balbi	  available on many OMAP-like platforms.
280fe851f56SFelipe Balbi
281a5322457SNoam Camusconfig CLKSRC_NPS
282a5322457SNoam Camus	bool "NPS400 clocksource driver" if COMPILE_TEST
283a5322457SNoam Camus	depends on !PHYS_ADDR_T_64BIT
284a5322457SNoam Camus	select CLKSRC_MMIO
285a5322457SNoam Camus	select CLKSRC_OF if OF
286a5322457SNoam Camus	help
287a5322457SNoam Camus	  NPS400 clocksource support.
288a5322457SNoam Camus	  Got 64 bit counter with update rate up to 1000MHz.
289a5322457SNoam Camus	  This counter is accessed via couple of 32 bit memory mapped registers.
290a5322457SNoam Camus
291e37e4593SMaxime Coquelinconfig CLKSRC_STM32
2921cb6c215SPaul Gortmaker	bool "Clocksource for STM32 SoCs" if !ARCH_STM32
2931cb6c215SPaul Gortmaker	depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
294e37e4593SMaxime Coquelin	select CLKSRC_MMIO
295e37e4593SMaxime Coquelin
2960302637fSVladimir Murzinconfig CLKSRC_MPS2
2970302637fSVladimir Murzin	bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
2980302637fSVladimir Murzin	depends on GENERIC_SCHED_CLOCK
2990302637fSVladimir Murzin	select CLKSRC_MMIO
3000302637fSVladimir Murzin	select CLKSRC_OF
3010302637fSVladimir Murzin
302c4c9a040SVineet Guptaconfig ARC_TIMERS
303c4c9a040SVineet Gupta	bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
304c4c9a040SVineet Gupta	depends on GENERIC_CLOCKEVENTS
305c4c9a040SVineet Gupta	select CLKSRC_OF
306c4c9a040SVineet Gupta	help
307c4c9a040SVineet Gupta	  These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
308c4c9a040SVineet Gupta	  (ARC700 as well as ARC HS38).
309c4c9a040SVineet Gupta	  TIMER0 serves as clockevent while TIMER1 provides clocksource
310c4c9a040SVineet Gupta
311c4c9a040SVineet Guptaconfig ARC_TIMERS_64BIT
312c4c9a040SVineet Gupta	bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
313c4c9a040SVineet Gupta	depends on GENERIC_CLOCKEVENTS
314c4c9a040SVineet Gupta	depends on ARC_TIMERS
315c4c9a040SVineet Gupta	select CLKSRC_OF
316c4c9a040SVineet Gupta	help
317c4c9a040SVineet Gupta	  This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP)
318c4c9a040SVineet Gupta	  RTC is implemented inside the core, while GFRC sits outside the core in
319c4c9a040SVineet Gupta	  ARConnect IP block. Driver automatically picks one of them for clocksource
320c4c9a040SVineet Gupta	  as appropriate.
321c4c9a040SVineet Gupta
3228a4da6e3SMark Rutlandconfig ARM_ARCH_TIMER
3238a4da6e3SMark Rutland	bool
3240583fe47SRob Herring	select CLKSRC_OF if OF
325ae281cbdSMarc Zyngier	select CLKSRC_ACPI if ACPI
326a2c5d4edSJames Hogan
327037f6377SWill Deaconconfig ARM_ARCH_TIMER_EVTSTREAM
32846fd5c6bSWill Deacon	bool "Enable ARM architected timer event stream generation by default"
329037f6377SWill Deacon	default y if ARM_ARCH_TIMER
33077f7ce9aSStephen Boyd	depends on ARM_ARCH_TIMER
331037f6377SWill Deacon	help
33246fd5c6bSWill Deacon	  This option enables support by default for event stream generation
33346fd5c6bSWill Deacon	  based on the ARM architected timer. It is used for waking up CPUs
33446fd5c6bSWill Deacon	  executing the wfe instruction at a frequency represented as a
33546fd5c6bSWill Deacon	  power-of-2 divisor of the clock rate. The behaviour can also be
33646fd5c6bSWill Deacon	  overridden on the command line using the
33746fd5c6bSWill Deacon	  clocksource.arm_arch_timer.evtstream parameter.
338037f6377SWill Deacon	  The main use of the event stream is wfe-based timeouts of userspace
339037f6377SWill Deacon	  locking implementations. It might also be useful for imposing timeout
340037f6377SWill Deacon	  on wfe to safeguard against any programming errors in case an expected
341037f6377SWill Deacon	  event is not generated.
342037f6377SWill Deacon	  This must be disabled for hardware validation purposes to detect any
343037f6377SWill Deacon	  hardware anomalies of missing events.
344037f6377SWill Deacon
345f6dc1576SScott Woodconfig FSL_ERRATUM_A008585
346f6dc1576SScott Wood	bool "Workaround for Freescale/NXP Erratum A-008585"
347f6dc1576SScott Wood	default y
348f6dc1576SScott Wood	depends on ARM_ARCH_TIMER && ARM64
349f6dc1576SScott Wood	help
350f6dc1576SScott Wood	  This option enables a workaround for Freescale/NXP Erratum
351f6dc1576SScott Wood	  A-008585 ("ARM generic timer may contain an erroneous
352f6dc1576SScott Wood	  value").  The workaround will only be active if the
353f6dc1576SScott Wood	  fsl,erratum-a008585 property is found in the timer node.
354f6dc1576SScott Wood
355c1b40e44SStuart Menefyconfig ARM_GLOBAL_TIMER
35667a87a43SDaniel Lezcano	bool "Support for the ARM global timer" if COMPILE_TEST
357c1b40e44SStuart Menefy	select CLKSRC_OF if OF
35867a87a43SDaniel Lezcano	depends on ARM
359c1b40e44SStuart Menefy	help
360c1b40e44SStuart Menefy	  This options enables support for the ARM global timer unit
361c1b40e44SStuart Menefy
3620b7402dcSSudeep Hollaconfig ARM_TIMER_SP804
3630b7402dcSSudeep Holla	bool "Support for Dual Timer SP804 module"
364002af195SGuenter Roeck	depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
3650b7402dcSSudeep Holla	select CLKSRC_MMIO
3660b7402dcSSudeep Holla	select CLKSRC_OF if OF
3670b7402dcSSudeep Holla
368c1b40e44SStuart Menefyconfig CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
369c1b40e44SStuart Menefy	bool
370c1b40e44SStuart Menefy	depends on ARM_GLOBAL_TIMER
371c1b40e44SStuart Menefy	default y
372c1b40e44SStuart Menefy	help
373c1b40e44SStuart Menefy	 Use ARM global timer clock source as sched_clock
374c1b40e44SStuart Menefy
3754958ebb3SMaxime Coquelinconfig ARMV7M_SYSTICK
376e2146d86SDaniel Lezcano	bool "Support for the ARMv7M system time" if COMPILE_TEST
3774958ebb3SMaxime Coquelin	select CLKSRC_OF if OF
3784958ebb3SMaxime Coquelin	select CLKSRC_MMIO
3794958ebb3SMaxime Coquelin	help
3804958ebb3SMaxime Coquelin	  This options enables support for the ARMv7M system timer unit
3814958ebb3SMaxime Coquelin
382b052ff30SMaxime Ripardconfig ATMEL_PIT
383b052ff30SMaxime Ripard	select CLKSRC_OF if OF
384b052ff30SMaxime Ripard	def_bool SOC_AT91SAM9 || SOC_SAMA5
385b052ff30SMaxime Ripard
386b53cdd03SAlexandre Belloniconfig ATMEL_ST
387b988d3f0SDaniel Lezcano	bool "Atmel ST timer support" if COMPILE_TEST
388b988d3f0SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
389b53cdd03SAlexandre Belloni	select CLKSRC_OF
3907ab7ef74SAlexandre Belloni	select MFD_SYSCON
391b988d3f0SDaniel Lezcano	help
392b988d3f0SDaniel Lezcano	  Support for the Atmel ST timer.
393b53cdd03SAlexandre Belloni
394a2c5d4edSJames Hoganconfig CLKSRC_METAG_GENERIC
395a2c5d4edSJames Hogan	def_bool y if METAG
396a2c5d4edSJames Hogan	help
397a2c5d4edSJames Hogan	  This option enables support for the Meta per-thread timers.
3986938d75aSThomas Abraham
3996938d75aSThomas Abrahamconfig CLKSRC_EXYNOS_MCT
40039366ef4SDaniel Lezcano	bool "Exynos multi core timer driver" if COMPILE_TEST
401f1a4c1f3SChanwoo Choi	depends on ARM || ARM64
4026938d75aSThomas Abraham	help
4036938d75aSThomas Abraham	  Support for Multi Core Timer controller on Exynos SoCs.
404241a9871SArnd Bergmann
405f1189989STomasz Figaconfig CLKSRC_SAMSUNG_PWM
406de37b0b5SAlexandre Belloni	bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
4070901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
408d7023e62SRichard Weinberger	depends on HAS_IOMEM
409f1189989STomasz Figa	help
410f1189989STomasz Figa	  This is a new clocksource driver for the PWM timer found in
411f1189989STomasz Figa	  Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
412f1189989STomasz Figa	  for all devicetree enabled platforms. This driver will be
413f1189989STomasz Figa	  needed only on systems that do not have the Exynos MCT available.
414c1967249SJingchang Lu
4152529c3a3SXiubo Liconfig FSL_FTM_TIMER
416ef49336bSDaniel Lezcano	bool "Freescale FlexTimer Module driver" if COMPILE_TEST
4170901f184SDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
418d7023e62SRichard Weinberger	depends on HAS_IOMEM
41903724ac3SDaniel Lezcano	select CLKSRC_MMIO
4202529c3a3SXiubo Li	help
4212529c3a3SXiubo Li	  Support for Freescale FlexTimer Module (FTM) timer.
4222529c3a3SXiubo Li
423c1967249SJingchang Luconfig VF_PIT_TIMER
424c1967249SJingchang Lu	bool
4252be6d9bfSArnd Bergmann	select CLKSRC_MMIO
426c1967249SJingchang Lu	help
427c1967249SJingchang Lu	  Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
428fd3f1270SMagnus Damm
42989355274SNeil Armstrongconfig OXNAS_RPS_TIMER
43089355274SNeil Armstrong	bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
43189355274SNeil Armstrong	depends on GENERIC_CLOCKEVENTS
43289355274SNeil Armstrong	select CLKSRC_OF
43389355274SNeil Armstrong	select CLKSRC_MMIO
43489355274SNeil Armstrong	help
43589355274SNeil Armstrong	  This enables support for the Oxford Semiconductor OXNAS RPS timers.
43689355274SNeil Armstrong
437fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_CMT
438fd3f1270SMagnus Damm        bool
439fd3f1270SMagnus Damm
440ecb3530dSMatthias Bruggerconfig MTK_TIMER
441fbca9eabSDaniel Lezcano	bool "Mediatek timer driver" if COMPILE_TEST
442863ee050SRichard Weinberger	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
443ecb3530dSMatthias Brugger	select CLKSRC_OF
444ecb3530dSMatthias Brugger	select CLKSRC_MMIO
445fbca9eabSDaniel Lezcano	help
446fbca9eabSDaniel Lezcano	  Support for Mediatek timer driver.
447ecb3530dSMatthias Brugger
448fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_MTU2
449fd3f1270SMagnus Damm        bool
450fd3f1270SMagnus Damm
451fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_TMU
452fd3f1270SMagnus Damm        bool
453fd3f1270SMagnus Damm
454fd3f1270SMagnus Dammconfig SYS_SUPPORTS_EM_STI
455fd3f1270SMagnus Damm        bool
456fd3f1270SMagnus Damm
4579995f4f1SRich Felkerconfig CLKSRC_JCORE_PIT
4589995f4f1SRich Felker	bool "J-Core PIT timer driver" if COMPILE_TEST
4599995f4f1SRich Felker	depends on OF
4609995f4f1SRich Felker	depends on GENERIC_CLOCKEVENTS
4619995f4f1SRich Felker	depends on HAS_IOMEM
4629995f4f1SRich Felker	select CLKSRC_MMIO
4639995f4f1SRich Felker	help
4649995f4f1SRich Felker	  This enables build of clocksource and clockevent driver for
4659995f4f1SRich Felker	  the integrated PIT in the J-Core synthesizable, open source SoC.
4669995f4f1SRich Felker
467fd3f1270SMagnus Dammconfig SH_TIMER_CMT
468fd3f1270SMagnus Damm	bool "Renesas CMT timer driver" if COMPILE_TEST
46987291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
47011bc26feSRichard Weinberger	depends on HAS_IOMEM
471fd3f1270SMagnus Damm	default SYS_SUPPORTS_SH_CMT
472fd3f1270SMagnus Damm	help
473fd3f1270SMagnus Damm	  This enables build of a clocksource and clockevent driver for
474fd3f1270SMagnus Damm	  the Compare Match Timer (CMT) hardware available in 16/32/48-bit
475fd3f1270SMagnus Damm	  variants on a wide range of Mobile and Automotive SoCs from Renesas.
476fd3f1270SMagnus Damm
477fd3f1270SMagnus Dammconfig SH_TIMER_MTU2
478fd3f1270SMagnus Damm	bool "Renesas MTU2 timer driver" if COMPILE_TEST
47987291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
48011bc26feSRichard Weinberger	depends on HAS_IOMEM
481fd3f1270SMagnus Damm	default SYS_SUPPORTS_SH_MTU2
482fd3f1270SMagnus Damm	help
483fd3f1270SMagnus Damm	  This enables build of a clockevent driver for the Multi-Function
4847e139187SKuninori Morimoto	  Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
485fd3f1270SMagnus Damm	  This hardware comes with 16 bit-timer registers.
486fd3f1270SMagnus Damm
487fd3f1270SMagnus Dammconfig SH_TIMER_TMU
488fd3f1270SMagnus Damm	bool "Renesas TMU timer driver" if COMPILE_TEST
48987291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
49011bc26feSRichard Weinberger	depends on HAS_IOMEM
491fd3f1270SMagnus Damm	default SYS_SUPPORTS_SH_TMU
492fd3f1270SMagnus Damm	help
493fd3f1270SMagnus Damm	  This enables build of a clocksource and clockevent driver for
494fd3f1270SMagnus Damm	  the 32-bit Timer Unit (TMU) hardware available on a wide range
495fd3f1270SMagnus Damm	  SoCs from Renesas.
496fd3f1270SMagnus Damm
497fd3f1270SMagnus Dammconfig EM_TIMER_STI
498fd3f1270SMagnus Damm	bool "Renesas STI timer driver" if COMPILE_TEST
49940c96312SChen Gang	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
500fd3f1270SMagnus Damm	default SYS_SUPPORTS_EM_STI
501fd3f1270SMagnus Damm	help
502fd3f1270SMagnus Damm	  This enables build of a clocksource and clockevent driver for
503fd3f1270SMagnus Damm	  the 48-bit System Timer (STI) hardware available on a SoCs
504fd3f1270SMagnus Damm	  such as EMEV2 from former NEC Electronics.
505dfc25e45SLinus Torvalds
5063f8e8ceeSKumar Galaconfig CLKSRC_QCOM
5073dc0e9f6SDaniel Lezcano	bool "Qualcomm MSM timer" if COMPILE_TEST
5083dc0e9f6SDaniel Lezcano	depends on ARM
5093dc0e9f6SDaniel Lezcano	select CLKSRC_OF
5103dc0e9f6SDaniel Lezcano	help
5113dc0e9f6SDaniel Lezcano	  This enables the clocksource and the per CPU clockevent driver for the
5123dc0e9f6SDaniel Lezcano	  Qualcomm SoCs.
513220e2a8dSPawel Moll
514220e2a8dSPawel Mollconfig CLKSRC_VERSATILE
5155cc87a4dSDaniel Lezcano	bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
5165cc87a4dSDaniel Lezcano	depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
517220e2a8dSPawel Moll	select CLKSRC_OF
518220e2a8dSPawel Moll	default y if MFD_VEXPRESS_SYSREG
519220e2a8dSPawel Moll	help
520220e2a8dSPawel Moll	  This option enables clock source based on free running
521220e2a8dSPawel Moll	  counter available in the "System Registers" block of
522220e2a8dSPawel Moll	  ARM Versatile, RealView and Versatile Express reference
523220e2a8dSPawel Moll	  platforms.
52458394271SJean Delvare
525fa5635a2SAndrew Brestickerconfig CLKSRC_MIPS_GIC
526fa5635a2SAndrew Bresticker	bool
527fa5635a2SAndrew Bresticker	depends on MIPS_GIC
528e12aa828SAndrew Bresticker	select CLKSRC_OF
529fa5635a2SAndrew Bresticker
530ccd63ce4SMarc Gonzalezconfig CLKSRC_TANGO_XTAL
5315a7351f0SDaniel Lezcano	bool "Clocksource for Tango SoC" if COMPILE_TEST
5325a7351f0SDaniel Lezcano	depends on ARM
533ccd63ce4SMarc Gonzalez	select CLKSRC_OF
5340881841fSDaniel Lezcano	select CLKSRC_MMIO
5355a7351f0SDaniel Lezcano	help
5365a7351f0SDaniel Lezcano	  This enables the clocksource for Tango SoC
537ccd63ce4SMarc Gonzalez
538e074ff86SDmitry Eremin-Solenikovconfig CLKSRC_PXA
5395ae996cbSDaniel Lezcano	bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
5405ae996cbSDaniel Lezcano	depends on GENERIC_CLOCKEVENTS
541d7023e62SRichard Weinberger	depends on HAS_IOMEM
5425ae996cbSDaniel Lezcano	select CLKSRC_MMIO
543e074ff86SDmitry Eremin-Solenikov	help
544e074ff86SDmitry Eremin-Solenikov	  This enables OST0 support available on PXA and SA-11x0
545e074ff86SDmitry Eremin-Solenikov	  platforms.
546618b902dSYoshinori Sato
54797a23bebSDaniel Lezcanoconfig H8300_TMR8
54846e7c3c6SDaniel Lezcano        bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
549863ee050SRichard Weinberger        depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
55046e7c3c6SDaniel Lezcano	help
55146e7c3c6SDaniel Lezcano	  This enables the 8 bits timer for the H8300 platform.
55297a23bebSDaniel Lezcano
553618b902dSYoshinori Satoconfig H8300_TMR16
55446e7c3c6SDaniel Lezcano        bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
555863ee050SRichard Weinberger        depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
55646e7c3c6SDaniel Lezcano	help
55746e7c3c6SDaniel Lezcano	  This enables the 16 bits timer for the H8300 platform with the
55846e7c3c6SDaniel Lezcano	  H83069 cpu.
559618b902dSYoshinori Sato
560618b902dSYoshinori Satoconfig H8300_TPU
56146e7c3c6SDaniel Lezcano        bool "Clocksource for the H8300 platform" if COMPILE_TEST
562863ee050SRichard Weinberger        depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
56346e7c3c6SDaniel Lezcano	help
56446e7c3c6SDaniel Lezcano	  This enables the clocksource for the H8300 platform with the
56546e7c3c6SDaniel Lezcano	  H8S2678 cpu.
566618b902dSYoshinori Sato
567bea5af41SShawn Guoconfig CLKSRC_IMX_GPT
568bea5af41SShawn Guo	bool "Clocksource using i.MX GPT" if COMPILE_TEST
569bea5af41SShawn Guo	depends on ARM && CLKDEV_LOOKUP
570bea5af41SShawn Guo	select CLKSRC_MMIO
571bea5af41SShawn Guo
57270bef01cSLee Jonesconfig CLKSRC_ST_LPC
573baacaf83SDaniel Lezcano	bool "Low power clocksource found in the LPC" if COMPILE_TEST
57470bef01cSLee Jones	select CLKSRC_OF if OF
575863ee050SRichard Weinberger	depends on HAS_IOMEM
5762be6d9bfSArnd Bergmann	select CLKSRC_MMIO
57770bef01cSLee Jones	help
57870bef01cSLee Jones	  Enable this option to use the Low Power controller timer
57970bef01cSLee Jones	  as clocksource.
58070bef01cSLee Jones
58158394271SJean Delvareendmenu
582