clocksource: Add support for the Mediatek SoCs
[firefly-linux-kernel-4.4.55.git] / drivers / clocksource / Kconfig
1 menu "Clock Source drivers"
2
3 config CLKSRC_OF
4         bool
5
6 config CLKSRC_I8253
7         bool
8
9 config CLKEVT_I8253
10         bool
11
12 config I8253_LOCK
13         bool
14
15 config CLKBLD_I8253
16         def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
17
18 config CLKSRC_MMIO
19         bool
20
21 config DW_APB_TIMER
22         bool
23
24 config DW_APB_TIMER_OF
25         bool
26         select DW_APB_TIMER
27         select CLKSRC_OF
28
29 config ARMADA_370_XP_TIMER
30         bool
31         select CLKSRC_OF
32
33 config ORION_TIMER
34         select CLKSRC_OF
35         select CLKSRC_MMIO
36         bool
37
38 config SUN4I_TIMER
39         select CLKSRC_MMIO
40         bool
41
42 config SUN5I_HSTIMER
43         select CLKSRC_MMIO
44         bool
45
46 config VT8500_TIMER
47         bool
48
49 config CADENCE_TTC_TIMER
50         bool
51
52 config 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
61 config 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
67 config CLKSRC_DBX500_PRCMU
68         bool "Clocksource PRCMU Timer"
69         depends on UX500_SOC_DB8500
70         default y
71         help
72           Use the always on PRCMU Timer as clocksource
73
74 config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
75         bool "Clocksource PRCMU Timer sched_clock"
76         depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
77         default y
78         help
79           Use the always on PRCMU Timer as sched_clock
80
81 config CLKSRC_EFM32
82         bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
83         depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
84         select CLKSRC_MMIO
85         default ARCH_EFM32
86         help
87           Support to use the timers of EFM32 SoCs as clock source and clock
88           event device.
89
90 config ARM_ARCH_TIMER
91         bool
92         select CLKSRC_OF if OF
93
94 config ARM_ARCH_TIMER_EVTSTREAM
95         bool "Support for ARM architected timer event stream generation"
96         default y if ARM_ARCH_TIMER
97         depends on ARM_ARCH_TIMER
98         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
110 config 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
116 config 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
123 config CLKSRC_METAG_GENERIC
124         def_bool y if METAG
125         help
126           This option enables support for the Meta per-thread timers.
127
128 config CLKSRC_EXYNOS_MCT
129         def_bool y if ARCH_EXYNOS
130         help
131           Support for Multi Core Timer controller on Exynos SoCs.
132
133 config CLKSRC_SAMSUNG_PWM
134         bool
135         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.
140
141 config FSL_FTM_TIMER
142         bool
143         help
144           Support for Freescale FlexTimer Module (FTM) timer.
145
146 config VF_PIT_TIMER
147         bool
148         help
149           Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
150
151 config SYS_SUPPORTS_SH_CMT
152         bool
153
154 config MTK_TIMER
155         select CLKSRC_OF
156         select CLKSRC_MMIO
157         bool
158
159 config SYS_SUPPORTS_SH_MTU2
160         bool
161
162 config SYS_SUPPORTS_SH_TMU
163         bool
164
165 config SYS_SUPPORTS_EM_STI
166         bool
167
168 config SH_TIMER_CMT
169         bool "Renesas CMT timer driver" if COMPILE_TEST
170         depends on GENERIC_CLOCKEVENTS
171         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
177 config SH_TIMER_MTU2
178         bool "Renesas MTU2 timer driver" if COMPILE_TEST
179         depends on GENERIC_CLOCKEVENTS
180         default SYS_SUPPORTS_SH_MTU2
181         help
182           This enables build of a clockevent driver for the Multi-Function
183           Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
184           This hardware comes with 16 bit-timer registers.
185
186 config SH_TIMER_TMU
187         bool "Renesas TMU timer driver" if COMPILE_TEST
188         depends on GENERIC_CLOCKEVENTS
189         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
195 config EM_TIMER_STI
196         bool "Renesas STI timer driver" if COMPILE_TEST
197         depends on GENERIC_CLOCKEVENTS
198         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.
203
204 config CLKSRC_QCOM
205         bool
206
207 config CLKSRC_VERSATILE
208         bool "ARM Versatile (Express) reference platforms clock source"
209         depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
210         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.
217
218 endmenu