Re: [PATCH v2 6/7] dt-bindings: net: dsa: mediatek,mt7530: define phy-mode for each compatible
From: Rob Herring <robh@kernel.org>
Date: 2022-08-16 21:21:46
Also in:
linux-arm-kernel, linux-devicetree, linux-mediatek, lkml
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'...
quoted hunk ↗ jump to hunk
Signed-off-by: Arınç ÜNAL <redacted> --- .../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'.
quoted hunk ↗ jump to hunk
+ 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