Currently, if there are more than two ports, or if there is only one port but other properties(such as "#address-cells") is required, these ports are placed under the "ports" node. So add the schema of property "ports".
Otherwise, warnings similar to the following will be reported: arch/arm64/boot/dts/renesas/r8a774a1-beacon-rzg2m-kit.dt.yaml: \ sound@ec500000: 'ports' does not match any of the regexes: \ '^rcar_sound,ctu$', '^rcar_sound,dai$', '^rcar_sound,dvc$', ...
A given binding should just use 'ports' or 'port' depending on it's need. Both are not allowed at the same time. The check is done in "allOf".
Signed-off-by: Zhen Lei thunder.leizhen@huawei.com --- .../devicetree/bindings/sound/renesas,rsnd.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml index 384191ee497f534..32b10fc3789eeac 100644 --- a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml +++ b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml @@ -115,6 +115,12 @@ properties: $ref: audio-graph-port.yaml# unevaluatedProperties: false
+ ports: + $ref: /schemas/graph.yaml#/properties/ports + patternProperties: + '^port@[0-9]': + $ref: audio-graph-port.yaml# + # use patternProperties to avoid naming "xxx,yyy" issue patternProperties: "^rcar_sound,dvc$": @@ -258,6 +264,12 @@ required: - "#sound-dai-cells"
allOf: + - if: + required: + - ports + then: + properties: + port: false - if: properties: compatible: