On Fri, Nov 15, 2024 at 02:18:42PM -0600, David Lechner wrote: > Add a new binding for SPI offload trigger sources. > > Signed-off-by: David Lechner <dlechner@xxxxxxxxxxxx> > --- > > v5 changes: > * Add MAINTAINERS entry. > > v4 changes: new patch in v4. > > FWIW, this is essentially identical to the leds trigger-source binding. > --- > .../devicetree/bindings/spi/trigger-source.yaml | 28 ++++++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 29 insertions(+) This should go into dtschema instead and not be just for SPI. > > diff --git a/Documentation/devicetree/bindings/spi/trigger-source.yaml b/Documentation/devicetree/bindings/spi/trigger-source.yaml > new file mode 100644 > index 000000000000..d64367726af2 > --- /dev/null > +++ b/Documentation/devicetree/bindings/spi/trigger-source.yaml > @@ -0,0 +1,28 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/spi/trigger-source.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Trigger source providers for SPI offloads > + > +maintainers: > + - David Lechner <dlechner@xxxxxxxxxxxx> > + > +description: > + Each trigger source provider should be represented by a device tree node. It > + may be e.g. a SPI peripheral chip or a clock source. select: true So the schema is always applied. > + > +properties: > + '#trigger-source-cells': > + description: > + Number of cells in a source trigger. Typically 0 for nodes of simple > + trigger sources. For nodes with more than one output signal, the first > + cell be used to specify which output signal to use. If the same signal is > + available on more than one pin, the second cell can be used to specify > + which pin to use. > + enum: [ 0, 1, 2 ] Not sure it's worth defining how many cells here since the specific providers have to define the exact number of cells and their use. Add "trigger-sources" here with it's type. See other simple provider/consumer schemas which have both properties in one schema. Then when you use trigger-sources in a specific binding, you just need to define the entries like clocks, interrupts, resets, etc. And eventually any types defined in the kernel can be dropped, but that should wait a bit since older dtschema won't have them. Rob