counter: stm32-timer-cnt: add support for capture events
authorFabrice Gasnier <fabrice.gasnier@foss.st.com>
Thu, 7 Mar 2024 13:33:06 +0000 (14:33 +0100)
committerWilliam Breathitt Gray <wbg@kernel.org>
Tue, 2 Apr 2024 17:10:34 +0000 (13:10 -0400)
commit1aed15275b7ce17b5ebdfc112a76e0d7165ed46b
treeeb18ea0c6b1c12e35bcd93fffc902c850ffbee34
parent2c70ccd45985f1e458f9785fc8cf9b8c48e3807f
counter: stm32-timer-cnt: add support for capture events

Add support for capture events. Captured counter value for each channel
can be retrieved through CCRx register.
STM32 timers can have up to 4 capture channels (on input channel 1 to
channel 4), hence need to check the number of channels before reading
the capture data.
The capture configuration is hard-coded to capture signals on both edges
(non-inverted). Interrupts are used to report events independently for
each channel.

Reviewed-by: William Breathitt Gray <william.gray@linaro.org>
Acked-by: Lee Jones <lee@kernel.org>
Signed-off-by: Fabrice Gasnier <fabrice.gasnier@foss.st.com>
Link: https://lore.kernel.org/r/20240307133306.383045-11-fabrice.gasnier@foss.st.com
Signed-off-by: William Breathitt Gray <william.gray@linaro.org>
drivers/counter/stm32-timer-cnt.c
include/linux/mfd/stm32-timers.h