mm/hmm.c: remove superfluous RCU protection around radix tree lookup
[linux/fpc-iii.git] / drivers / clocksource / Kconfig
blob9ee2888275c1954d433a08636d27bb25d83c1eb1
1 menu "Clock Source drivers"
2         depends on GENERIC_CLOCKEVENTS
4 config TIMER_OF
5         bool
6         select TIMER_PROBE
8 config TIMER_ACPI
9         bool
10         select TIMER_PROBE
12 config TIMER_PROBE
13         bool
15 config CLKSRC_I8253
16         bool
18 config CLKEVT_I8253
19         bool
21 config I8253_LOCK
22         bool
24 config OMAP_DM_TIMER
25         bool
27 config CLKBLD_I8253
28         def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
30 config CLKSRC_MMIO
31         bool
33 config BCM2835_TIMER
34         bool "BCM2835 timer driver" if COMPILE_TEST
35         select CLKSRC_MMIO
36         help
37           Enables the support for the BCM2835 timer driver.
39 config BCM_KONA_TIMER
40         bool "BCM mobile timer driver" if COMPILE_TEST
41         select CLKSRC_MMIO
42         help
43           Enables the support for the BCM Kona mobile timer driver.
45 config DIGICOLOR_TIMER
46         bool "Digicolor timer driver" if COMPILE_TEST
47         select CLKSRC_MMIO
48         depends on HAS_IOMEM
49         help
50           Enables the support for the digicolor timer driver.
52 config DW_APB_TIMER
53         bool "DW APB timer driver" if COMPILE_TEST
54         help
55           Enables the support for the dw_apb timer.
57 config DW_APB_TIMER_OF
58         bool
59         select DW_APB_TIMER
60         select TIMER_OF
62 config FTTMR010_TIMER
63         bool "Faraday Technology timer driver" if COMPILE_TEST
64         depends on HAS_IOMEM
65         select CLKSRC_MMIO
66         select TIMER_OF
67         select MFD_SYSCON
68         help
69           Enables support for the Faraday Technology timer block
70           FTTMR010.
72 config ROCKCHIP_TIMER
73         bool "Rockchip timer driver" if COMPILE_TEST
74         depends on ARM || ARM64
75         select TIMER_OF
76         select CLKSRC_MMIO
77         help
78           Enables the support for the rockchip timer driver.
80 config ARMADA_370_XP_TIMER
81         bool "Armada 370 and XP timer driver" if COMPILE_TEST
82         depends on ARM
83         select TIMER_OF
84         select CLKSRC_MMIO
85         help
86           Enables the support for the Armada 370 and XP timer driver.
88 config MESON6_TIMER
89         bool "Meson6 timer driver" if COMPILE_TEST
90         select CLKSRC_MMIO
91         help
92           Enables the support for the Meson6 timer driver.
94 config ORION_TIMER
95         bool "Orion timer driver" if COMPILE_TEST
96         depends on ARM
97         select TIMER_OF
98         select CLKSRC_MMIO
99         help
100           Enables the support for the Orion timer driver
102 config OWL_TIMER
103         bool "Owl timer driver" if COMPILE_TEST
104         select CLKSRC_MMIO
105         help
106           Enables the support for the Actions Semi Owl timer driver.
108 config SUN4I_TIMER
109         bool "Sun4i timer driver" if COMPILE_TEST
110         depends on HAS_IOMEM
111         select CLKSRC_MMIO
112         select TIMER_OF
113         help
114           Enables support for the Sun4i timer.
116 config SUN5I_HSTIMER
117         bool "Sun5i timer driver" if COMPILE_TEST
118         select CLKSRC_MMIO
119         depends on COMMON_CLK
120         help
121           Enables support the Sun5i timer.
123 config TEGRA_TIMER
124         bool "Tegra timer driver" if COMPILE_TEST
125         select CLKSRC_MMIO
126         depends on ARM
127         help
128           Enables support for the Tegra driver.
130 config VT8500_TIMER
131         bool "VT8500 timer driver" if COMPILE_TEST
132         depends on HAS_IOMEM
133         help
134           Enables support for the VT8500 driver.
136 config CADENCE_TTC_TIMER
137         bool "Cadence TTC timer driver" if COMPILE_TEST
138         depends on COMMON_CLK
139         help
140           Enables support for the cadence ttc driver.
142 config ASM9260_TIMER
143         bool "ASM9260 timer driver" if COMPILE_TEST
144         select CLKSRC_MMIO
145         select TIMER_OF
146         help
147           Enables support for the ASM9260 timer.
149 config CLKSRC_NOMADIK_MTU
150         bool "Nomakdik clocksource driver" if COMPILE_TEST
151         depends on ARM
152         select CLKSRC_MMIO
153         help
154           Support for Multi Timer Unit. MTU provides access
155           to multiple interrupt generating programmable
156           32-bit free running decrementing counters.
158 config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
159         bool
160         depends on CLKSRC_NOMADIK_MTU
161         help
162           Use the Multi Timer Unit as the sched_clock.
164 config CLKSRC_DBX500_PRCMU
165         bool "Clocksource PRCMU Timer" if COMPILE_TEST
166         depends on HAS_IOMEM
167         help
168           Use the always on PRCMU Timer as clocksource
170 config CLPS711X_TIMER
171         bool "Cirrus logic timer driver" if COMPILE_TEST
172         select CLKSRC_MMIO
173         help
174           Enables support for the Cirrus Logic PS711 timer.
176 config ATLAS7_TIMER
177         bool "Atlas7 timer driver" if COMPILE_TEST
178         select CLKSRC_MMIO
179         help
180           Enables support for the Atlas7 timer.
182 config MXS_TIMER
183         bool "Mxs timer driver" if COMPILE_TEST
184         select CLKSRC_MMIO
185         select STMP_DEVICE
186         help
187           Enables support for the Mxs timer.
189 config PRIMA2_TIMER
190         bool "Prima2 timer driver" if COMPILE_TEST
191         select CLKSRC_MMIO
192         help
193           Enables support for the Prima2 timer.
195 config U300_TIMER
196         bool "U300 timer driver" if COMPILE_TEST
197         depends on ARM
198         select CLKSRC_MMIO
199         help
200           Enables support for the U300 timer.
202 config NSPIRE_TIMER
203         bool "NSpire timer driver" if COMPILE_TEST
204         select CLKSRC_MMIO
205         help
206           Enables support for the Nspire timer.
208 config KEYSTONE_TIMER
209         bool "Keystone timer driver" if COMPILE_TEST
210         depends on ARM || ARM64
211         select CLKSRC_MMIO
212         help
213           Enables support for the Keystone timer.
215 config INTEGRATOR_AP_TIMER
216         bool "Integrator-ap timer driver" if COMPILE_TEST
217         select CLKSRC_MMIO
218         help
219           Enables support for the Integrator-ap timer.
221 config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
222         bool "Clocksource PRCMU Timer sched_clock"
223         depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
224         default y
225         help
226           Use the always on PRCMU Timer as sched_clock
228 config CLKSRC_EFM32
229         bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32
230         depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
231         select CLKSRC_MMIO
232         default ARCH_EFM32
233         help
234           Support to use the timers of EFM32 SoCs as clock source and clock
235           event device.
237 config CLKSRC_LPC32XX
238         bool "Clocksource for LPC32XX" if COMPILE_TEST
239         depends on HAS_IOMEM
240         depends on ARM
241         select CLKSRC_MMIO
242         select TIMER_OF
243         help
244           Support for the LPC32XX clocksource.
246 config CLKSRC_PISTACHIO
247         bool "Clocksource for Pistachio SoC" if COMPILE_TEST
248         depends on HAS_IOMEM
249         select TIMER_OF
250         help
251           Enables the clocksource for the Pistachio SoC.
253 config CLKSRC_TI_32K
254         bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
255         depends on GENERIC_SCHED_CLOCK
256         select TIMER_OF if OF
257         help
258           This option enables support for Texas Instruments 32.768 Hz clocksource
259           available on many OMAP-like platforms.
261 config CLKSRC_NPS
262         bool "NPS400 clocksource driver" if COMPILE_TEST
263         depends on !PHYS_ADDR_T_64BIT
264         select CLKSRC_MMIO
265         select TIMER_OF if OF
266         help
267           NPS400 clocksource support.
268           Got 64 bit counter with update rate up to 1000MHz.
269           This counter is accessed via couple of 32 bit memory mapped registers.
271 config CLKSRC_STM32
272         bool "Clocksource for STM32 SoCs" if !ARCH_STM32
273         depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
274         select CLKSRC_MMIO
275         select TIMER_OF
277 config CLKSRC_MPS2
278         bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
279         depends on GENERIC_SCHED_CLOCK
280         select CLKSRC_MMIO
281         select TIMER_OF
283 config ARC_TIMERS
284         bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
285         select TIMER_OF
286         help
287           These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
288           (ARC700 as well as ARC HS38).
289           TIMER0 serves as clockevent while TIMER1 provides clocksource
291 config ARC_TIMERS_64BIT
292         bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
293         depends on ARC_TIMERS
294         select TIMER_OF
295         help
296           This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP)
297           RTC is implemented inside the core, while GFRC sits outside the core in
298           ARConnect IP block. Driver automatically picks one of them for clocksource
299           as appropriate.
301 config ARM_ARCH_TIMER
302         bool
303         select TIMER_OF if OF
304         select TIMER_ACPI if ACPI
306 config ARM_ARCH_TIMER_EVTSTREAM
307         bool "Enable ARM architected timer event stream generation by default"
308         default y if ARM_ARCH_TIMER
309         depends on ARM_ARCH_TIMER
310         help
311           This option enables support by default for event stream generation
312           based on the ARM architected timer. It is used for waking up CPUs
313           executing the wfe instruction at a frequency represented as a
314           power-of-2 divisor of the clock rate. The behaviour can also be
315           overridden on the command line using the
316           clocksource.arm_arch_timer.evtstream parameter.
317           The main use of the event stream is wfe-based timeouts of userspace
318           locking implementations. It might also be useful for imposing timeout
319           on wfe to safeguard against any programming errors in case an expected
320           event is not generated.
321           This must be disabled for hardware validation purposes to detect any
322           hardware anomalies of missing events.
324 config ARM_ARCH_TIMER_OOL_WORKAROUND
325         bool
327 config FSL_ERRATUM_A008585
328         bool "Workaround for Freescale/NXP Erratum A-008585"
329         default y
330         depends on ARM_ARCH_TIMER && ARM64
331         select ARM_ARCH_TIMER_OOL_WORKAROUND
332         help
333           This option enables a workaround for Freescale/NXP Erratum
334           A-008585 ("ARM generic timer may contain an erroneous
335           value").  The workaround will only be active if the
336           fsl,erratum-a008585 property is found in the timer node.
338 config HISILICON_ERRATUM_161010101
339         bool "Workaround for Hisilicon Erratum 161010101"
340         default y
341         select ARM_ARCH_TIMER_OOL_WORKAROUND
342         depends on ARM_ARCH_TIMER && ARM64
343         help
344           This option enables a workaround for Hisilicon Erratum
345           161010101. The workaround will be active if the hisilicon,erratum-161010101
346           property is found in the timer node.
348 config ARM64_ERRATUM_858921
349         bool "Workaround for Cortex-A73 erratum 858921"
350         default y
351         select ARM_ARCH_TIMER_OOL_WORKAROUND
352         depends on ARM_ARCH_TIMER && ARM64
353         help
354           This option enables a workaround applicable to Cortex-A73
355           (all versions), whose counter may return incorrect values.
356           The workaround will be dynamically enabled when an affected
357           core is detected.
359 config ARM_GLOBAL_TIMER
360         bool "Support for the ARM global timer" if COMPILE_TEST
361         select TIMER_OF if OF
362         depends on ARM
363         help
364           This options enables support for the ARM global timer unit
366 config ARM_TIMER_SP804
367         bool "Support for Dual Timer SP804 module"
368         depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP
369         select CLKSRC_MMIO
370         select TIMER_OF if OF
372 config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
373         bool
374         depends on ARM_GLOBAL_TIMER
375         default y
376         help
377          Use ARM global timer clock source as sched_clock
379 config ARMV7M_SYSTICK
380         bool "Support for the ARMv7M system time" if COMPILE_TEST
381         select TIMER_OF if OF
382         select CLKSRC_MMIO
383         help
384           This options enables support for the ARMv7M system timer unit
386 config ATMEL_PIT
387         select TIMER_OF if OF
388         def_bool SOC_AT91SAM9 || SOC_SAMA5
390 config ATMEL_ST
391         bool "Atmel ST timer support" if COMPILE_TEST
392         depends on HAS_IOMEM
393         select TIMER_OF
394         select MFD_SYSCON
395         help
396           Support for the Atmel ST timer.
398 config CLKSRC_EXYNOS_MCT
399         bool "Exynos multi core timer driver" if COMPILE_TEST
400         depends on ARM || ARM64
401         help
402           Support for Multi Core Timer controller on Exynos SoCs.
404 config CLKSRC_SAMSUNG_PWM
405         bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
406         depends on HAS_IOMEM
407         help
408           This is a new clocksource driver for the PWM timer found in
409           Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
410           for all devicetree enabled platforms. This driver will be
411           needed only on systems that do not have the Exynos MCT available.
413 config FSL_FTM_TIMER
414         bool "Freescale FlexTimer Module driver" if COMPILE_TEST
415         depends on HAS_IOMEM
416         select CLKSRC_MMIO
417         help
418           Support for Freescale FlexTimer Module (FTM) timer.
420 config VF_PIT_TIMER
421         bool
422         select CLKSRC_MMIO
423         help
424           Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
426 config OXNAS_RPS_TIMER
427         bool "Oxford Semiconductor OXNAS RPS Timers driver" if COMPILE_TEST
428         select TIMER_OF
429         select CLKSRC_MMIO
430         help
431           This enables support for the Oxford Semiconductor OXNAS RPS timers.
433 config SYS_SUPPORTS_SH_CMT
434         bool
436 config MTK_TIMER
437         bool "Mediatek timer driver" if COMPILE_TEST
438         depends on HAS_IOMEM
439         select TIMER_OF
440         select CLKSRC_MMIO
441         help
442           Support for Mediatek timer driver.
444 config SPRD_TIMER
445         bool "Spreadtrum timer driver" if COMPILE_TEST
446         depends on HAS_IOMEM
447         select TIMER_OF
448         help
449           Enables support for the Spreadtrum timer driver.
451 config SYS_SUPPORTS_SH_MTU2
452         bool
454 config SYS_SUPPORTS_SH_TMU
455         bool
457 config SYS_SUPPORTS_EM_STI
458         bool
460 config CLKSRC_JCORE_PIT
461         bool "J-Core PIT timer driver" if COMPILE_TEST
462         depends on OF
463         depends on HAS_IOMEM
464         select CLKSRC_MMIO
465         help
466           This enables build of clocksource and clockevent driver for
467           the integrated PIT in the J-Core synthesizable, open source SoC.
469 config SH_TIMER_CMT
470         bool "Renesas CMT timer driver" if COMPILE_TEST
471         depends on HAS_IOMEM
472         default SYS_SUPPORTS_SH_CMT
473         help
474           This enables build of a clocksource and clockevent driver for
475           the Compare Match Timer (CMT) hardware available in 16/32/48-bit
476           variants on a wide range of Mobile and Automotive SoCs from Renesas.
478 config SH_TIMER_MTU2
479         bool "Renesas MTU2 timer driver" if COMPILE_TEST
480         depends on HAS_IOMEM
481         default SYS_SUPPORTS_SH_MTU2
482         help
483           This enables build of a clockevent driver for the Multi-Function
484           Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
485           This hardware comes with 16 bit-timer registers.
487 config RENESAS_OSTM
488         bool "Renesas OSTM timer driver" if COMPILE_TEST
489         select CLKSRC_MMIO
490         help
491           Enables the support for the Renesas OSTM.
493 config SH_TIMER_TMU
494         bool "Renesas TMU timer driver" if COMPILE_TEST
495         depends on HAS_IOMEM
496         default SYS_SUPPORTS_SH_TMU
497         help
498           This enables build of a clocksource and clockevent driver for
499           the 32-bit Timer Unit (TMU) hardware available on a wide range
500           SoCs from Renesas.
502 config EM_TIMER_STI
503         bool "Renesas STI timer driver" if COMPILE_TEST
504         depends on HAS_IOMEM
505         default SYS_SUPPORTS_EM_STI
506         help
507           This enables build of a clocksource and clockevent driver for
508           the 48-bit System Timer (STI) hardware available on a SoCs
509           such as EMEV2 from former NEC Electronics.
511 config CLKSRC_QCOM
512         bool "Qualcomm MSM timer" if COMPILE_TEST
513         depends on ARM
514         select TIMER_OF
515         help
516           This enables the clocksource and the per CPU clockevent driver for the
517           Qualcomm SoCs.
519 config CLKSRC_VERSATILE
520         bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
521         depends on GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
522         select TIMER_OF
523         default y if MFD_VEXPRESS_SYSREG
524         help
525           This option enables clock source based on free running
526           counter available in the "System Registers" block of
527           ARM Versatile, RealView and Versatile Express reference
528           platforms.
530 config CLKSRC_MIPS_GIC
531         bool
532         depends on MIPS_GIC
533         select TIMER_OF
535 config CLKSRC_TANGO_XTAL
536         bool "Clocksource for Tango SoC" if COMPILE_TEST
537         depends on ARM
538         select TIMER_OF
539         select CLKSRC_MMIO
540         help
541           This enables the clocksource for Tango SoC
543 config CLKSRC_PXA
544         bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
545         depends on HAS_IOMEM
546         select CLKSRC_MMIO
547         help
548           This enables OST0 support available on PXA and SA-11x0
549           platforms.
551 config H8300_TMR8
552         bool "Clockevent timer for the H8300 platform" if COMPILE_TEST
553         depends on HAS_IOMEM
554         help
555           This enables the 8 bits timer for the H8300 platform.
557 config H8300_TMR16
558         bool "Clockevent timer for the H83069 platform" if COMPILE_TEST
559         depends on HAS_IOMEM
560         help
561           This enables the 16 bits timer for the H8300 platform with the
562           H83069 cpu.
564 config H8300_TPU
565         bool "Clocksource for the H8300 platform" if COMPILE_TEST
566         depends on HAS_IOMEM
567         help
568           This enables the clocksource for the H8300 platform with the
569           H8S2678 cpu.
571 config CLKSRC_IMX_GPT
572         bool "Clocksource using i.MX GPT" if COMPILE_TEST
573         depends on ARM && CLKDEV_LOOKUP
574         select CLKSRC_MMIO
576 config CLKSRC_IMX_TPM
577         bool "Clocksource using i.MX TPM" if COMPILE_TEST
578         depends on ARM && CLKDEV_LOOKUP
579         select CLKSRC_MMIO
580         help
581           Enable this option to use IMX Timer/PWM Module (TPM) timer as
582           clocksource.
584 config CLKSRC_ST_LPC
585         bool "Low power clocksource found in the LPC" if COMPILE_TEST
586         select TIMER_OF if OF
587         depends on HAS_IOMEM
588         select CLKSRC_MMIO
589         help
590           Enable this option to use the Low Power controller timer
591           as clocksource.
593 config ATCPIT100_TIMER
594         bool "ATCPIT100 timer driver"
595         depends on NDS32 || COMPILE_TEST
596         depends on HAS_IOMEM
597         select TIMER_OF
598         default NDS32
599         help
600           This option enables support for the Andestech ATCPIT100 timers.
602 endmenu