xref: /openbmc/linux/drivers/counter/Kconfig (revision c4a7b9b5)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Counter devices
4#
5
6menuconfig 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
13if COUNTER
14
15config 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
32config 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
42config 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
52config 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
62config 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
73config 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
83config 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
94config 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
104config TI_ECAP_CAPTURE
105	tristate "TI eCAP capture driver"
106	depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
107	depends on HAS_IOMEM
108	select REGMAP_MMIO
109	help
110	  Select this option to enable the Texas Instruments Enhanced Capture
111	  (eCAP) driver in input mode.
112
113	  It can be used to timestamp events (falling/rising edges) detected
114	  on ECAP input signal.
115
116	  To compile this driver as a module, choose M here: the module
117	  will be called ti-ecap-capture.
118
119endif # COUNTER
120