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

From: Jonathan Cameron

Date: Sat Jul 25 2026 - 18:06:23 EST


On Sat, 25 Jul 2026 15:55:01 -0500
David Lechner <dlechner@xxxxxxxxxxxx> wrote:

> 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.
>

We may end up relaxing that again if multichip packages start doing this.
Fine to add that clarification for now. We can revisit when / if it ever
needs that relaxing.

> > +
> > 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.

I think being common does make some sense from a standarization point of
view and it isn't obvious where to put it other than under spi.

>
> 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.

Ah. Good point for the adc@address or similar needing to match a combination
of CS and spi-device-addr. Conor any thoughts on how this would be done?


Also feels like this series should update the one use of the microchip binding
in tree.

arch/riscv/boot/dts/microchip/mpfs-beaglev-fire.dts

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