@@ -130,38 +130,50 @@ properties:
ethsys.
maxItems: 1
-patternProperties:
- "^(ethernet-)?ports$":
- type: object
+required:
+ - compatible
+ - reg
+$defs:
+ mt7530-dsa-port:
patternProperties:
- "^(ethernet-)?port@[0-9]+$":
- type: object
- description: Ethernet switch ports
-
- unevaluatedProperties: false
-
- properties:
- reg:
- description:
- Port address described must be 5 or 6 for CPU port and from 0
- to 5 for user ports.
-
- allOf:
- - $ref: dsa-port.yaml#
- - if:
+ "^(ethernet-)?ports$":
+ patternProperties:
+ "^(ethernet-)?port@[0-9]+$":
+ properties:
+ reg:
+ description:
+ Port address described must be 5 or 6 for CPU port and from
+ 0 to 5 for user ports.
+
+ if:
properties:
label:
items:
- const: cpu
then:
required:
- - reg
- phy-mode
-required:
- - compatible
- - reg
+ mt7531-dsa-port:
+ patternProperties:
+ "^(ethernet-)?ports$":
+ patternProperties:
+ "^(ethernet-)?port@[0-9]+$":
+ properties:
+ reg:
+ description:
+ Port address described must be 5 or 6 for CPU port and from
+ 0 to 5 for user ports.
+
+ if:
+ properties:
+ label:
+ items:
+ - const: cpu
+ then:
+ required:
+ - phy-mode
allOf:
- $ref: dsa.yaml#
@@ -185,6 +197,7 @@ allOf:
items:
- const: mediatek,mt7530
then:
+ $ref: "#/$defs/mt7530-dsa-port"
required:
- core-supply
- io-supply
@@ -195,6 +208,7 @@ allOf:
items:
- const: mediatek,mt7531
then:
+ $ref: "#/$defs/mt7531-dsa-port"
properties:
mediatek,mcm: false
@@ -204,6 +218,7 @@ allOf:
items:
- const: mediatek,mt7621
then:
+ $ref: "#/$defs/mt7530-dsa-port"
required:
- mediatek,mcm
Define DSA port binding per switch model as each switch model requires different values for certain properties. Remove unnecessary lines as they are already included from the referred dsa.yaml. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> --- .../bindings/net/dsa/mediatek,mt7530.yaml | 59 ++++++++++++------- 1 file changed, 37 insertions(+), 22 deletions(-)