Messages in this thread | | | Date | Wed, 17 Aug 2022 01:09:16 +0300 | Subject | Re: [PATCH v2 6/7] dt-bindings: net: dsa: mediatek,mt7530: define phy-mode for each compatible | From | Arınç ÜNAL <> |
| |
On 17.08.2022 00:21, Rob Herring wrote: > 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'...
I can describe it on the binding description but it won't be checked on DT bindings. phy-mode values are significantly different between mt7530 and mt7531 so I think it's useful to have it.
> >> >> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> >> --- >> .../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'.
Good thinking, will do.
> >> + 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.
Great!
> >> required: >> - phy-mode >> >> -- >> 2.34.1 >> >>
| |