xref: /openbmc/linux/drivers/clocksource/Kconfig (revision ecb3530d)
158394271SJean Delvaremenu "Clock Source drivers"
258394271SJean Delvare
3ae278a93SStephen Warrenconfig CLKSRC_OF
4ae278a93SStephen Warren	bool
5ae278a93SStephen Warren
689c0b8e2SRussell Kingconfig CLKSRC_I8253
789c0b8e2SRussell King	bool
8442c8176SRussell King
9e6220bdcSThomas Gleixnerconfig CLKEVT_I8253
10e6220bdcSThomas Gleixner	bool
11e6220bdcSThomas Gleixner
1215f304b6SRalf Baechleconfig I8253_LOCK
1315f304b6SRalf Baechle	bool
1415f304b6SRalf Baechle
1515f304b6SRalf Baechleconfig CLKBLD_I8253
16e6220bdcSThomas Gleixner	def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
1715f304b6SRalf Baechle
18442c8176SRussell Kingconfig CLKSRC_MMIO
19442c8176SRussell King	bool
2006c3df49SJamie Iles
2106c3df49SJamie Ilesconfig DW_APB_TIMER
2206c3df49SJamie Iles	bool
23489bcceaSMattias Wallin
24cfda5901SDinh Nguyenconfig DW_APB_TIMER_OF
25cfda5901SDinh Nguyen	bool
261b4eca0fSHeiko Stuebner	select DW_APB_TIMER
2710021488SHeiko Stuebner	select CLKSRC_OF
28cfda5901SDinh Nguyen
296fe9cbd1SGregory CLEMENTconfig ARMADA_370_XP_TIMER
306fe9cbd1SGregory CLEMENT	bool
317b0dd72aSJean Pihet	select CLKSRC_OF
326fe9cbd1SGregory CLEMENT
330c1dcfd5SSebastian Hesselbarthconfig ORION_TIMER
340c1dcfd5SSebastian Hesselbarth	select CLKSRC_OF
350c1dcfd5SSebastian Hesselbarth	select CLKSRC_MMIO
360c1dcfd5SSebastian Hesselbarth	bool
370c1dcfd5SSebastian Hesselbarth
38119fd635SMaxime Ripardconfig SUN4I_TIMER
3971c568c0SMaxime Ripard	select CLKSRC_MMIO
40b2ac5d75SMaxime Ripard	bool
41b2ac5d75SMaxime Ripard
4267905540SMaxime Ripardconfig SUN5I_HSTIMER
4367905540SMaxime Ripard	select CLKSRC_MMIO
4467905540SMaxime Ripard	bool
4567905540SMaxime Ripard
46ff7ec345STony Priskconfig VT8500_TIMER
47ff7ec345STony Prisk	bool
48ff7ec345STony Prisk
494f0f234fSMichal Simekconfig CADENCE_TTC_TIMER
504f0f234fSMichal Simek	bool
514f0f234fSMichal Simek
52694e33a7SLinus Walleijconfig CLKSRC_NOMADIK_MTU
53694e33a7SLinus Walleij	bool
54694e33a7SLinus Walleij	depends on (ARCH_NOMADIK || ARCH_U8500)
55694e33a7SLinus Walleij	select CLKSRC_MMIO
56694e33a7SLinus Walleij	help
57694e33a7SLinus Walleij	  Support for Multi Timer Unit. MTU provides access
58694e33a7SLinus Walleij	  to multiple interrupt generating programmable
59694e33a7SLinus Walleij	  32-bit free running decrementing counters.
60694e33a7SLinus Walleij
61694e33a7SLinus Walleijconfig CLKSRC_NOMADIK_MTU_SCHED_CLOCK
62694e33a7SLinus Walleij	bool
63694e33a7SLinus Walleij	depends on CLKSRC_NOMADIK_MTU
64694e33a7SLinus Walleij	help
65694e33a7SLinus Walleij	  Use the Multi Timer Unit as the sched_clock.
66694e33a7SLinus Walleij
67489bcceaSMattias Wallinconfig CLKSRC_DBX500_PRCMU
68489bcceaSMattias Wallin	bool "Clocksource PRCMU Timer"
6929746f48SLinus Walleij	depends on UX500_SOC_DB8500
70489bcceaSMattias Wallin	default y
71489bcceaSMattias Wallin	help
72489bcceaSMattias Wallin	  Use the always on PRCMU Timer as clocksource
73489bcceaSMattias Wallin
74489bcceaSMattias Wallinconfig CLKSRC_DBX500_PRCMU_SCHED_CLOCK
75489bcceaSMattias Wallin	bool "Clocksource PRCMU Timer sched_clock"
76694e33a7SLinus Walleij	depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
77489bcceaSMattias Wallin	default y
78489bcceaSMattias Wallin	help
79489bcceaSMattias Wallin	  Use the always on PRCMU Timer as sched_clock
80985c0679SMarc Zyngier
819c9b7818SUwe Kleine-Königconfig CLKSRC_EFM32
829c9b7818SUwe Kleine-König	bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
839c9b7818SUwe Kleine-König	depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
8409ca2757SAxel Lin	select CLKSRC_MMIO
859c9b7818SUwe Kleine-König	default ARCH_EFM32
869c9b7818SUwe Kleine-König	help
879c9b7818SUwe Kleine-König	  Support to use the timers of EFM32 SoCs as clock source and clock
889c9b7818SUwe Kleine-König	  event device.
899c9b7818SUwe Kleine-König
908a4da6e3SMark Rutlandconfig ARM_ARCH_TIMER
918a4da6e3SMark Rutland	bool
920583fe47SRob Herring	select CLKSRC_OF if OF
93a2c5d4edSJames Hogan
94037f6377SWill Deaconconfig ARM_ARCH_TIMER_EVTSTREAM
95037f6377SWill Deacon	bool "Support for ARM architected timer event stream generation"
96037f6377SWill Deacon	default y if ARM_ARCH_TIMER
9777f7ce9aSStephen Boyd	depends on ARM_ARCH_TIMER
98037f6377SWill Deacon	help
99037f6377SWill Deacon	  This option enables support for event stream generation based on
100037f6377SWill Deacon	  the ARM architected timer. It is used for waking up CPUs executing
101037f6377SWill Deacon	  the wfe instruction at a frequency represented as a power-of-2
102037f6377SWill Deacon	  divisor of the clock rate.
103037f6377SWill Deacon	  The main use of the event stream is wfe-based timeouts of userspace
104037f6377SWill Deacon	  locking implementations. It might also be useful for imposing timeout
105037f6377SWill Deacon	  on wfe to safeguard against any programming errors in case an expected
106037f6377SWill Deacon	  event is not generated.
107037f6377SWill Deacon	  This must be disabled for hardware validation purposes to detect any
108037f6377SWill Deacon	  hardware anomalies of missing events.
109037f6377SWill Deacon
110c1b40e44SStuart Menefyconfig ARM_GLOBAL_TIMER
111c1b40e44SStuart Menefy	bool
112c1b40e44SStuart Menefy	select CLKSRC_OF if OF
113c1b40e44SStuart Menefy	help
114c1b40e44SStuart Menefy	  This options enables support for the ARM global timer unit
115c1b40e44SStuart Menefy
116c1b40e44SStuart Menefyconfig CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
117c1b40e44SStuart Menefy	bool
118c1b40e44SStuart Menefy	depends on ARM_GLOBAL_TIMER
119c1b40e44SStuart Menefy	default y
120c1b40e44SStuart Menefy	help
121c1b40e44SStuart Menefy	 Use ARM global timer clock source as sched_clock
122c1b40e44SStuart Menefy
123a2c5d4edSJames Hoganconfig CLKSRC_METAG_GENERIC
124a2c5d4edSJames Hogan	def_bool y if METAG
125a2c5d4edSJames Hogan	help
126a2c5d4edSJames Hogan	  This option enables support for the Meta per-thread timers.
1276938d75aSThomas Abraham
1286938d75aSThomas Abrahamconfig CLKSRC_EXYNOS_MCT
1296938d75aSThomas Abraham	def_bool y if ARCH_EXYNOS
1306938d75aSThomas Abraham	help
1316938d75aSThomas Abraham	  Support for Multi Core Timer controller on Exynos SoCs.
132241a9871SArnd Bergmann
133f1189989STomasz Figaconfig CLKSRC_SAMSUNG_PWM
13477d84434STomasz Figa	bool
135f1189989STomasz Figa	help
136f1189989STomasz Figa	  This is a new clocksource driver for the PWM timer found in
137f1189989STomasz Figa	  Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
138f1189989STomasz Figa	  for all devicetree enabled platforms. This driver will be
139f1189989STomasz Figa	  needed only on systems that do not have the Exynos MCT available.
140c1967249SJingchang Lu
1412529c3a3SXiubo Liconfig FSL_FTM_TIMER
1422529c3a3SXiubo Li	bool
1432529c3a3SXiubo Li	help
1442529c3a3SXiubo Li	  Support for Freescale FlexTimer Module (FTM) timer.
1452529c3a3SXiubo Li
146c1967249SJingchang Luconfig VF_PIT_TIMER
147c1967249SJingchang Lu	bool
148c1967249SJingchang Lu	help
149c1967249SJingchang Lu	  Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
150fd3f1270SMagnus Damm
151fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_CMT
152fd3f1270SMagnus Damm        bool
153fd3f1270SMagnus Damm
154ecb3530dSMatthias Bruggerconfig MTK_TIMER
155ecb3530dSMatthias Brugger	select CLKSRC_OF
156ecb3530dSMatthias Brugger	select CLKSRC_MMIO
157ecb3530dSMatthias Brugger	bool
158ecb3530dSMatthias Brugger
159fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_MTU2
160fd3f1270SMagnus Damm        bool
161fd3f1270SMagnus Damm
162fd3f1270SMagnus Dammconfig SYS_SUPPORTS_SH_TMU
163fd3f1270SMagnus Damm        bool
164fd3f1270SMagnus Damm
165fd3f1270SMagnus Dammconfig SYS_SUPPORTS_EM_STI
166fd3f1270SMagnus Damm        bool
167fd3f1270SMagnus Damm
168fd3f1270SMagnus Dammconfig SH_TIMER_CMT
169fd3f1270SMagnus Damm	bool "Renesas CMT timer driver" if COMPILE_TEST
17087291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
171fd3f1270SMagnus Damm	default SYS_SUPPORTS_SH_CMT
172fd3f1270SMagnus Damm	help
173fd3f1270SMagnus Damm	  This enables build of a clocksource and clockevent driver for
174fd3f1270SMagnus Damm	  the Compare Match Timer (CMT) hardware available in 16/32/48-bit
175fd3f1270SMagnus Damm	  variants on a wide range of Mobile and Automotive SoCs from Renesas.
176fd3f1270SMagnus Damm
177fd3f1270SMagnus Dammconfig SH_TIMER_MTU2
178fd3f1270SMagnus Damm	bool "Renesas MTU2 timer driver" if COMPILE_TEST
17987291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
180fd3f1270SMagnus Damm	default SYS_SUPPORTS_SH_MTU2
181fd3f1270SMagnus Damm	help
182fd3f1270SMagnus Damm	  This enables build of a clockevent driver for the Multi-Function
1837e139187SKuninori Morimoto	  Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
184fd3f1270SMagnus Damm	  This hardware comes with 16 bit-timer registers.
185fd3f1270SMagnus Damm
186fd3f1270SMagnus Dammconfig SH_TIMER_TMU
187fd3f1270SMagnus Damm	bool "Renesas TMU timer driver" if COMPILE_TEST
18887291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
189fd3f1270SMagnus Damm	default SYS_SUPPORTS_SH_TMU
190fd3f1270SMagnus Damm	help
191fd3f1270SMagnus Damm	  This enables build of a clocksource and clockevent driver for
192fd3f1270SMagnus Damm	  the 32-bit Timer Unit (TMU) hardware available on a wide range
193fd3f1270SMagnus Damm	  SoCs from Renesas.
194fd3f1270SMagnus Damm
195fd3f1270SMagnus Dammconfig EM_TIMER_STI
196fd3f1270SMagnus Damm	bool "Renesas STI timer driver" if COMPILE_TEST
19787291a92SGeert Uytterhoeven	depends on GENERIC_CLOCKEVENTS
198fd3f1270SMagnus Damm	default SYS_SUPPORTS_EM_STI
199fd3f1270SMagnus Damm	help
200fd3f1270SMagnus Damm	  This enables build of a clocksource and clockevent driver for
201fd3f1270SMagnus Damm	  the 48-bit System Timer (STI) hardware available on a SoCs
202fd3f1270SMagnus Damm	  such as EMEV2 from former NEC Electronics.
203dfc25e45SLinus Torvalds
2043f8e8ceeSKumar Galaconfig CLKSRC_QCOM
2053f8e8ceeSKumar Gala	bool
206220e2a8dSPawel Moll
207220e2a8dSPawel Mollconfig CLKSRC_VERSATILE
208220e2a8dSPawel Moll	bool "ARM Versatile (Express) reference platforms clock source"
209b33cdd28SArnd Bergmann	depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
210220e2a8dSPawel Moll	select CLKSRC_OF
211220e2a8dSPawel Moll	default y if MFD_VEXPRESS_SYSREG
212220e2a8dSPawel Moll	help
213220e2a8dSPawel Moll	  This option enables clock source based on free running
214220e2a8dSPawel Moll	  counter available in the "System Registers" block of
215220e2a8dSPawel Moll	  ARM Versatile, RealView and Versatile Express reference
216220e2a8dSPawel Moll	  platforms.
21758394271SJean Delvare
21858394271SJean Delvareendmenu
219