18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# Counter devices
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_cimenuconfig COUNTER
78c2ecf20Sopenharmony_ci	tristate "Counter support"
88c2ecf20Sopenharmony_ci	help
98c2ecf20Sopenharmony_ci	  This enables counter device support through the Generic Counter
108c2ecf20Sopenharmony_ci	  interface. You only need to enable this, if you also want to enable
118c2ecf20Sopenharmony_ci	  one or more of the counter device drivers below.
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciif COUNTER
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciconfig 104_QUAD_8
168c2ecf20Sopenharmony_ci	tristate "ACCES 104-QUAD-8 driver"
178c2ecf20Sopenharmony_ci	depends on PC104 && X86 && IIO
188c2ecf20Sopenharmony_ci	select ISA_BUS_API
198c2ecf20Sopenharmony_ci	help
208c2ecf20Sopenharmony_ci	  Say yes here to build support for the ACCES 104-QUAD-8 quadrature
218c2ecf20Sopenharmony_ci	  encoder counter/interface device family (104-QUAD-8, 104-QUAD-4).
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci	  A counter's respective error flag may be cleared by performing a write
248c2ecf20Sopenharmony_ci	  operation on the respective count value attribute. Although the
258c2ecf20Sopenharmony_ci	  104-QUAD-8 counters have a 25-bit range, only the lower 24 bits may be
268c2ecf20Sopenharmony_ci	  set, either directly or via the counter's preset attribute. Interrupts
278c2ecf20Sopenharmony_ci	  are not supported by this driver.
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	  The base port addresses for the devices may be configured via the base
308c2ecf20Sopenharmony_ci	  array module parameter.
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ciconfig STM32_TIMER_CNT
338c2ecf20Sopenharmony_ci	tristate "STM32 Timer encoder counter driver"
348c2ecf20Sopenharmony_ci	depends on MFD_STM32_TIMERS || COMPILE_TEST
358c2ecf20Sopenharmony_ci	help
368c2ecf20Sopenharmony_ci	  Select this option to enable STM32 Timer quadrature encoder
378c2ecf20Sopenharmony_ci	  and counter driver.
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
408c2ecf20Sopenharmony_ci	  module will be called stm32-timer-cnt.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ciconfig STM32_LPTIMER_CNT
438c2ecf20Sopenharmony_ci	tristate "STM32 LP Timer encoder counter driver"
448c2ecf20Sopenharmony_ci	depends on MFD_STM32_LPTIMER || COMPILE_TEST
458c2ecf20Sopenharmony_ci	help
468c2ecf20Sopenharmony_ci	  Select this option to enable STM32 Low-Power Timer quadrature encoder
478c2ecf20Sopenharmony_ci	  and counter driver.
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
508c2ecf20Sopenharmony_ci	  module will be called stm32-lptimer-cnt.
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ciconfig TI_EQEP
538c2ecf20Sopenharmony_ci	tristate "TI eQEP counter driver"
548c2ecf20Sopenharmony_ci	depends on (SOC_AM33XX || COMPILE_TEST)
558c2ecf20Sopenharmony_ci	select REGMAP_MMIO
568c2ecf20Sopenharmony_ci	help
578c2ecf20Sopenharmony_ci	  Select this option to enable the Texas Instruments Enhanced Quadrature
588c2ecf20Sopenharmony_ci	  Encoder Pulse (eQEP) counter driver.
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the module will be
618c2ecf20Sopenharmony_ci	  called ti-eqep.
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ciconfig FTM_QUADDEC
648c2ecf20Sopenharmony_ci	tristate "Flex Timer Module Quadrature decoder driver"
658c2ecf20Sopenharmony_ci	depends on HAS_IOMEM && OF
668c2ecf20Sopenharmony_ci	help
678c2ecf20Sopenharmony_ci	  Select this option to enable the Flex Timer Quadrature decoder
688c2ecf20Sopenharmony_ci	  driver.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
718c2ecf20Sopenharmony_ci	  module will be called ftm-quaddec.
728c2ecf20Sopenharmony_ci
738c2ecf20Sopenharmony_ciconfig MICROCHIP_TCB_CAPTURE
748c2ecf20Sopenharmony_ci	tristate "Microchip Timer Counter Capture driver"
758c2ecf20Sopenharmony_ci	depends on HAS_IOMEM && OF
768c2ecf20Sopenharmony_ci	select REGMAP_MMIO
778c2ecf20Sopenharmony_ci	help
788c2ecf20Sopenharmony_ci	  Select this option to enable the Microchip Timer Counter Block
798c2ecf20Sopenharmony_ci	  capture driver.
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci	  To compile this driver as a module, choose M here: the
828c2ecf20Sopenharmony_ci	  module will be called microchip-tcb-capture.
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciendif # COUNTER
85