blob: 3a1efa3fd88d2d4a0809b9560fb8330953f1e345 [file] [log] [blame]
Jean Delvare58394272014-06-16 11:48:45 +02001menu "Clock Source drivers"
2
Stephen Warrenae278a92012-11-19 16:41:20 -07003config CLKSRC_OF
4 bool
5
Russell King89c0b8e2011-05-08 18:47:58 +01006config CLKSRC_I8253
7 bool
Russell King442c8172011-05-08 14:06:52 +01008
Thomas Gleixnere6220bd2011-06-09 13:08:25 +00009config CLKEVT_I8253
10 bool
11
Ralf Baechle15f304b2011-06-01 19:04:59 +010012config I8253_LOCK
13 bool
14
15config CLKBLD_I8253
Thomas Gleixnere6220bd2011-06-09 13:08:25 +000016 def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
Ralf Baechle15f304b2011-06-01 19:04:59 +010017
Russell King442c8172011-05-08 14:06:52 +010018config CLKSRC_MMIO
19 bool
Jamie Iles06c3df42011-06-06 12:43:07 +010020
Baruch Siach9b8bb772015-01-26 20:35:18 +020021config DIGICOLOR_TIMER
22 bool
23
Jamie Iles06c3df42011-06-06 12:43:07 +010024config DW_APB_TIMER
25 bool
Mattias Wallin489bcce2011-05-27 10:30:12 +020026
Dinh Nguyencfda5902012-07-11 15:13:16 -050027config DW_APB_TIMER_OF
28 bool
Heiko Stuebner1b4eca02013-06-04 11:38:11 +020029 select DW_APB_TIMER
Heiko Stuebner10021482013-06-04 11:38:42 +020030 select CLKSRC_OF
Dinh Nguyencfda5902012-07-11 15:13:16 -050031
Daniel Lezcano468b8c42015-01-25 22:06:02 +010032config ROCKCHIP_TIMER
33 bool
34 select CLKSRC_OF
35
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020036config ARMADA_370_XP_TIMER
37 bool
Jean Pihet7b0dd722013-09-18 20:55:09 +020038 select CLKSRC_OF
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020039
Carlo Caionee4a6b372014-09-29 01:50:05 +020040config MESON6_TIMER
41 bool
Beniamino Galvani7b6b0a42014-11-18 16:41:20 +010042 select CLKSRC_MMIO
Carlo Caionee4a6b372014-09-29 01:50:05 +020043
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +020044config ORION_TIMER
45 select CLKSRC_OF
46 select CLKSRC_MMIO
47 bool
48
Maxime Ripard119fd632013-03-24 11:49:25 +010049config SUN4I_TIMER
Maxime Ripard71c568c2013-10-14 21:07:46 +020050 select CLKSRC_MMIO
Maxime Ripardb2ac5d72012-11-12 15:07:50 +010051 bool
52
Maxime Ripard67905542013-11-07 12:01:48 +010053config SUN5I_HSTIMER
54 select CLKSRC_MMIO
55 bool
56
Thierry Reding910978e72014-07-07 15:26:30 +020057config TEGRA_TIMER
58 bool
59
Tony Priskff7ec342013-01-14 17:58:21 +130060config VT8500_TIMER
61 bool
62
Michal Simek4f0f2342013-03-20 10:46:01 +010063config CADENCE_TTC_TIMER
64 bool
65
Daniel Lezcanoa8b1b9f2015-02-23 19:54:16 +010066config ASM9260_TIMER
67 bool
68 select CLKSRC_MMIO
69 select CLKSRC_OF
70
Linus Walleij694e33a2012-10-18 14:01:25 +020071config CLKSRC_NOMADIK_MTU
72 bool
73 depends on (ARCH_NOMADIK || ARCH_U8500)
74 select CLKSRC_MMIO
75 help
76 Support for Multi Timer Unit. MTU provides access
77 to multiple interrupt generating programmable
78 32-bit free running decrementing counters.
79
80config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
81 bool
82 depends on CLKSRC_NOMADIK_MTU
83 help
84 Use the Multi Timer Unit as the sched_clock.
85
Mattias Wallin489bcce2011-05-27 10:30:12 +020086config CLKSRC_DBX500_PRCMU
87 bool "Clocksource PRCMU Timer"
Linus Walleij29746f42012-04-13 13:16:31 +020088 depends on UX500_SOC_DB8500
Mattias Wallin489bcce2011-05-27 10:30:12 +020089 default y
90 help
91 Use the always on PRCMU Timer as clocksource
92
93config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
94 bool "Clocksource PRCMU Timer sched_clock"
Linus Walleij694e33a2012-10-18 14:01:25 +020095 depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
Mattias Wallin489bcce2011-05-27 10:30:12 +020096 default y
97 help
98 Use the always on PRCMU Timer as sched_clock
Marc Zyngier985c0672012-03-05 11:49:30 +000099
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +0200100config CLKSRC_EFM32
101 bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
102 depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
Axel Lin09ca2752013-11-20 10:15:11 +0800103 select CLKSRC_MMIO
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +0200104 default ARCH_EFM32
105 help
106 Support to use the timers of EFM32 SoCs as clock source and clock
107 event device.
108
Joachim Eastwood050dd322015-05-12 00:00:48 +0200109config CLKSRC_LPC32XX
110 bool
111 select CLKSRC_MMIO
112 select CLKSRC_OF
113
Ezequiel Garcia84583982015-08-07 16:39:31 +0100114config CLKSRC_PISTACHIO
115 bool
116 select CLKSRC_OF
117
Felipe Balbife851f52015-09-29 13:55:33 -0500118config CLKSRC_TI_32K
119 bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
Felipe Balbidfedaf12015-10-16 16:10:05 -0500120 depends on GENERIC_SCHED_CLOCK
Felipe Balbife851f52015-09-29 13:55:33 -0500121 select CLKSRC_OF if OF
122 help
123 This option enables support for Texas Instruments 32.768 Hz clocksource
124 available on many OMAP-like platforms.
125
Maxime Coqueline37e4592015-05-22 23:03:33 +0200126config CLKSRC_STM32
Paul Gortmaker1cb6c212015-06-20 19:02:32 -0400127 bool "Clocksource for STM32 SoCs" if !ARCH_STM32
128 depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
Maxime Coqueline37e4592015-05-22 23:03:33 +0200129 select CLKSRC_MMIO
130
Mark Rutland8a4da6e2012-11-12 14:33:44 +0000131config ARM_ARCH_TIMER
132 bool
Rob Herring0583fe42013-04-10 18:27:51 -0500133 select CLKSRC_OF if OF
James Hogana2c5d4e2012-10-09 10:54:39 +0100134
Will Deacon037f6372013-08-23 15:32:29 +0100135config ARM_ARCH_TIMER_EVTSTREAM
136 bool "Support for ARM architected timer event stream generation"
137 default y if ARM_ARCH_TIMER
Stephen Boyd77f7ce92013-11-20 12:02:03 -0800138 depends on ARM_ARCH_TIMER
Will Deacon037f6372013-08-23 15:32:29 +0100139 help
140 This option enables support for event stream generation based on
141 the ARM architected timer. It is used for waking up CPUs executing
142 the wfe instruction at a frequency represented as a power-of-2
143 divisor of the clock rate.
144 The main use of the event stream is wfe-based timeouts of userspace
145 locking implementations. It might also be useful for imposing timeout
146 on wfe to safeguard against any programming errors in case an expected
147 event is not generated.
148 This must be disabled for hardware validation purposes to detect any
149 hardware anomalies of missing events.
150
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100151config ARM_GLOBAL_TIMER
152 bool
153 select CLKSRC_OF if OF
154 help
155 This options enables support for the ARM global timer unit
156
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100157config ARM_TIMER_SP804
158 bool "Support for Dual Timer SP804 module"
Guenter Roeck002af192015-06-23 20:49:05 -0700159 depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
Sudeep Holla0b7402d2015-05-18 16:29:40 +0100160 select CLKSRC_MMIO
161 select CLKSRC_OF if OF
162
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100163config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
164 bool
165 depends on ARM_GLOBAL_TIMER
166 default y
167 help
168 Use ARM global timer clock source as sched_clock
169
Maxime Coquelin4958ebb2015-05-09 09:53:46 +0200170config ARMV7M_SYSTICK
171 bool
172 select CLKSRC_OF if OF
173 select CLKSRC_MMIO
174 help
175 This options enables support for the ARMv7M system timer unit
176
Maxime Ripardb052ff32014-09-02 18:12:35 +0200177config ATMEL_PIT
178 select CLKSRC_OF if OF
179 def_bool SOC_AT91SAM9 || SOC_SAMA5
180
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100181config ATMEL_ST
182 bool
183 select CLKSRC_OF
Alexandre Belloni7ab7ef72015-03-19 14:17:48 +0100184 select MFD_SYSCON
Alexandre Bellonib53cdd02015-03-12 13:07:31 +0100185
James Hogana2c5d4e2012-10-09 10:54:39 +0100186config CLKSRC_METAG_GENERIC
187 def_bool y if METAG
188 help
189 This option enables support for the Meta per-thread timers.
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900190
191config CLKSRC_EXYNOS_MCT
192 def_bool y if ARCH_EXYNOS
Doug Anderson3252a642014-07-05 06:43:26 +0900193 depends on !ARM64
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900194 help
195 Support for Multi Core Timer controller on Exynos SoCs.
Arnd Bergmann241a9872013-05-06 23:49:09 +0200196
Tomasz Figaf1189982013-04-20 23:22:13 +0200197config CLKSRC_SAMSUNG_PWM
Tomasz Figa77d84432013-04-23 17:46:23 +0200198 bool
Tomasz Figaf1189982013-04-20 23:22:13 +0200199 help
200 This is a new clocksource driver for the PWM timer found in
201 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
202 for all devicetree enabled platforms. This driver will be
203 needed only on systems that do not have the Exynos MCT available.
Jingchang Luc1967242013-05-29 10:12:17 +0200204
Xiubo Li2529c3a2014-05-23 10:12:04 +0200205config FSL_FTM_TIMER
206 bool
207 help
208 Support for Freescale FlexTimer Module (FTM) timer.
209
Jingchang Luc1967242013-05-29 10:12:17 +0200210config VF_PIT_TIMER
211 bool
212 help
213 Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100214
215config SYS_SUPPORTS_SH_CMT
216 bool
217
Matthias Bruggerecb35302014-07-18 11:36:43 +0200218config MTK_TIMER
219 select CLKSRC_OF
220 select CLKSRC_MMIO
221 bool
222
Magnus Dammfd3f1272014-02-20 12:54:45 +0100223config SYS_SUPPORTS_SH_MTU2
224 bool
225
226config SYS_SUPPORTS_SH_TMU
227 bool
228
229config SYS_SUPPORTS_EM_STI
230 bool
231
232config SH_TIMER_CMT
233 bool "Renesas CMT timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100234 depends on GENERIC_CLOCKEVENTS
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100235 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100236 default SYS_SUPPORTS_SH_CMT
237 help
238 This enables build of a clocksource and clockevent driver for
239 the Compare Match Timer (CMT) hardware available in 16/32/48-bit
240 variants on a wide range of Mobile and Automotive SoCs from Renesas.
241
242config SH_TIMER_MTU2
243 bool "Renesas MTU2 timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100244 depends on GENERIC_CLOCKEVENTS
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100245 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100246 default SYS_SUPPORTS_SH_MTU2
247 help
248 This enables build of a clockevent driver for the Multi-Function
Kuninori Morimoto7e139182014-07-18 11:36:36 +0200249 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100250 This hardware comes with 16 bit-timer registers.
251
252config SH_TIMER_TMU
253 bool "Renesas TMU timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100254 depends on GENERIC_CLOCKEVENTS
Richard Weinberger11bc26f2015-03-26 10:27:06 +0100255 depends on HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100256 default SYS_SUPPORTS_SH_TMU
257 help
258 This enables build of a clocksource and clockevent driver for
259 the 32-bit Timer Unit (TMU) hardware available on a wide range
260 SoCs from Renesas.
261
262config EM_TIMER_STI
263 bool "Renesas STI timer driver" if COMPILE_TEST
Chen Gang40c96312014-07-08 20:39:40 +0800264 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100265 default SYS_SUPPORTS_EM_STI
266 help
267 This enables build of a clocksource and clockevent driver for
268 the 48-bit System Timer (STI) hardware available on a SoCs
269 such as EMEV2 from former NEC Electronics.
Linus Torvaldsdfc25e42014-04-05 13:51:19 -0700270
Kumar Gala3f8e8ce2014-01-29 16:17:30 -0600271config CLKSRC_QCOM
272 bool
Pawel Moll220e2a82014-04-16 18:22:59 +0100273
274config CLKSRC_VERSATILE
275 bool "ARM Versatile (Express) reference platforms clock source"
Deng-Cheng Zhuff37015b2015-03-07 10:30:22 -0800276 depends on PLAT_VERSATILE && GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
Pawel Moll220e2a82014-04-16 18:22:59 +0100277 select CLKSRC_OF
278 default y if MFD_VEXPRESS_SYSREG
279 help
280 This option enables clock source based on free running
281 counter available in the "System Registers" block of
282 ARM Versatile, RealView and Versatile Express reference
283 platforms.
Jean Delvare58394272014-06-16 11:48:45 +0200284
Andrew Brestickerfa5635a2014-10-20 12:03:58 -0700285config CLKSRC_MIPS_GIC
286 bool
287 depends on MIPS_GIC
Andrew Brestickere12aa8282014-11-12 11:43:39 -0800288 select CLKSRC_OF
Andrew Brestickerfa5635a2014-10-20 12:03:58 -0700289
Dmitry Eremin-Solenikove074ff82014-12-21 16:07:09 +0100290config CLKSRC_PXA
291 def_bool y if ARCH_PXA || ARCH_SA1100
Antonio Borneo02760b12015-06-17 19:42:30 +0800292 select CLKSRC_OF if OF
Dmitry Eremin-Solenikove074ff82014-12-21 16:07:09 +0100293 help
294 This enables OST0 support available on PXA and SA-11x0
295 platforms.
Yoshinori Sato618b9022015-01-28 02:52:42 +0900296
297config H8300_TMR16
298 bool
299
300config H8300_TPU
301 bool
302
Shawn Guobea5af42015-05-15 15:41:00 +0800303config CLKSRC_IMX_GPT
304 bool "Clocksource using i.MX GPT" if COMPILE_TEST
305 depends on ARM && CLKDEV_LOOKUP
306 select CLKSRC_MMIO
307
Lee Jones70bef012015-05-26 13:39:43 +0100308config CLKSRC_ST_LPC
309 bool
310 depends on ARCH_STI
311 select CLKSRC_OF if OF
312 help
313 Enable this option to use the Low Power controller timer
314 as clocksource.
315
Jean Delvare58394272014-06-16 11:48:45 +0200316endmenu