[PATCH v2 0/2] iio: adc: Add support for Texas Instruments ADS112C04
Kyle Hsieh <[email protected]> Fri, 31 Jul 2026 10:58:23 +0800
| Newsgroups | org.kernel.vger.linux-iio,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
This patch series introduces support for the Texas Instruments ADS112C04 Analog-to-Digital Converters. The ADS112C04 (16-bit) is precision, low-power, delta-sigma ADCs with an I2C interface. They feature a flexible input multiplexer supporting single-ended and differential measurements, a programmable gain amplifier, and an internal voltage reference. Note: While this chip shares similarities with the ADS112C14 (currently being upstreamed by David Lechner), the register maps and feature sets are sufficiently different to warrant a separate driver. However, the DT bindings and channel parsing logic have been aligned with the ADS112C14 conventions. This initial submission provides a minimal feature set (single-shot conversions and basic DRDY interrupt) covering current use cases. Signed-off-by: Kyle Hsieh <[email protected]> --- Changes in v2: - Replaced `vref-supply` with `refp-supply` and `refn-supply` to accurately reflect hardware. - Refactored the driver to dynamically parse channel configurations and routing from DT child nodes. - Modernized the driver using kernel macros. - Handled endianness elegantly. - Added hardware reset fallback logic. - Inherited IRQ trigger type from device tree instead of hardcoding. - Fixed a bug where the MUX software cache could desync from hardware if the I2C write failed. - Added strict return value checking for all I2C writes during probe. - Updated the `i2c_device_id` array to use C99 named initializers. - Link to v1: https://lore.kernel.org/r/[email protected] --- Kyle Hsieh (2): dt-bindings: iio: adc: ti,ads112c04: Add binding for ADS112C04 iio: adc: ti-ads112c04: Add support for TI ADS112C04 .../devicetree/bindings/iio/adc/ti,ads112c04.yaml | 122 +++++++ drivers/iio/adc/Kconfig | 10 + drivers/iio/adc/Makefile | 1 + drivers/iio/adc/ti-ads112c04.c | 378 +++++++++++++++++++++ 4 files changed, 511 insertions(+) --- base-commit: 4539944e515183668109bdf4d0c3d7d228383d88 change-id: 20260724-ti-ads112c04-driver-be7e89047834 Best regards, -- Kyle Hsieh <[email protected]>