Re: [PATCH 0/2] iio: Add support for TI ADS1X18 ADCs

From: Kurt Borja

Date: Fri Nov 21 2025 - 18:28:16 EST


Hi David,

On Fri Nov 21, 2025 at 5:32 PM -05, David Lechner wrote:
> On 11/21/25 11:16 AM, Kurt Borja wrote:
>> Hi,
>>
>> This series adds a new driver for TI ADS1X18 SPI devices.
>>
>> This is my first time contributing to the IIO subsystem and making
>> dt-bindings documentation, so (don't) go easy on me :p.
>
> I actually had these parts on my radar, so happy to help you out.
> Unfortunately, I don't have the hardware for testing though.
>
> The first thing I was going to do was check the existing drivers
> to make sure that there isn't one already that has a compatible
> register layout. I have a feeling we won't find one, but would be
> good to mention that in the cover to justify adding a new driver.

The closest driver I could find was the ti-ads1015 I2C driver. It has
the same register map and similar specs. Although I think we can adapt
it to be "compatible", I chose to do a different driver for a few
reasons:

- ads1015 and compatible devices have a separate DRDY interrupt line.

- The ti-ads1015 driver doesn't support the DRDY interrupt (sleeps
until data is ready and it doesn't have an iio_trigger).

- To correctly handle the DOUT/DRDY line we need to manually control
the spi_bus_lock. And we do it differently based on which IIO device
mode we are operating on, so it would be difficult to stuff this
logic into regmap_bus callbacks alone.

- IMO the end result of merging these drivers would be too messy.

This is just my opinion though, so let me know what you think. If do
agree I will add some of this points in the patch changelog!

>
> There are a couple of similar TI ADCs on the mailing list right
> now, but they are IMHO just slightly too different to share a
> driver, but would be good to look at just to make things are
> consistent on a high level.

Yes, the other two TI ADCs, ADS1120 and ADS131M02 are very different
devices.

>
>>
>> As explained in Patch 2 changelog, the DRDY interrupt line is shared
>> with the MOSI pin. This awkward quirk is also found on some Analog
>> Devices sigma-delta SPI ADCs, so the interrupt and trigger design is
>> inspired by those.
>
> Yup, that seems to be the best way we know how to handle this.


--
~ Kurt