Merge tag 'for-linus-5.15b-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel...
[platform/kernel/linux-starfive.git] / drivers / counter / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Counter devices
4 #
5
6 menuconfig COUNTER
7         tristate "Counter support"
8         help
9           This enables counter device support through the Generic Counter
10           interface. You only need to enable this, if you also want to enable
11           one or more of the counter device drivers below.
12
13 if COUNTER
14
15 config 104_QUAD_8
16         tristate "ACCES 104-QUAD-8 driver"
17         depends on PC104 && X86
18         select ISA_BUS_API
19         help
20           Say yes here to build support for the ACCES 104-QUAD-8 quadrature
21           encoder counter/interface device family (104-QUAD-8, 104-QUAD-4).
22
23           A counter's respective error flag may be cleared by performing a write
24           operation on the respective count value attribute. Although the
25           104-QUAD-8 counters have a 25-bit range, only the lower 24 bits may be
26           set, either directly or via the counter's preset attribute. Interrupts
27           are not supported by this driver.
28
29           The base port addresses for the devices may be configured via the base
30           array module parameter.
31
32 config INTERRUPT_CNT
33         tristate "Interrupt counter driver"
34         depends on GPIOLIB
35         help
36           Select this option to enable interrupt counter driver. Any interrupt
37           source can be used by this driver as the event source.
38
39           To compile this driver as a module, choose M here: the
40           module will be called interrupt-cnt.
41
42 config STM32_TIMER_CNT
43         tristate "STM32 Timer encoder counter driver"
44         depends on MFD_STM32_TIMERS || COMPILE_TEST
45         help
46           Select this option to enable STM32 Timer quadrature encoder
47           and counter driver.
48
49           To compile this driver as a module, choose M here: the
50           module will be called stm32-timer-cnt.
51
52 config STM32_LPTIMER_CNT
53         tristate "STM32 LP Timer encoder counter driver"
54         depends on MFD_STM32_LPTIMER || COMPILE_TEST
55         help
56           Select this option to enable STM32 Low-Power Timer quadrature encoder
57           and counter driver.
58
59           To compile this driver as a module, choose M here: the
60           module will be called stm32-lptimer-cnt.
61
62 config TI_EQEP
63         tristate "TI eQEP counter driver"
64         depends on (SOC_AM33XX || COMPILE_TEST)
65         select REGMAP_MMIO
66         help
67           Select this option to enable the Texas Instruments Enhanced Quadrature
68           Encoder Pulse (eQEP) counter driver.
69
70           To compile this driver as a module, choose M here: the module will be
71           called ti-eqep.
72
73 config FTM_QUADDEC
74         tristate "Flex Timer Module Quadrature decoder driver"
75         depends on HAS_IOMEM && OF
76         help
77           Select this option to enable the Flex Timer Quadrature decoder
78           driver.
79
80           To compile this driver as a module, choose M here: the
81           module will be called ftm-quaddec.
82
83 config MICROCHIP_TCB_CAPTURE
84         tristate "Microchip Timer Counter Capture driver"
85         depends on HAS_IOMEM && OF
86         select REGMAP_MMIO
87         help
88           Select this option to enable the Microchip Timer Counter Block
89           capture driver.
90
91           To compile this driver as a module, choose M here: the
92           module will be called microchip-tcb-capture.
93
94 config INTEL_QEP
95         tristate "Intel Quadrature Encoder Peripheral driver"
96         depends on PCI
97         help
98           Select this option to enable the Intel Quadrature Encoder Peripheral
99           driver.
100
101           To compile this driver as a module, choose M here: the module
102           will be called intel-qep.
103
104 endif # COUNTER