0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # Counter devices
0004 #
0005
0006 menuconfig COUNTER
0007 tristate "Counter support"
0008 help
0009 This enables counter device support through the Generic Counter
0010 interface. You only need to enable this, if you also want to enable
0011 one or more of the counter device drivers below.
0012
0013 if COUNTER
0014
0015 config 104_QUAD_8
0016 tristate "ACCES 104-QUAD-8 driver"
0017 depends on (PC104 && X86) || COMPILE_TEST
0018 select ISA_BUS_API
0019 help
0020 Say yes here to build support for the ACCES 104-QUAD-8 quadrature
0021 encoder counter/interface device family (104-QUAD-8, 104-QUAD-4).
0022
0023 A counter's respective error flag may be cleared by performing a write
0024 operation on the respective count value attribute. Although the
0025 104-QUAD-8 counters have a 25-bit range, only the lower 24 bits may be
0026 set, either directly or via the counter's preset attribute.
0027
0028 The base port addresses for the devices may be configured via the base
0029 array module parameter. The interrupt line numbers for the devices may
0030 be configured via the irq array module parameter.
0031
0032 config INTERRUPT_CNT
0033 tristate "Interrupt counter driver"
0034 depends on GPIOLIB
0035 help
0036 Select this option to enable interrupt counter driver. Any interrupt
0037 source can be used by this driver as the event source.
0038
0039 To compile this driver as a module, choose M here: the
0040 module will be called interrupt-cnt.
0041
0042 config STM32_TIMER_CNT
0043 tristate "STM32 Timer encoder counter driver"
0044 depends on MFD_STM32_TIMERS || COMPILE_TEST
0045 help
0046 Select this option to enable STM32 Timer quadrature encoder
0047 and counter driver.
0048
0049 To compile this driver as a module, choose M here: the
0050 module will be called stm32-timer-cnt.
0051
0052 config STM32_LPTIMER_CNT
0053 tristate "STM32 LP Timer encoder counter driver"
0054 depends on MFD_STM32_LPTIMER || COMPILE_TEST
0055 help
0056 Select this option to enable STM32 Low-Power Timer quadrature encoder
0057 and counter driver.
0058
0059 To compile this driver as a module, choose M here: the
0060 module will be called stm32-lptimer-cnt.
0061
0062 config TI_EQEP
0063 tristate "TI eQEP counter driver"
0064 depends on (SOC_AM33XX || COMPILE_TEST)
0065 select REGMAP_MMIO
0066 help
0067 Select this option to enable the Texas Instruments Enhanced Quadrature
0068 Encoder Pulse (eQEP) counter driver.
0069
0070 To compile this driver as a module, choose M here: the module will be
0071 called ti-eqep.
0072
0073 config FTM_QUADDEC
0074 tristate "Flex Timer Module Quadrature decoder driver"
0075 depends on HAS_IOMEM && OF
0076 help
0077 Select this option to enable the Flex Timer Quadrature decoder
0078 driver.
0079
0080 To compile this driver as a module, choose M here: the
0081 module will be called ftm-quaddec.
0082
0083 config MICROCHIP_TCB_CAPTURE
0084 tristate "Microchip Timer Counter Capture driver"
0085 depends on HAS_IOMEM && OF
0086 select REGMAP_MMIO
0087 help
0088 Select this option to enable the Microchip Timer Counter Block
0089 capture driver.
0090
0091 To compile this driver as a module, choose M here: the
0092 module will be called microchip-tcb-capture.
0093
0094 config INTEL_QEP
0095 tristate "Intel Quadrature Encoder Peripheral driver"
0096 depends on PCI
0097 help
0098 Select this option to enable the Intel Quadrature Encoder Peripheral
0099 driver.
0100
0101 To compile this driver as a module, choose M here: the module
0102 will be called intel-qep.
0103
0104 endif # COUNTER