[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aTNKyaWAEjVJixMI@debian-BULLSEYE-live-builder-AMD64>
Date: Fri, 5 Dec 2025 18:12:41 -0300
From: Marcelo Schmitt <marcelo.schmitt1@...il.com>
To: Rob Herring <robh@...nel.org>
Cc: David Lechner <dlechner@...libre.com>, Mark Brown <broonie@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Marcelo Schmitt <marcelo.schmitt@...log.com>,
Michael Hennerich <michael.hennerich@...log.com>,
Nuno Sá <nuno.sa@...log.com>,
Jonathan Cameron <jic23@...nel.org>,
Andy Shevchenko <andy@...nel.org>,
Sean Anderson <sean.anderson@...ux.dev>, linux-spi@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-iio@...r.kernel.org
Subject: Re: [PATCH v3 7/7] dt-bindings: iio: adc: adi,ad4030: add data-lanes
property
On 12/04, Rob Herring wrote:
> On Mon, Dec 01, 2025 at 08:20:45PM -0600, David Lechner wrote:
> > Add data-lanes property to specify the number of data lanes used on the
> > ad463x chips that support reading two samples at the same time using
> > two data lanes with a capable SPI controller.
> >
> > Signed-off-by: David Lechner <dlechner@...libre.com>
> > ---
> > v3 changes: new patch
> >
> > I added this one to give a real-world use case where spi-rx-bus-width
> > was not sufficient to fully describe the hardware configuration.
> >
> > spi-rx-bus-width = <4>; alone could be be interpreted as either:
> >
> > +--------------+ +----------+
> > | SPI | | AD4630 |
> > | Controller | | ADC |
> > | | | |
> > | SDIA0 |<---| SDOA0 |
> > | SDIA1 |<---| SDOA1 |
> > | SDIA2 |<---| SDOA2 |
> > | SDIA3 |<---| SDOA3 |
> > | | | |
> > | SDIB0 |x | SDOB0 |
> > | SDIB1 |x | SDOB1 |
> > | SDIB2 |x | SDOB2 |
> > | SDIB3 |x | SDOB3 |
> > | | | |
> > +--------------+ +---------+
> >
> > or
> >
> > +--------------+ +----------+
> > | SPI | | AD4630 |
> > | Controller | | ADC |
> > | | | |
> > | SDIA0 |<---| SDOA0 |
> > | SDIA1 |<---| SDOA1 |
> > | SDIA2 |x | SDOA2 |
> > | SDIA3 |x | SDOA3 |
> > | | | |
> > | SDIB0 |<---| SDOB0 |
> > | SDIB1 |<---| SDOB1 |
> > | SDIB2 |x | SDOB2 |
> > | SDIB3 |x | SDOB3 |
> > | | | |
> > +--------------+ +---------+
> >
> > Now, with data-lanes having a default value of [0] (inherited from
> > spi-peripheral-props.yaml), specifying:
> >
> > spi-rx-bus-width = <4>;
> >
> > is unambiguously the first case and the example given in the binding
> > documentation is the second case:
> >
> > spi-rx-bus-width = <2>;
> > data-lanes = <0>, <1>;
>
> I just reviewed this and all, but what if you just did:
>
> spi-rx-bus-width = <2>, <2>;
>
> So *-bus-width becomes equal to the number of serializers/channels.
Unless I'm missing something, I think that would also describe the currently
possible use cases as well. To me, it actually seems even more accurate than
data-lanes. The data-lanes property only describes the SPI controller input
lines/lanes, no info is given about the output lanes. Well yeah, that would only
be a problem for a device with multiple input serializers and multiple output
serializers. Still, the *-bus-width = <N>, <N>, ... <N>; notation looks clearer,
IMHO.
>
> Rob
>
Powered by blists - more mailing lists