xref: /linux/drivers/counter/Kconfig (revision 60684c2bd35064043360e6f716d1b7c20e967b7d)
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 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
43config 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
54config 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
64config 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
76config STM32_LPTIMER_CNT
77	tristate "STM32 LP Timer encoder counter driver"
78	depends on MFD_STM32_LPTIMER || COMPILE_TEST
79	help
80	  Select this option to enable STM32 Low-Power Timer quadrature encoder
81	  and counter driver.
82
83	  To compile this driver as a module, choose M here: the
84	  module will be called stm32-lptimer-cnt.
85
86config STM32_TIMER_CNT
87	tristate "STM32 Timer encoder counter driver"
88	depends on MFD_STM32_TIMERS || COMPILE_TEST
89	help
90	  Select this option to enable STM32 Timer quadrature encoder
91	  and counter driver.
92
93	  To compile this driver as a module, choose M here: the
94	  module will be called stm32-timer-cnt.
95
96config TI_ECAP_CAPTURE
97	tristate "TI eCAP capture driver"
98	depends on ARCH_OMAP2PLUS || ARCH_DAVINCI_DA8XX || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
99	depends on HAS_IOMEM
100	select REGMAP_MMIO
101	help
102	  Select this option to enable the Texas Instruments Enhanced Capture
103	  (eCAP) driver in input mode.
104
105	  It can be used to timestamp events (falling/rising edges) detected
106	  on ECAP input signal.
107
108	  To compile this driver as a module, choose M here: the module
109	  will be called ti-ecap-capture.
110
111config TI_EQEP
112	tristate "TI eQEP counter driver"
113	depends on (SOC_AM33XX || COMPILE_TEST)
114	select REGMAP_MMIO
115	help
116	  Select this option to enable the Texas Instruments Enhanced Quadrature
117	  Encoder Pulse (eQEP) counter driver.
118
119	  To compile this driver as a module, choose M here: the module will be
120	  called ti-eqep.
121
122endif # COUNTER
123