[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251204213348.GA2198382-robh@kernel.org>
Date: Thu, 4 Dec 2025 15:33:48 -0600
From: Rob Herring <robh@...nel.org>
To: David Lechner <dlechner@...libre.com>
Cc: 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 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.
Rob
Powered by blists - more mailing lists