linux/drivers/iio
Dimitri Fedrau dea750f801 iio: temperature: mcp9600: add threshold events support
The device has four programmable temperature alert outputs which can be
used to monitor hot or cold-junction temperatures and detect falling and
rising temperatures. It supports up to 255 degree celsius programmable
hysteresis. Each alert can be individually configured by setting following
options in the associated alert configuration register:
- monitor hot or cold junction temperature
- monitor rising or falling temperature
- set comparator or interrupt mode
- set output polarity
- enable alert

This patch binds alert outputs to iio events:
- alert1: hot junction, rising temperature
- alert2: hot junction, falling temperature
- alert3: cold junction, rising temperature
- alert4: cold junction, falling temperature

All outputs are set in comparator mode and polarity depends on interrupt
configuration.

Signed-off-by: Dimitri Fedrau <dima.fedrau@gmail.com>
Link: https://lore.kernel.org/r/20240604133639.959682-1-dima.fedrau@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2024-06-13 19:19:25 +01:00
..
accel iio: accel: adxl355: simplify with spi_get_device_match_data() 2024-06-13 19:19:23 +01:00
adc iio: adc: adi-axi-adc: add platform dependencies 2024-06-13 19:19:24 +01:00
addac iio: addac: ad74413r: simplify with spi_get_device_match_data() 2024-06-13 19:19:24 +01:00
afe iio: afe: rescale: Accept only offset channels 2023-10-17 20:25:32 +01:00
amplifiers iio: amplifiers: hmc425a: add support for LTC6373 Instrumentation Amplifier 2024-02-28 19:26:36 +00:00
buffer iio: add missing MODULE_DESCRIPTION() macros 2024-06-13 19:19:23 +01:00
cdc iio: cdc: ad7150: relax return value check for IRQ get 2023-08-01 18:55:55 +01:00
chemical iio: chemical: ams-iaq-core: clean up codestyle warning 2024-06-08 14:44:28 +01:00
common iio: invensense: fix timestamp glitches when switching frequency 2024-05-03 11:48:56 +01:00
dac iio: dac: adi-axi-dac: add platform dependencies 2024-06-13 19:19:25 +01:00
dummy iio: dummy: Use automatic lock and direct mode cleanup. 2024-02-17 16:16:10 +00:00
filter drivers: iio: filter: admv8818: add bypass mode 2023-08-08 09:51:06 +01:00
frequency iio: frequency: adrf6780: rm clk provider include 2024-06-04 19:53:07 +01:00
gyro iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
health iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
humidity iio: humidity: si7020: add heater support 2024-06-13 19:19:23 +01:00
imu iio: imu: inv_icm42600: add register caching in the regmap 2024-06-13 19:19:24 +01:00
light iio: light: driver for Vishay VEML6040 2024-06-13 19:19:25 +01:00
magnetometer iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
multiplexer iio: multiplexer: Remove an unused field in struct mux 2024-05-27 09:48:56 +01:00
orientation iio: orientation: hid-sensor-rotation: Convert to platform remove callback returning void 2023-09-23 15:06:56 +01:00
position iio: position: hid-sensor-custom-intel-hinge: Convert to platform remove callback returning void 2023-09-23 15:06:56 +01:00
potentiometer iio: potentiometer: max5487: Drop ACPI_PTR() usage 2024-01-23 22:06:55 +00:00
potentiostat iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
pressure iio: pressure: bmp280: Introduce new cleanup routines 2024-05-27 09:48:57 +01:00
proximity iio: Drop explicit initialization of struct i2c_device_id::driver_data to 0 2024-05-27 09:48:57 +01:00
resolver iio: resolver: ad2s1210: add reset gpio support 2023-11-16 19:10:25 +00:00
temperature iio: temperature: mcp9600: add threshold events support 2024-06-13 19:19:25 +01:00
test iio: test: gts: test available times and gains sorting 2024-05-27 09:48:56 +01:00
trigger iio: trigger: stm32-timer: Convert to platform remove callback returning void 2023-09-23 15:06:56 +01:00
iio_core_trigger.h iio: core-trigger: make iio_device_register_trigger_consumer() an int return 2021-03-11 20:47:02 +00:00
iio_core.h iio: Remove unused declarations 2023-09-12 10:42:03 +01:00
industrialio-acpi.c iio: core: Add iio_read_acpi_mount_matrix() helper function 2024-04-29 20:53:25 +01:00
industrialio-backend.c iio: backend: add API for interface tuning 2024-04-29 20:53:26 +01:00
industrialio-buffer.c iio: add support for multiple scan types per channel 2024-06-04 19:53:08 +01:00
industrialio-configfs.c
industrialio-core.c driver: iio: add missing checks on iio_info's callback access 2024-06-13 19:19:22 +01:00
industrialio-event.c iio: event: use sizeof(*pointer) instead of sizeof(type) 2024-06-13 19:19:23 +01:00
industrialio-gts-helper.c iio: Fix the sorting functionality in iio_gts_build_avail_time_table 2024-05-27 09:48:56 +01:00
industrialio-sw-device.c iio: Don't use bare "unsigned" 2022-07-01 11:19:08 +01:00
industrialio-sw-trigger.c iio: core: Fix entry not deleted when iio_register_sw_trigger_type() fails 2022-11-12 17:53:35 +00:00
industrialio-trigger.c iio: trigger: move to the cleanup.h magic 2024-03-25 20:10:14 +00:00
industrialio-triggered-event.c iio: core: move @id from struct iio_dev to struct iio_dev_opaque 2021-05-17 13:49:13 +01:00
inkern.c driver: iio: add missing checks on iio_info's callback access 2024-06-13 19:19:22 +01:00
Kconfig iio: add the IIO backend framework 2024-02-19 19:32:22 +00:00
Makefile iio: core: Add iio_read_acpi_mount_matrix() helper function 2024-04-29 20:53:25 +01:00
TODO iio: core: move 'mlock' to 'struct iio_dev_opaque' 2022-11-23 19:44:00 +00:00