Re: [PATCH v7 1/7] spi: dt-bindings: Add spi-device-addr peripheral property

From: David Lechner

Date: Sat Jul 25 2026 - 16:55:19 EST


On 7/22/26 2:54 AM, Janani Sunil wrote:
> Some SPI devices support sharing a single chip select across multiple
> physical chips by encoding a device address in the SPI frame itself.
> Add the generic spi-device-addr property for describing these hardware
> addresses. The property is placed on the SPI peripheral node and may
> contain multiple addresses.
>
> Signed-off-by: Janani Sunil <janani.sunil@xxxxxxxxxx>
> ---
> Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml b/Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml
> index 880a9f624566..b59d047cf117 100644
> --- a/Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml
> +++ b/Documentation/devicetree/bindings/spi/spi-peripheral-props.yaml
> @@ -142,6 +142,13 @@ properties:
> minItems: 2
> maxItems: 4
>
> + spi-device-addr:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description:
> + Device addresses used when multiple peripherals share a single chip
> + select. The array allows one logical peripheral to comprise multiple
> + physical devices, with one address per device.

"per physical device" for clarity.

> +
> st,spi-midi-ns:
> deprecated: true
> description: |
>

If there is nothing useful the SPI core code can do with this information,
I'm not entirely convinced that this needs to be a common property.

And this only allows for one logical device. If we wanted to treat each
address as a logical device (all with same CS), we would need #address-cells = <2>;
instead where the DT "address" is two values, the CS and the device address.

This isn't a nak or request for change - just putting my thoughts out there
to make sure we considered it thoroughly.