The H3 and compatibles controllers don't have any reception capabilities, even though it was never documented as such in the binding before. Therefore, on those controllers, we don't have the option to set an RX DMA channel. This was already done in the DTSI, but the binding itself was never updated. Let's add a special case in the schemas. Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxx> --- Changes from v1: - switch to a draft7 conditional --- Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml | 45 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml b/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml index 5698e5de5e31..8f1bc1a1af96 100644 --- a/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml +++ b/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml @@ -44,15 +44,8 @@ properties: - const: apb - const: spdif - dmas: - items: - - description: RX DMA Channel - - description: TX DMA Channel - - dma-names: - items: - - const: rx - - const: tx + dmas: true + dma-names: true resets: maxItems: 1 @@ -70,6 +63,40 @@ allOf: required: - resets + - if: + properties: + compatible: + contains: + const: allwinner,sun8i-h3-spdif + + then: + properties: + dmas: + maxItems: 1 + items: + - description: RX DMA Channel + + dma-names: + maxItems: 1 + items: + - const: tx + + else: + properties: + dmas: + minItems: 2 + maxItems: 2 + items: + - description: RX DMA Channel + - description: TX DMA Channel + + dma-names: + minItems: 2 + maxItems: 2 + items: + - const: rx + - const: tx + required: - "#sound-dai-cells" - compatible -- git-series 0.9.1