Merge tag 'mfd-next-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
[linux-block.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) || COMPILE_TEST
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.
27
28           The base port addresses for the devices may be configured via the base
29           array module parameter. The interrupt line numbers for the devices may
30           be configured via the irq array module parameter.
31
32 config FTM_QUADDEC
33         tristate "Flex Timer Module Quadrature decoder driver"
34         depends on SOC_LS1021A || COMPILE_TEST
35         depends on HAS_IOMEM && OF
36         help
37           Select this option to enable the Flex Timer Quadrature decoder
38           driver.
39
40           To compile this driver as a module, choose M here: the
41           module will be called ftm-quaddec.
42
43 config INTEL_QEP
44         tristate "Intel Quadrature Encoder Peripheral driver"
45         depends on X86
46         depends on PCI
47         help
48           Select this option to enable the Intel Quadrature Encoder Peripheral
49           driver.
50
51           To compile this driver as a module, choose M here: the module
52           will be called intel-qep.
53
54 config INTERRUPT_CNT
55         tristate "Interrupt counter driver"
56         depends on GPIOLIB
57         help
58           Select this option to enable interrupt counter driver. Any interrupt
59           source can be used by this driver as the event source.
60
61           To compile this driver as a module, choose M here: the
62           module will be called interrupt-cnt.
63
64 config MICROCHIP_TCB_CAPTURE
65         tristate "Microchip Timer Counter Capture driver"
66         depends on SOC_AT91SAM9 || SOC_SAM_V7 || COMPILE_TEST
67         depends on HAS_IOMEM && OF
68         select REGMAP_MMIO
69         help
70           Select this option to enable the Microchip Timer Counter Block
71           capture driver.
72
73           To compile this driver as a module, choose M here: the
74           module will be called microchip-tcb-capture.
75
76 config RZ_MTU3_CNT
77         tristate "Renesas RZ/G2L MTU3a counter driver"
78         depends on RZ_MTU3 || COMPILE_TEST
79         help
80           Enable support for MTU3a counter driver found on Renesas RZ/G2L alike
81           SoCs. This IP supports both 16-bit and 32-bit phase counting mode
82           support.
83
84           To compile this driver as a module, choose M here: the
85           module will be called rz-mtu3-cnt.
86
87 config STM32_LPTIMER_CNT
88         tristate "STM32 LP Timer encoder counter driver"
89         depends on MFD_STM32_LPTIMER || COMPILE_TEST
90         help
91           Select this option to enable STM32 Low-Power Timer quadrature encoder
92           and counter driver.
93
94           To compile this driver as a module, choose M here: the
95           module will be called stm32-lptimer-cnt.
96
97 config STM32_TIMER_CNT
98         tristate "STM32 Timer encoder counter driver"
99         depends on MFD_STM32_TIMERS || COMPILE_TEST
100         help
101           Select this option to enable STM32 Timer quadrature encoder
102           and counter driver.
103
104           To compile this driver as a module, choose M here: the
105           module will be called stm32-timer-cnt.
106
107 config TI_ECAP_CAPTURE
108         tristate "TI eCAP capture driver"
109         depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
110         depends on HAS_IOMEM
111         select REGMAP_MMIO
112         help
113           Select this option to enable the Texas Instruments Enhanced Capture
114           (eCAP) driver in input mode.
115
116           It can be used to timestamp events (falling/rising edges) detected
117           on ECAP input signal.
118
119           To compile this driver as a module, choose M here: the module
120           will be called ti-ecap-capture.
121
122 config TI_EQEP
123         tristate "TI eQEP counter driver"
124         depends on (SOC_AM33XX || COMPILE_TEST)
125         select REGMAP_MMIO
126         help
127           Select this option to enable the Texas Instruments Enhanced Quadrature
128           Encoder Pulse (eQEP) counter driver.
129
130           To compile this driver as a module, choose M here: the module will be
131           called ti-eqep.
132
133 endif # COUNTER