On 8/30/22 4:36 AM, Krzysztof Kozlowski wrote: > On 30/08/2022 05:08, Samuel Holland wrote: >> Allwinner's I2C offload engine includes bidirectional DMA support. Add >> the properties for describing this in the devicetree. "dmas" is optional >> because not all instances of the controller have their DRQs hooked up. >> For example, R_I2C0 and R_I2C1 on V536 have no DRQ number assigned. >> >> Signed-off-by: Samuel Holland <samuel@xxxxxxxxxxxx> > > Thank you for your patch. There is something to discuss/improve. > >> --- >> >> .../bindings/i2c/marvell,mv64xxx-i2c.yaml | 13 +++++++++++++ >> 1 file changed, 13 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml b/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml >> index 0ec033e48830..63d665a4f9bb 100644 >> --- a/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml >> +++ b/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml >> @@ -66,6 +66,19 @@ properties: >> resets: >> maxItems: 1 >> >> + dmas: >> + items: >> + - description: RX DMA Channel >> + - description: TX DMA Channel >> + >> + dma-names: >> + items: >> + - const: rx >> + - const: tx >> + >> +dependencies: >> + dmas: [ dma-names ] > > Dependency is not needed. meta-schema has it. The only dma-names dependencies I see in dtschema (meta-schemas/dma.yaml and schemas/dma/dma.yaml) are in the other direction. Those are saying that dma-names only makes sense if dmas is provided. Here I am saying that the two DMA requests are optional, but only optional "together". The node must either have no DMA properties or both DMA properties. Regards, Samuel