Merge tag 'pm-6.12-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael...
[linux-block.git] / drivers / clocksource / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Clock Source drivers"
3         depends on GENERIC_CLOCKEVENTS
4
5 config TIMER_OF
6         bool
7         select TIMER_PROBE
8
9 config TIMER_ACPI
10         bool
11         select TIMER_PROBE
12
13 config TIMER_PROBE
14         bool
15
16 config CLKSRC_I8253
17         bool
18
19 config CLKEVT_I8253
20         bool
21
22 config I8253_LOCK
23         bool
24
25 config OMAP_DM_SYSTIMER
26         bool
27         select TIMER_OF
28
29 config CLKBLD_I8253
30         def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
31
32 config CLKSRC_MMIO
33         bool
34
35 config BCM2835_TIMER
36         bool "BCM2835 timer driver" if COMPILE_TEST
37         select CLKSRC_MMIO
38         help
39           Enables the support for the BCM2835 timer driver.
40
41 config BCM_KONA_TIMER
42         bool "BCM mobile timer driver" if COMPILE_TEST
43         select CLKSRC_MMIO
44         help
45           Enables the support for the BCM Kona mobile timer driver.
46
47 config DAVINCI_TIMER
48         bool "Texas Instruments DaVinci timer driver" if COMPILE_TEST
49         help
50           Enables the support for the TI DaVinci timer driver.
51
52 config DIGICOLOR_TIMER
53         bool "Digicolor timer driver" if COMPILE_TEST
54         select CLKSRC_MMIO
55         depends on HAS_IOMEM
56         help
57           Enables the support for the digicolor timer driver.
58
59 config OMAP_DM_TIMER
60         bool "OMAP dual-mode timer driver" if ARCH_K3 || COMPILE_TEST
61         default y if ARCH_K3
62         select TIMER_OF
63         help
64           Enables the support for the TI dual-mode timer driver.
65
66 config DW_APB_TIMER
67         bool "DW APB timer driver" if COMPILE_TEST
68         help
69           Enables the support for the dw_apb timer.
70
71 config DW_APB_TIMER_OF
72         bool
73         select DW_APB_TIMER
74         select TIMER_OF
75
76 config FTTMR010_TIMER
77         bool "Faraday Technology timer driver" if COMPILE_TEST
78         depends on HAS_IOMEM
79         select CLKSRC_MMIO
80         select TIMER_OF
81         select MFD_SYSCON
82         help
83           Enables support for the Faraday Technology timer block
84           FTTMR010.
85
86 config IXP4XX_TIMER
87         bool "Intel XScale IXP4xx timer driver" if COMPILE_TEST
88         depends on HAS_IOMEM
89         select CLKSRC_MMIO
90         select TIMER_OF
91         help
92           Enables support for the Intel XScale IXP4xx SoC timer.
93
94 config ROCKCHIP_TIMER
95         bool "Rockchip timer driver" if COMPILE_TEST
96         depends on ARM || ARM64
97         select TIMER_OF
98         select CLKSRC_MMIO
99         help
100           Enables the support for the Rockchip timer driver.
101
102 config ARMADA_370_XP_TIMER
103         bool "Armada 370 and XP timer driver" if COMPILE_TEST
104         depends on ARM
105         select TIMER_OF
106         select CLKSRC_MMIO
107         help
108           Enables the support for the Armada 370 and XP timer driver.
109
110 config MESON6_TIMER
111         bool "Meson6 timer driver" if COMPILE_TEST
112         select CLKSRC_MMIO
113         help
114           Enables the support for the Meson6 timer driver.
115
116 config ORION_TIMER
117         bool "Orion timer driver" if COMPILE_TEST
118         depends on ARM
119         select TIMER_OF
120         select CLKSRC_MMIO
121         help
122           Enables the support for the Orion timer driver
123
124 config OWL_TIMER
125         bool "Owl timer driver" if COMPILE_TEST
126         select CLKSRC_MMIO
127         help
128           Enables the support for the Actions Semi Owl timer driver.
129
130 config RDA_TIMER
131         bool "RDA timer driver" if COMPILE_TEST
132         select CLKSRC_MMIO
133         select TIMER_OF
134         help
135           Enables the support for the RDA Micro timer driver.
136
137 config REALTEK_OTTO_TIMER
138         bool "Clocksource/timer for the Realtek Otto platform" if COMPILE_TEST
139         select TIMER_OF
140         help
141           This driver adds support for the timers found in the Realtek RTL83xx
142           and RTL93xx SoCs series. This includes chips such as RTL8380, RTL8381
143           and RTL832, as well as chips from the RTL839x series, such as RTL8390
144           RT8391, RTL8392, RTL8393 and RTL8396 and chips of the RTL930x series
145           such as RTL9301, RTL9302 or RTL9303.
146
147 config SUN4I_TIMER
148         bool "Sun4i timer driver" if COMPILE_TEST
149         depends on HAS_IOMEM
150         select CLKSRC_MMIO
151         select TIMER_OF
152         help
153           Enables support for the Sun4i timer.
154
155 config SUN5I_HSTIMER
156         bool "Sun5i timer driver" if COMPILE_TEST
157         select CLKSRC_MMIO
158         depends on COMMON_CLK
159         help
160           Enables support the Sun5i timer.
161
162 config TEGRA_TIMER
163         bool "Tegra timer driver" if COMPILE_TEST
164         select CLKSRC_MMIO
165         select TIMER_OF
166         depends on ARCH_TEGRA || COMPILE_TEST
167         help
168           Enables support for the Tegra driver.
169
170 config TEGRA186_TIMER
171         bool "NVIDIA Tegra186 timer driver"
172         depends on ARCH_TEGRA || COMPILE_TEST
173         depends on WATCHDOG && WATCHDOG_CORE
174         help
175           Enables support for the timers and watchdogs found on NVIDIA
176           Tegra186 and later SoCs.
177
178 config VT8500_TIMER
179         bool "VT8500 timer driver" if COMPILE_TEST
180         depends on HAS_IOMEM
181         help
182           Enables support for the VT8500 driver.
183
184 config NPCM7XX_TIMER
185         bool "NPCM7xx timer driver" if COMPILE_TEST
186         depends on HAS_IOMEM
187         select TIMER_OF
188         select CLKSRC_MMIO
189         help
190           Enable 24-bit TIMER0 and TIMER1 counters in the NPCM7xx architecture,
191           where TIMER0 serves as clockevent and TIMER1 serves as clocksource.
192
193 config CADENCE_TTC_TIMER
194         bool "Cadence TTC timer driver" if COMPILE_TEST
195         depends on COMMON_CLK
196         help
197           Enables support for the Cadence TTC driver.
198
199 config ASM9260_TIMER
200         bool "ASM9260 timer driver" if COMPILE_TEST
201         select CLKSRC_MMIO
202         select TIMER_OF
203         help
204           Enables support for the ASM9260 timer.
205
206 config CLKSRC_NOMADIK_MTU
207         bool "Nomakdik clocksource driver" if COMPILE_TEST
208         depends on ARM
209         select CLKSRC_MMIO
210         help
211           Support for Multi Timer Unit. MTU provides access
212           to multiple interrupt generating programmable
213           32-bit free running decrementing counters.
214
215 config CLKSRC_DBX500_PRCMU
216         bool "Clocksource PRCMU Timer" if COMPILE_TEST
217         depends on HAS_IOMEM
218         help
219           Use the always on PRCMU Timer as clocksource.
220
221 config CLPS711X_TIMER
222         bool "Cirrus Logic timer driver" if COMPILE_TEST
223         select CLKSRC_MMIO
224         help
225           Enables support for the Cirrus Logic PS711 timer.
226
227 config MXS_TIMER
228         bool "MXS timer driver" if COMPILE_TEST
229         select CLKSRC_MMIO
230         select STMP_DEVICE
231         help
232           Enables support for the MXS timer.
233
234 config NSPIRE_TIMER
235         bool "NSpire timer driver" if COMPILE_TEST
236         select CLKSRC_MMIO
237         help
238           Enables support for the Nspire timer.
239
240 config KEYSTONE_TIMER
241         bool "Keystone timer driver" if COMPILE_TEST
242         depends on ARM || ARM64
243         select CLKSRC_MMIO
244         help
245           Enables support for the Keystone timer.
246
247 config INTEGRATOR_AP_TIMER
248         bool "Integrator-AP timer driver" if COMPILE_TEST
249         select CLKSRC_MMIO
250         help
251           Enables support for the Integrator-AP timer.
252
253 config CLKSRC_LPC32XX
254         bool "Clocksource for LPC32XX" if COMPILE_TEST
255         depends on HAS_IOMEM
256         depends on ARM
257         select CLKSRC_MMIO
258         select TIMER_OF
259         help
260           Support for the LPC32XX clocksource.
261
262 config CLKSRC_PISTACHIO
263         bool "Clocksource for Pistachio SoC"
264         depends on HAS_IOMEM
265         depends on MIPS || COMPILE_TEST
266         select TIMER_OF
267         help
268           Enables the clocksource for the Pistachio SoC.
269
270 config CLKSRC_TI_32K
271         bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST
272         depends on GENERIC_SCHED_CLOCK
273         select TIMER_OF if OF
274         help
275           This option enables support for Texas Instruments 32.768 Hz clocksource
276           available on many OMAP-like platforms.
277
278 config CLKSRC_STM32
279         bool "Clocksource for STM32 SoCs" if !ARCH_STM32
280         depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST)
281         select CLKSRC_MMIO
282         select TIMER_OF
283
284 config CLKSRC_STM32_LP
285         bool "Low power clocksource for STM32 SoCs"
286         depends on MFD_STM32_LPTIMER || COMPILE_TEST
287
288 config CLKSRC_MPS2
289         bool "Clocksource for MPS2 SoCs" if COMPILE_TEST
290         depends on GENERIC_SCHED_CLOCK
291         select CLKSRC_MMIO
292         select TIMER_OF
293
294 config ARC_TIMERS
295         bool "Support for 32-bit TIMERn counters in ARC Cores" if COMPILE_TEST
296         depends on GENERIC_SCHED_CLOCK
297         select TIMER_OF
298         help
299           These are legacy 32-bit TIMER0 and TIMER1 counters found on all ARC cores
300           (ARC700 as well as ARC HS38).
301           TIMER0 serves as clockevent while TIMER1 provides clocksource.
302
303 config ARC_TIMERS_64BIT
304         bool "Support for 64-bit counters in ARC HS38 cores" if COMPILE_TEST
305         depends on ARC_TIMERS
306         select TIMER_OF
307         help
308           This enables 2 different 64-bit timers: RTC (for UP) and GFRC (for SMP).
309           RTC is implemented inside the core, while GFRC sits outside the core in
310           ARConnect IP block. Driver automatically picks one of them for clocksource
311           as appropriate.
312
313 config ARM_ARCH_TIMER
314         bool
315         select TIMER_OF if OF
316         select TIMER_ACPI if ACPI
317
318 config ARM_ARCH_TIMER_EVTSTREAM
319         bool "Enable ARM architected timer event stream generation by default"
320         default y if ARM_ARCH_TIMER
321         depends on ARM_ARCH_TIMER
322         help
323           This option enables support by default for event stream generation
324           based on the ARM architected timer. It is used for waking up CPUs
325           executing the wfe instruction at a frequency represented as a
326           power-of-2 divisor of the clock rate. The behaviour can also be
327           overridden on the command line using the
328           clocksource.arm_arch_timer.evtstream parameter.
329           The main use of the event stream is wfe-based timeouts of userspace
330           locking implementations. It might also be useful for imposing timeout
331           on wfe to safeguard against any programming errors in case an expected
332           event is not generated.
333           This must be disabled for hardware validation purposes to detect any
334           hardware anomalies of missing events.
335
336 config ARM_ARCH_TIMER_OOL_WORKAROUND
337         bool
338
339 config FSL_ERRATUM_A008585
340         bool "Workaround for Freescale/NXP Erratum A-008585"
341         default y
342         depends on ARM_ARCH_TIMER && ARM64
343         select ARM_ARCH_TIMER_OOL_WORKAROUND
344         help
345           This option enables a workaround for Freescale/NXP Erratum
346           A-008585 ("ARM generic timer may contain an erroneous
347           value").  The workaround will only be active if the
348           fsl,erratum-a008585 property is found in the timer node.
349
350 config HISILICON_ERRATUM_161010101
351         bool "Workaround for Hisilicon Erratum 161010101"
352         default y
353         select ARM_ARCH_TIMER_OOL_WORKAROUND
354         depends on ARM_ARCH_TIMER && ARM64
355         help
356           This option enables a workaround for Hisilicon Erratum
357           161010101. The workaround will be active if the hisilicon,erratum-161010101
358           property is found in the timer node.
359
360 config ARM64_ERRATUM_858921
361         bool "Workaround for Cortex-A73 erratum 858921"
362         default y
363         select ARM_ARCH_TIMER_OOL_WORKAROUND
364         depends on ARM_ARCH_TIMER && ARM64
365         help
366           This option enables a workaround applicable to Cortex-A73
367           (all versions), whose counter may return incorrect values.
368           The workaround will be dynamically enabled when an affected
369           core is detected.
370
371 config SUN50I_ERRATUM_UNKNOWN1
372         bool "Workaround for Allwinner A64 erratum UNKNOWN1"
373         default y
374         depends on ARM_ARCH_TIMER && ARM64 && ARCH_SUNXI
375         select ARM_ARCH_TIMER_OOL_WORKAROUND
376         help
377           This option enables a workaround for instability in the timer on
378           the Allwinner A64 SoC. The workaround will only be active if the
379           allwinner,erratum-unknown1 property is found in the timer node.
380
381 config ARM_GLOBAL_TIMER
382         bool "Support for the ARM global timer" if COMPILE_TEST
383         select TIMER_OF if OF
384         depends on ARM
385         help
386           This option enables support for the ARM global timer unit.
387
388 config ARM_GT_INITIAL_PRESCALER_VAL
389         int "ARM global timer initial prescaler value"
390         default 2 if ARCH_ZYNQ
391         default 1
392         depends on ARM_GLOBAL_TIMER
393         help
394           When the ARM global timer initializes, its current rate is declared
395           to the kernel and maintained forever. Should its parent clock
396           change, the driver tries to fix the timer's internal prescaler.
397           On some machs (i.e. Zynq) the initial prescaler value thus poses
398           bounds about how much the parent clock is allowed to decrease or
399           increase wrt the initial clock value.
400           This affects CPU_FREQ max delta from the initial frequency.
401
402 config ARM_TIMER_SP804
403         bool "Support for Dual Timer SP804 module" if COMPILE_TEST
404         depends on GENERIC_SCHED_CLOCK && HAVE_CLK
405         select CLKSRC_MMIO
406         select TIMER_OF if OF
407
408 config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
409         bool
410         depends on ARM_GLOBAL_TIMER
411         default y
412         help
413           Use ARM global timer clock source as sched_clock.
414
415 config ARMV7M_SYSTICK
416         bool "Support for the ARMv7M system time" if COMPILE_TEST
417         select TIMER_OF if OF
418         select CLKSRC_MMIO
419         help
420           This option enables support for the ARMv7M system timer unit.
421
422 config ATMEL_PIT
423         bool "Atmel PIT support" if COMPILE_TEST
424         depends on HAS_IOMEM
425         select TIMER_OF if OF
426         help
427           Support for the Periodic Interval Timer found on Atmel SoCs.
428
429 config ATMEL_ST
430         bool "Atmel ST timer support" if COMPILE_TEST
431         depends on HAS_IOMEM
432         select TIMER_OF
433         select MFD_SYSCON
434         help
435           Support for the Atmel ST timer.
436
437 config ATMEL_TCB_CLKSRC
438         bool "Atmel TC Block timer driver" if COMPILE_TEST
439         depends on ARM && HAS_IOMEM
440         select TIMER_OF if OF
441         help
442           Support for Timer Counter Blocks on Atmel SoCs.
443
444 config CLKSRC_EXYNOS_MCT
445         bool "Exynos multi core timer driver" if COMPILE_TEST
446         depends on ARM || ARM64
447         depends on ARCH_ARTPEC || ARCH_EXYNOS || COMPILE_TEST
448         help
449           Support for Multi Core Timer controller on Exynos SoCs.
450
451 config CLKSRC_SAMSUNG_PWM
452         bool "PWM timer driver for Samsung S3C, S5P" if COMPILE_TEST
453         depends on HAS_IOMEM
454         depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
455         help
456           This is a new clocksource driver for the PWM timer found in
457           Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
458           for all devicetree enabled platforms. This driver will be
459           needed only on systems that do not have the Exynos MCT available.
460
461 config FSL_FTM_TIMER
462         bool "Freescale FlexTimer Module driver" if COMPILE_TEST
463         depends on HAS_IOMEM
464         select CLKSRC_MMIO
465         help
466           Support for Freescale FlexTimer Module (FTM) timer.
467
468 config VF_PIT_TIMER
469         bool
470         select CLKSRC_MMIO
471         help
472           Support for Periodic Interrupt Timer on Freescale Vybrid Family SoCs.
473
474 config SYS_SUPPORTS_SH_CMT
475         bool
476
477 config MTK_TIMER
478         bool "Mediatek timer driver" if COMPILE_TEST
479         depends on HAS_IOMEM
480         select TIMER_OF
481         select CLKSRC_MMIO
482         help
483           Support for Mediatek timer driver.
484
485 config MTK_CPUX_TIMER
486         bool "MediaTek CPUX timer driver" if COMPILE_TEST
487         depends on HAS_IOMEM
488         default ARCH_MEDIATEK
489         select TIMER_OF
490         select CLKSRC_MMIO
491         help
492           Support for MediaTek CPUXGPT timer driver.
493
494 config SPRD_TIMER
495         bool "Spreadtrum timer driver" if EXPERT
496         depends on HAS_IOMEM
497         depends on (ARCH_SPRD || COMPILE_TEST)
498         default ARCH_SPRD
499         select TIMER_OF
500         help
501           Enables support for the Spreadtrum timer driver.
502
503 config SYS_SUPPORTS_SH_MTU2
504         bool
505
506 config SYS_SUPPORTS_SH_TMU
507         bool
508
509 config SYS_SUPPORTS_EM_STI
510         bool
511
512 config CLKSRC_JCORE_PIT
513         bool "J-Core PIT timer driver" if COMPILE_TEST
514         depends on OF
515         depends on HAS_IOMEM
516         select CLKSRC_MMIO
517         help
518           This enables build of clocksource and clockevent driver for
519           the integrated PIT in the J-Core synthesizable, open source SoC.
520
521 config SH_TIMER_CMT
522         bool "Renesas CMT timer driver" if COMPILE_TEST
523         depends on HAS_IOMEM
524         default SYS_SUPPORTS_SH_CMT
525         help
526           This enables build of a clocksource and clockevent driver for
527           the Compare Match Timer (CMT) hardware available in 16/32/48-bit
528           variants on a wide range of Mobile and Automotive SoCs from Renesas.
529
530 config SH_TIMER_MTU2
531         bool "Renesas MTU2 timer driver" if COMPILE_TEST
532         depends on HAS_IOMEM
533         default SYS_SUPPORTS_SH_MTU2
534         help
535           This enables build of a clockevent driver for the Multi-Function
536           Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
537           This hardware comes with 16-bit timer registers.
538
539 config RENESAS_OSTM
540         bool "Renesas OSTM timer driver"
541         depends on ARCH_RENESAS || COMPILE_TEST
542         select CLKSRC_MMIO
543         select TIMER_OF
544         help
545           Enables the support for the Renesas OSTM.
546
547 config SH_TIMER_TMU
548         bool "Renesas TMU timer driver" if COMPILE_TEST
549         depends on HAS_IOMEM
550         default SYS_SUPPORTS_SH_TMU
551         help
552           This enables build of a clocksource and clockevent driver for
553           the 32-bit Timer Unit (TMU) hardware available on a wide range
554           SoCs from Renesas.
555
556 config EM_TIMER_STI
557         bool "Renesas STI timer driver" if COMPILE_TEST
558         depends on HAS_IOMEM
559         default SYS_SUPPORTS_EM_STI
560         help
561           This enables build of a clocksource and clockevent driver for
562           the 48-bit System Timer (STI) hardware available on a SoCs
563           such as EMEV2 from former NEC Electronics.
564
565 config CLKSRC_QCOM
566         bool "Qualcomm MSM timer" if COMPILE_TEST
567         depends on ARM
568         select TIMER_OF
569         help
570           This enables the clocksource and the per CPU clockevent driver for the
571           Qualcomm SoCs.
572
573 config CLKSRC_VERSATILE
574         bool "ARM Versatile (Express) reference platforms clock source" if COMPILE_TEST
575         depends on GENERIC_SCHED_CLOCK
576         select TIMER_OF
577         default y if (ARCH_VEXPRESS || ARCH_VERSATILE) && ARM
578         help
579           This option enables clock source based on free running
580           counter available in the "System Registers" block of
581           ARM Versatile and Versatile Express reference platforms.
582
583 config CLKSRC_MIPS_GIC
584         bool
585         depends on MIPS_GIC
586         select CLOCKSOURCE_WATCHDOG
587         select TIMER_OF
588
589 config CLKSRC_PXA
590         bool "Clocksource for PXA or SA-11x0 platform" if COMPILE_TEST
591         depends on HAS_IOMEM
592         select CLKSRC_MMIO
593         help
594           This enables OST0 support available on PXA and SA-11x0
595           platforms.
596
597 config CLKSRC_IMX_GPT
598         bool "Clocksource using i.MX GPT" if COMPILE_TEST
599         depends on (ARM || ARM64) && HAVE_CLK
600         select CLKSRC_MMIO
601
602 config CLKSRC_IMX_TPM
603         bool "Clocksource using i.MX TPM" if COMPILE_TEST
604         depends on (ARM || ARM64) && HAVE_CLK
605         select CLKSRC_MMIO
606         select TIMER_OF
607         help
608           Enable this option to use IMX Timer/PWM Module (TPM) timer as
609           clocksource.
610
611 config TIMER_IMX_SYS_CTR
612         bool "i.MX system counter timer" if COMPILE_TEST
613         select TIMER_OF
614         help
615           Enable this option to use i.MX system counter timer as a
616           clockevent.
617
618 config CLKSRC_LOONGSON1_PWM
619         bool "Clocksource using Loongson1 PWM"
620         depends on MACH_LOONGSON32 || COMPILE_TEST
621         select MIPS_EXTERNAL_TIMER
622         select TIMER_OF
623         help
624           Enable this option to use Loongson1 PWM timer as clocksource
625           instead of the performance counter.
626
627 config CLKSRC_ST_LPC
628         bool "Low power clocksource found in the LPC" if COMPILE_TEST
629         select TIMER_OF if OF
630         depends on HAS_IOMEM
631         select CLKSRC_MMIO
632         help
633           Enable this option to use the Low Power controller timer
634           as clocksource.
635
636 config GXP_TIMER
637         bool "GXP timer driver" if COMPILE_TEST && !ARCH_HPE
638         default ARCH_HPE
639         select TIMER_OF if OF
640         help
641           Provides a driver for the timer control found on HPE
642           GXP SOCs. This is required for all GXP SOCs.
643
644 config RISCV_TIMER
645         bool "Timer for the RISC-V platform" if COMPILE_TEST
646         depends on GENERIC_SCHED_CLOCK && RISCV && RISCV_SBI
647         select TIMER_PROBE
648         select TIMER_OF
649         help
650           This enables the per-hart timer built into all RISC-V systems, which
651           is accessed via both the SBI and the rdcycle instruction.  This is
652           required for all RISC-V systems.
653
654 config CLINT_TIMER
655         bool "CLINT Timer for the RISC-V platform" if COMPILE_TEST
656         depends on GENERIC_SCHED_CLOCK && RISCV
657         select TIMER_PROBE
658         select TIMER_OF
659         help
660           This option enables the CLINT timer for RISC-V systems.  The CLINT
661           driver is usually used for NoMMU RISC-V systems.
662
663 config CSKY_MP_TIMER
664         bool "SMP Timer for the C-SKY platform" if COMPILE_TEST
665         depends on CSKY
666         select TIMER_OF
667         help
668           Say yes here to enable C-SKY SMP timer driver used for C-SKY SMP
669           system.
670           csky,mptimer is not only used in SMP system, it also could be used in
671           single core system. It's not a mmio reg and it uses mtcr/mfcr instruction.
672
673 config GX6605S_TIMER
674         bool "Gx6605s SOC system timer driver" if COMPILE_TEST
675         depends on CSKY
676         select CLKSRC_MMIO
677         select TIMER_OF
678         help
679           This option enables support for gx6605s SOC's timer.
680
681 config MILBEAUT_TIMER
682         bool "Milbeaut timer driver" if COMPILE_TEST
683         depends on OF
684         depends on ARM
685         select TIMER_OF
686         select CLKSRC_MMIO
687         help
688           Enables the support for Milbeaut timer driver.
689
690 config MSC313E_TIMER
691         bool "MSC313E timer driver" if COMPILE_TEST
692         select TIMER_OF
693         select CLKSRC_MMIO
694         help
695           Enables support for the MStar MSC313E timer driver.
696           This provides access to multiple interrupt generating
697           programmable 32-bit free running incrementing counters.
698
699 config INGENIC_TIMER
700         bool "Clocksource/timer using the TCU in Ingenic JZ SoCs"
701         default MACH_INGENIC
702         depends on MIPS || COMPILE_TEST
703         depends on COMMON_CLK
704         select MFD_SYSCON
705         select TIMER_OF
706         select IRQ_DOMAIN
707         help
708           Support for the timer/counter unit of the Ingenic JZ SoCs.
709
710 config INGENIC_SYSOST
711         bool "Clocksource/timer using the SYSOST in Ingenic X SoCs"
712         depends on MIPS || COMPILE_TEST
713         depends on COMMON_CLK
714         select MFD_SYSCON
715         select TIMER_OF
716         select IRQ_DOMAIN
717         help
718           Support for the SYSOST of the Ingenic X Series SoCs.
719
720 config INGENIC_OST
721         bool "Clocksource using the OST in Ingenic JZ SoCs"
722         depends on MIPS || COMPILE_TEST
723         depends on COMMON_CLK
724         select MFD_SYSCON
725         help
726           Support for the Operating System Timer of the Ingenic JZ SoCs.
727
728 config MICROCHIP_PIT64B
729         bool "Microchip PIT64B support"
730         depends on OF && ARM
731         select TIMER_OF
732         help
733           This option enables Microchip PIT64B timer for Atmel
734           based system. It supports the oneshot, the periodic
735           modes and high resolution. It is used as a clocksource
736           and a clockevent.
737
738 config GOLDFISH_TIMER
739         bool "Clocksource using goldfish-rtc"
740         depends on M68K || COMPILE_TEST
741         depends on RTC_DRV_GOLDFISH
742         help
743           Support for the timer/counter of goldfish-rtc
744
745 config EP93XX_TIMER
746         bool "Cirrus Logic ep93xx timer driver" if COMPILE_TEST
747         depends on ARCH_EP93XX
748         depends on GENERIC_CLOCKEVENTS
749         depends on HAS_IOMEM
750         select CLKSRC_MMIO
751         select TIMER_OF
752         help
753           Enables support for the Cirrus Logic timer block
754           EP93XX.
755
756 endmenu