On Sat, Aug 13, 2022 at 06:44:14PM +0300, Arınç ÜNAL wrote:
Define acceptable phy-mode values for CPU port of each compatible device.
Remove relevant information from the description of the binding.
I'm not really sure this is worth the complexity just to check
'phy-mode'...
Signed-off-by: Arınç ÜNAL <arinc.unal@xxxxxxxxxx>
---
.../bindings/net/dsa/mediatek,mt7530.yaml | 103 ++++++++++++++++--
1 file changed, 92 insertions(+), 11 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml b/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
index a27cb4fa490f..530ef5a75a2f 100644
--- a/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
+++ b/Documentation/devicetree/bindings/net/dsa/mediatek,mt7530.yaml
@@ -49,17 +49,6 @@ description: |
* mt7621: phy-mode = "rgmii-txid";
* mt7623: phy-mode = "rgmii";
- CPU-Ports need a phy-mode property:
- Allowed values on mt7530 and mt7621:
- - "rgmii"
- - "trgmii"
- On mt7531:
- - "1000base-x"
- - "2500base-x"
- - "rgmii"
- - "sgmii"
-
-
properties:
compatible:
oneOf:
@@ -177,6 +166,36 @@ allOf:
items:
- const: cpu
then:
+ allOf:
+ - if:
+ properties:
+ reg:
+ const: 5
+ then:
+ properties:
+ phy-mode:
+ enum:
+ - gmii
+ - mii
+ - rgmii
+
+ - if:
+ properties:
+ reg:
+ const: 6
+ then:
You've restricted this to ports 5 or 6 already, so you just need an
'else' here. And you can then drop the 'allOf'.
+ properties:
+ phy-mode:
+ enum:
+ - rgmii
+ - trgmii
+
+ properties:
+ reg:
+ enum:
+ - 5
+ - 6
+
required:
- phy-mode
@@ -206,6 +225,38 @@ allOf:
items:
- const: cpu
then:
+ allOf:
+ - if:
+ properties:
+ reg:
+ const: 5
+ then:
+ properties:
+ phy-mode:
+ enum:
+ - 1000base-x
+ - 2500base-x
+ - rgmii
+ - sgmii
+
+ - if:
+ properties:
+ reg:
+ const: 6
+ then:
+ properties:
+ phy-mode:
+ enum:
+ - 1000base-x
+ - 2500base-x
+ - sgmii
+
+ properties:
+ reg:
+ enum:
+ - 5
+ - 6
+
required:
- phy-mode
@@ -235,6 +286,36 @@ allOf:
items:
- const: cpu
then:
+ allOf:
+ - if:
+ properties:
+ reg:
+ const: 5
+ then:
+ properties:
+ phy-mode:
+ enum:
+ - gmii
+ - mii
+ - rgmii
+
+ - if:
+ properties:
+ reg:
+ const: 6
+ then:
+ properties:
+ phy-mode:
+ enum:
+ - rgmii
+ - trgmii
+
+ properties:
+ reg:
+ enum:
+ - 5
+ - 6
+
Looks like the same schema duplicated. You can put it under a '$defs'
and reference it twice.
required:
- phy-mode
--
2.34.1