• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1menu "Clock Source drivers"
2
3config CLKSRC_OF
4	bool
5
6config CLKSRC_I8253
7	bool
8
9config CLKEVT_I8253
10	bool
11
12config I8253_LOCK
13	bool
14
15config CLKBLD_I8253
16	def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
17
18config CLKSRC_MMIO
19	bool
20
21config DW_APB_TIMER
22	bool
23
24config DW_APB_TIMER_OF
25	bool
26	select DW_APB_TIMER
27	select CLKSRC_OF
28
29config ARMADA_370_XP_TIMER
30	bool
31	select CLKSRC_OF
32
33config MESON6_TIMER
34	bool
35
36config ORION_TIMER
37	select CLKSRC_OF
38	select CLKSRC_MMIO
39	bool
40
41config SUN4I_TIMER
42	select CLKSRC_MMIO
43	bool
44
45config SUN5I_HSTIMER
46	select CLKSRC_MMIO
47	bool
48
49config VT8500_TIMER
50	bool
51
52config CADENCE_TTC_TIMER
53	bool
54
55config CLKSRC_NOMADIK_MTU
56	bool
57	depends on (ARCH_NOMADIK || ARCH_U8500)
58	select CLKSRC_MMIO
59	help
60	  Support for Multi Timer Unit. MTU provides access
61	  to multiple interrupt generating programmable
62	  32-bit free running decrementing counters.
63
64config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
65	bool
66	depends on CLKSRC_NOMADIK_MTU
67	help
68	  Use the Multi Timer Unit as the sched_clock.
69
70config CLKSRC_DBX500_PRCMU
71	bool "Clocksource PRCMU Timer"
72	depends on UX500_SOC_DB8500
73	default y
74	help
75	  Use the always on PRCMU Timer as clocksource
76
77config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
78	bool "Clocksource PRCMU Timer sched_clock"
79	depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
80	default y
81	help
82	  Use the always on PRCMU Timer as sched_clock
83
84config CLKSRC_EFM32
85	bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
86	depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
87	select CLKSRC_MMIO
88	default ARCH_EFM32
89	help
90	  Support to use the timers of EFM32 SoCs as clock source and clock
91	  event device.
92
93config ARM_ARCH_TIMER
94	bool
95	select CLKSRC_OF if OF
96
97config ARM_ARCH_TIMER_EVTSTREAM
98	bool "Support for ARM architected timer event stream generation"
99	default y if ARM_ARCH_TIMER
100	depends on ARM_ARCH_TIMER
101	help
102	  This option enables support for event stream generation based on
103	  the ARM architected timer. It is used for waking up CPUs executing
104	  the wfe instruction at a frequency represented as a power-of-2
105	  divisor of the clock rate.
106	  The main use of the event stream is wfe-based timeouts of userspace
107	  locking implementations. It might also be useful for imposing timeout
108	  on wfe to safeguard against any programming errors in case an expected
109	  event is not generated.
110	  This must be disabled for hardware validation purposes to detect any
111	  hardware anomalies of missing events.
112
113config ARM_ARCH_TIMER_VCT_ACCESS
114	bool "Support for ARM architected timer virtual counter access in userspace"
115	default !ARM64
116	depends on ARM_ARCH_TIMER
117	help
118	  This option enables support for reading the ARM architected timer's
119	  virtual counter in userspace.
120
121config ARM_GLOBAL_TIMER
122	bool
123	select CLKSRC_OF if OF
124	help
125	  This options enables support for the ARM global timer unit
126
127config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
128	bool
129	depends on ARM_GLOBAL_TIMER
130	default y
131	help
132	 Use ARM global timer clock source as sched_clock
133
134config ATMEL_PIT
135	select CLKSRC_OF if OF
136	def_bool SOC_AT91SAM9 || SOC_SAMA5
137
138config CLKSRC_METAG_GENERIC
139	def_bool y if METAG
140	help
141	  This option enables support for the Meta per-thread timers.
142
143config CLKSRC_EXYNOS_MCT
144	def_bool y if ARCH_EXYNOS
145	depends on !ARM64
146	help
147	  Support for Multi Core Timer controller on Exynos SoCs.
148
149config CLKSRC_SAMSUNG_PWM
150	bool
151	help
152	  This is a new clocksource driver for the PWM timer found in
153	  Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
154	  for all devicetree enabled platforms. This driver will be
155	  needed only on systems that do not have the Exynos MCT available.
156
157config FSL_FTM_TIMER
158	bool
159	help
160	  Support for Freescale FlexTimer Module (FTM) timer.
161
162config VF_PIT_TIMER
163	bool
164	help
165	  Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
166
167config SYS_SUPPORTS_SH_CMT
168        bool
169
170config MTK_TIMER
171	select CLKSRC_OF
172	select CLKSRC_MMIO
173	bool
174
175config SYS_SUPPORTS_SH_MTU2
176        bool
177
178config SYS_SUPPORTS_SH_TMU
179        bool
180
181config SYS_SUPPORTS_EM_STI
182        bool
183
184config SH_TIMER_CMT
185	bool "Renesas CMT timer driver" if COMPILE_TEST
186	depends on GENERIC_CLOCKEVENTS
187	default SYS_SUPPORTS_SH_CMT
188	help
189	  This enables build of a clocksource and clockevent driver for
190	  the Compare Match Timer (CMT) hardware available in 16/32/48-bit
191	  variants on a wide range of Mobile and Automotive SoCs from Renesas.
192
193config SH_TIMER_MTU2
194	bool "Renesas MTU2 timer driver" if COMPILE_TEST
195	depends on GENERIC_CLOCKEVENTS
196	default SYS_SUPPORTS_SH_MTU2
197	help
198	  This enables build of a clockevent driver for the Multi-Function
199	  Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
200	  This hardware comes with 16 bit-timer registers.
201
202config SH_TIMER_TMU
203	bool "Renesas TMU timer driver" if COMPILE_TEST
204	depends on GENERIC_CLOCKEVENTS
205	default SYS_SUPPORTS_SH_TMU
206	help
207	  This enables build of a clocksource and clockevent driver for
208	  the 32-bit Timer Unit (TMU) hardware available on a wide range
209	  SoCs from Renesas.
210
211config EM_TIMER_STI
212	bool "Renesas STI timer driver" if COMPILE_TEST
213	depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
214	default SYS_SUPPORTS_EM_STI
215	help
216	  This enables build of a clocksource and clockevent driver for
217	  the 48-bit System Timer (STI) hardware available on a SoCs
218	  such as EMEV2 from former NEC Electronics.
219
220config CLKSRC_QCOM
221	bool
222
223config CLKSRC_VERSATILE
224	bool "ARM Versatile (Express) reference platforms clock source"
225	depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
226	select CLKSRC_OF
227	default y if MFD_VEXPRESS_SYSREG
228	help
229	  This option enables clock source based on free running
230	  counter available in the "System Registers" block of
231	  ARM Versatile, RealView and Versatile Express reference
232	  platforms.
233
234endmenu
235