linux/drivers/iio
Fabrice Gasnier 3192ade7b6 iio: trigger: stm32-timer: enable clock when in master mode
Clock should be enabled as soon as using master modes, even before
enabling timer. Or, this may provoke bad behavior on the other end
(slave timer). Then, introduce 'clk_enabled' flag, instead of relying
on CR1 EN bit, to keep track of clock being enabled (balanced refcount).
Propagate this anywhere else in the driver.

Also add 'remove' routine to stop timer and disable clock in case it
has been left enabled. Enforce the user interface has been unregistered
in the remove routine, before disabling the hardware to avoid possible
race. So, remove use of devm_ variant to register triggers and unregister
them before the hardware gets disabled [1].
[1] https://patchwork.kernel.org/patch/9956247/

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2020-03-08 17:28:35 +00:00
..
accel iio: imu: adis: Add self_test_reg variable 2020-03-08 17:28:30 +00:00
adc staging: iio: adc: ad7192: move out of staging 2020-03-08 17:28:33 +00:00
afe treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
amplifiers iio: amplifiers: hmc425a: Add support for HMC425A attenuator 2020-03-08 17:28:21 +00:00
buffer iio: buffer: rename 'read_first_n' callback to 'read' 2019-12-29 15:20:09 +00:00
chemical Merge 5.5-rc7 into staging-next 2020-01-22 09:05:34 +01:00
common iio: st_sensors: handle memory allocation failure to fix null pointer dereference 2020-02-14 12:08:22 +00:00
dac iio: dac: ltc2632: remove some unused defines 2020-02-14 15:06:24 +00:00
dummy spi: docs: convert to ReST and add it to the kABI bookset 2019-07-31 14:13:13 -06:00
frequency iio: adf4350: Convert to use GPIO descriptor 2019-12-15 11:42:16 +00:00
gyro iio: imu: adis: Add self_test_reg variable 2020-03-08 17:28:30 +00:00
health treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
humidity iio: humidity: dht11 remove TODO since it doesn't make sense 2020-01-12 11:34:15 +00:00
imu iio: adis16460: Make use of __adis_initial_startup 2020-03-08 17:28:31 +00:00
light iio: light: al3320a allow module autoload and polish 2020-03-08 17:28:35 +00:00
magnetometer iio: magnetometer: ak8975: Convert to use device_get_match_data() 2020-01-18 11:43:17 +00:00
multiplexer treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
orientation treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 309 2019-06-05 17:37:04 +02:00
potentiometer iio: potentiometer: add a driver for Maxim 5432-5435 2019-08-05 14:25:08 +01:00
potentiostat treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
pressure chrome platform changes for 5.6 2020-02-04 07:17:41 +00:00
proximity iio: srf04: add power management feature 2020-02-14 12:08:23 +00:00
resolver iio: ad2s1200: Drop legacy include 2019-12-15 11:42:15 +00:00
temperature First set of new device support, features and cleanups for IIO in the 5.6 cycle 2020-01-10 10:44:00 +01:00
trigger iio: trigger: stm32-timer: enable clock when in master mode 2020-03-08 17:28:35 +00:00
iio_core_trigger.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
iio_core.h iio: buffer: rename 'read_first_n' callback to 'read' 2019-12-29 15:20:09 +00:00
industrialio-buffer.c Merge 5.5-rc7 into staging-next 2020-01-22 09:05:34 +01:00
industrialio-configfs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
industrialio-core.c iio: core: Handle 'dB' suffix in core 2020-02-21 10:02:16 +00:00
industrialio-event.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
industrialio-sw-device.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
industrialio-sw-trigger.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
industrialio-trigger.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
industrialio-triggered-event.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
inkern.c Driver Core and debugfs changes for 5.3-rc1 2019-07-12 12:24:03 -07:00
Kconfig Second set of IIO device support, features, cleanups and minor fixes for 5.3. 2019-07-01 10:58:13 +02:00
Makefile counter: stm32-lptimer: add counter device 2019-04-25 21:33:41 +02:00