The Renesas RZ/T2H and RZ/N2H SoCs have multiple DMA controllers that
can be used with the RSPI peripheral. The current bindings only allow a
single pair of RX and TX DMAs.
Allow multiple DMAs by only restricting the possible names of the DMA
channels.
All '.*-names$' properties must conform to the string-array.yaml
meta-schema, which requires both minItems and maxItems properties to be
present before the items can be a schema. Otherwise, the items need to
be an array.
Declare a generous maxItems of 32, which should be enough for 16 DMA
controllers, so that we don't have to update this value ever again, even
if currently the maximum number of DMA controllers on a Renesas SoC is
5.
Signed-off-by: Cosmin Tanislav <cosmin-gabriel.tanislav.xa@renesas.com>
---
V2:
* new patch
.../devicetree/bindings/spi/renesas,rzv2h-rspi.yaml | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml b/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml
index a588b112e11e..383e97f0dabd 100644
--- a/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml
+++ b/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml
@@ -57,13 +57,15 @@ properties:
- const: presetn
- const: tresetn
- dmas:
- maxItems: 2
+ dmas: true
dma-names:
+ minItems: 2
+ maxItems: 32
items:
- - const: rx
- - const: tx
+ enum:
+ - rx
+ - tx
power-domains:
maxItems: 1
--
2.52.0
On Tue, Jan 27, 2026 at 10:17:04PM +0200, Cosmin Tanislav wrote: > The Renesas RZ/T2H and RZ/N2H SoCs have multiple DMA controllers that > can be used with the RSPI peripheral. The current bindings only allow a > single pair of RX and TX DMAs. > > Allow multiple DMAs by only restricting the possible names of the DMA > channels. > > All '.*-names$' properties must conform to the string-array.yaml > meta-schema, which requires both minItems and maxItems properties to be > present before the items can be a schema. Otherwise, the items need to > be an array. Why is this in the commit message? > > Declare a generous maxItems of 32, which should be enough for 16 DMA > controllers, so that we don't have to update this value ever again, even > if currently the maximum number of DMA controllers on a Renesas SoC is > 5. Huh, No. The binding should constrain this to fit what the actual devices do. > > Signed-off-by: Cosmin Tanislav <cosmin-gabriel.tanislav.xa@renesas.com> > --- > > V2: > * new patch > > .../devicetree/bindings/spi/renesas,rzv2h-rspi.yaml | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml b/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml > index a588b112e11e..383e97f0dabd 100644 > --- a/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml > +++ b/Documentation/devicetree/bindings/spi/renesas,rzv2h-rspi.yaml > @@ -57,13 +57,15 @@ properties: > - const: presetn > - const: tresetn > > - dmas: > - maxItems: 2 > + dmas: true This should have the same constraints as dma-names. You've now allowed this to have 1 and 33 dmas, because there's no requirement to have dma-names when you have dmas. > > dma-names: > + minItems: 2 > + maxItems: 32 > items: > - - const: rx > - - const: tx > + enum: > + - rx > + - tx You've changed this to allow 32 dma-names, but they all need to be called either "rx" or "tx", how is a driver meant to use dma-names to get the second pair of dma channels? Shouldn't anything in excess of the first two start getting numbers appended so that a driver can actually request them? pw-bot: changes-requested Conor.
© 2016 - 2026 Red Hat, Inc.