blob: 7ea7d7c48d7298bfe054020295bd7a8a6e786b69 [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
21config DW_APB_TIMER
22 bool
Mattias Wallin489bcce2011-05-27 10:30:12 +020023
Dinh Nguyencfda5902012-07-11 15:13:16 -050024config DW_APB_TIMER_OF
25 bool
Heiko Stuebner1b4eca02013-06-04 11:38:11 +020026 select DW_APB_TIMER
Heiko Stuebner10021482013-06-04 11:38:42 +020027 select CLKSRC_OF
Dinh Nguyencfda5902012-07-11 15:13:16 -050028
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020029config ARMADA_370_XP_TIMER
30 bool
Jean Pihet7b0dd722013-09-18 20:55:09 +020031 select CLKSRC_OF
Gregory CLEMENT6fe9cbd2012-06-13 18:58:09 +020032
Sebastian Hesselbarth0c1dcfd2013-06-11 08:38:50 +020033config ORION_TIMER
34 select CLKSRC_OF
35 select CLKSRC_MMIO
36 bool
37
Maxime Ripard119fd632013-03-24 11:49:25 +010038config SUN4I_TIMER
Maxime Ripard71c568c2013-10-14 21:07:46 +020039 select CLKSRC_MMIO
Maxime Ripardb2ac5d72012-11-12 15:07:50 +010040 bool
41
Maxime Ripard67905542013-11-07 12:01:48 +010042config SUN5I_HSTIMER
43 select CLKSRC_MMIO
44 bool
45
Tony Priskff7ec342013-01-14 17:58:21 +130046config VT8500_TIMER
47 bool
48
Michal Simek4f0f2342013-03-20 10:46:01 +010049config CADENCE_TTC_TIMER
50 bool
51
Linus Walleij694e33a2012-10-18 14:01:25 +020052config CLKSRC_NOMADIK_MTU
53 bool
54 depends on (ARCH_NOMADIK || ARCH_U8500)
55 select CLKSRC_MMIO
56 help
57 Support for Multi Timer Unit. MTU provides access
58 to multiple interrupt generating programmable
59 32-bit free running decrementing counters.
60
61config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
62 bool
63 depends on CLKSRC_NOMADIK_MTU
64 help
65 Use the Multi Timer Unit as the sched_clock.
66
Mattias Wallin489bcce2011-05-27 10:30:12 +020067config CLKSRC_DBX500_PRCMU
68 bool "Clocksource PRCMU Timer"
Linus Walleij29746f42012-04-13 13:16:31 +020069 depends on UX500_SOC_DB8500
Mattias Wallin489bcce2011-05-27 10:30:12 +020070 default y
71 help
72 Use the always on PRCMU Timer as clocksource
73
74config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
75 bool "Clocksource PRCMU Timer sched_clock"
Linus Walleij694e33a2012-10-18 14:01:25 +020076 depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
Mattias Wallin489bcce2011-05-27 10:30:12 +020077 default y
78 help
79 Use the always on PRCMU Timer as sched_clock
Marc Zyngier985c0672012-03-05 11:49:30 +000080
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +020081config CLKSRC_EFM32
82 bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
83 depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
Axel Lin09ca2752013-11-20 10:15:11 +080084 select CLKSRC_MMIO
Uwe Kleine-König9c9b7812013-10-03 21:56:29 +020085 default ARCH_EFM32
86 help
87 Support to use the timers of EFM32 SoCs as clock source and clock
88 event device.
89
Mark Rutland8a4da6e2012-11-12 14:33:44 +000090config ARM_ARCH_TIMER
91 bool
Rob Herring0583fe42013-04-10 18:27:51 -050092 select CLKSRC_OF if OF
James Hogana2c5d4e2012-10-09 10:54:39 +010093
Will Deacon037f6372013-08-23 15:32:29 +010094config ARM_ARCH_TIMER_EVTSTREAM
95 bool "Support for ARM architected timer event stream generation"
96 default y if ARM_ARCH_TIMER
Stephen Boyd77f7ce92013-11-20 12:02:03 -080097 depends on ARM_ARCH_TIMER
Will Deacon037f6372013-08-23 15:32:29 +010098 help
99 This option enables support for event stream generation based on
100 the ARM architected timer. It is used for waking up CPUs executing
101 the wfe instruction at a frequency represented as a power-of-2
102 divisor of the clock rate.
103 The main use of the event stream is wfe-based timeouts of userspace
104 locking implementations. It might also be useful for imposing timeout
105 on wfe to safeguard against any programming errors in case an expected
106 event is not generated.
107 This must be disabled for hardware validation purposes to detect any
108 hardware anomalies of missing events.
109
Stuart Menefyc1b40e42013-06-26 12:48:38 +0100110config ARM_GLOBAL_TIMER
111 bool
112 select CLKSRC_OF if OF
113 help
114 This options enables support for the ARM global timer unit
115
116config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
117 bool
118 depends on ARM_GLOBAL_TIMER
119 default y
120 help
121 Use ARM global timer clock source as sched_clock
122
James Hogana2c5d4e2012-10-09 10:54:39 +0100123config CLKSRC_METAG_GENERIC
124 def_bool y if METAG
125 help
126 This option enables support for the Meta per-thread timers.
Thomas Abraham6938d75a2013-03-09 16:16:13 +0900127
128config CLKSRC_EXYNOS_MCT
129 def_bool y if ARCH_EXYNOS
130 help
131 Support for Multi Core Timer controller on Exynos SoCs.
Arnd Bergmann241a9872013-05-06 23:49:09 +0200132
Tomasz Figaf1189982013-04-20 23:22:13 +0200133config CLKSRC_SAMSUNG_PWM
Tomasz Figa77d84432013-04-23 17:46:23 +0200134 bool
Tomasz Figaf1189982013-04-20 23:22:13 +0200135 help
136 This is a new clocksource driver for the PWM timer found in
137 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
138 for all devicetree enabled platforms. This driver will be
139 needed only on systems that do not have the Exynos MCT available.
Jingchang Luc1967242013-05-29 10:12:17 +0200140
Xiubo Li2529c3a2014-05-23 10:12:04 +0200141config FSL_FTM_TIMER
142 bool
143 help
144 Support for Freescale FlexTimer Module (FTM) timer.
145
Jingchang Luc1967242013-05-29 10:12:17 +0200146config VF_PIT_TIMER
147 bool
148 help
149 Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100150
151config SYS_SUPPORTS_SH_CMT
152 bool
153
Matthias Bruggerecb35302014-07-18 11:36:43 +0200154config MTK_TIMER
155 select CLKSRC_OF
156 select CLKSRC_MMIO
157 bool
158
Magnus Dammfd3f1272014-02-20 12:54:45 +0100159config SYS_SUPPORTS_SH_MTU2
160 bool
161
162config SYS_SUPPORTS_SH_TMU
163 bool
164
165config SYS_SUPPORTS_EM_STI
166 bool
167
168config SH_TIMER_CMT
169 bool "Renesas CMT timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100170 depends on GENERIC_CLOCKEVENTS
Magnus Dammfd3f1272014-02-20 12:54:45 +0100171 default SYS_SUPPORTS_SH_CMT
172 help
173 This enables build of a clocksource and clockevent driver for
174 the Compare Match Timer (CMT) hardware available in 16/32/48-bit
175 variants on a wide range of Mobile and Automotive SoCs from Renesas.
176
177config SH_TIMER_MTU2
178 bool "Renesas MTU2 timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100179 depends on GENERIC_CLOCKEVENTS
Magnus Dammfd3f1272014-02-20 12:54:45 +0100180 default SYS_SUPPORTS_SH_MTU2
181 help
182 This enables build of a clockevent driver for the Multi-Function
Kuninori Morimoto7e139182014-07-18 11:36:36 +0200183 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
Magnus Dammfd3f1272014-02-20 12:54:45 +0100184 This hardware comes with 16 bit-timer registers.
185
186config SH_TIMER_TMU
187 bool "Renesas TMU timer driver" if COMPILE_TEST
Geert Uytterhoeven87291a92014-03-20 15:05:50 +0100188 depends on GENERIC_CLOCKEVENTS
Magnus Dammfd3f1272014-02-20 12:54:45 +0100189 default SYS_SUPPORTS_SH_TMU
190 help
191 This enables build of a clocksource and clockevent driver for
192 the 32-bit Timer Unit (TMU) hardware available on a wide range
193 SoCs from Renesas.
194
195config EM_TIMER_STI
196 bool "Renesas STI timer driver" if COMPILE_TEST
Chen Gang40c96312014-07-08 20:39:40 +0800197 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
Magnus Dammfd3f1272014-02-20 12:54:45 +0100198 default SYS_SUPPORTS_EM_STI
199 help
200 This enables build of a clocksource and clockevent driver for
201 the 48-bit System Timer (STI) hardware available on a SoCs
202 such as EMEV2 from former NEC Electronics.
Linus Torvaldsdfc25e42014-04-05 13:51:19 -0700203
Kumar Gala3f8e8ce2014-01-29 16:17:30 -0600204config CLKSRC_QCOM
205 bool
Pawel Moll220e2a82014-04-16 18:22:59 +0100206
207config CLKSRC_VERSATILE
208 bool "ARM Versatile (Express) reference platforms clock source"
Arnd Bergmannb33cdd22014-05-26 17:25:22 +0200209 depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
Pawel Moll220e2a82014-04-16 18:22:59 +0100210 select CLKSRC_OF
211 default y if MFD_VEXPRESS_SYSREG
212 help
213 This option enables clock source based on free running
214 counter available in the "System Registers" block of
215 ARM Versatile, RealView and Versatile Express reference
216 platforms.
Jean Delvare58394272014-06-16 11:48:45 +0200217
218endmenu