Re: [PATCH v7 5/6] dt-bindings: iio: adc: ad7192: Add AD7194 support

From: Jonathan Cameron
Date: Sun May 05 2024 - 15:46:38 EST


On Tue, 30 Apr 2024 18:21:01 +0100
Conor Dooley <conor@xxxxxxxxxx> wrote:

> On Tue, Apr 30, 2024 at 07:29:45PM +0300, Alisa-Dariana Roman wrote:
> > + diff-channels:
> > + description:
> > + Both inputs can be connected to pins AIN1 to AIN16 by choosing the
> > + appropriate value from 1 to 16.
> > + items:
> > + minimum: 1
> > + maximum: 16
> > +
> > + single-channel:
> > + description:
> > + Positive input can be connected to pins AIN1 to AIN16 by choosing the
> > + appropriate value from 1 to 16. Negative input is connected to AINCOM.
> > + items:
> > + minimum: 1
> > + maximum: 16
>
> Up to 16 differential channels and 16 single-ended channels, but only 16
> pins? Would the number of differential channels not max out at 8?

May not really be limited to 16 differential. Many chips use general purpose
muxes on both sides so you can do all combinations. In practice that's normally
pointless.

A more useful case is to do all but one channel as positive inputs and the remaining
channel as the negative for those 15 differential channels.
This is effectively the same as doing pseudo differential channels, but
on more flexible hardware. This is in contrast to a device that only supports
pseudo differential where there is a special pin for the negative
(this device has that as well as full muxes on the other 16 lines).

Having said all that. The ad7194 datasheet says 8 differential channels..
I have no idea why though... Maybe something to do with the mux switching?
Or maybe assumption is that if you want to do pseudo differential you'll use
the pseudo differential mode rather than wasting hardware?

Jonathan