Message ID | 20211013222313.3767605-6-vladimir.oltean@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | New RGMII delay DT bindings for the SJA1105 DSA driver | expand |
On Thu, 14 Oct 2021 01:23:12 +0300, Vladimir Oltean wrote: > Add a schema validator to nxp,sja1105.yaml and to dsa.yaml for explicit > MAC-level RGMII delays. These properties must be per port and must be > present only for a phy-mode that represents RGMII. > > We tell dsa.yaml that these port properties might be present, we also > define their valid values for SJA1105. We create a common definition for > the RX and TX valid range, since it's quite a mouthful. > > We also modify the example to include the explicit RGMII delay properties. > On the fixed-link ports (in the example, port 4), having these explicit > delays is actually mandatory, since with the new behavior, the driver > shouts that it is interpreting what delays to apply based on phy-mode. > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > --- > .../devicetree/bindings/net/dsa/dsa.yaml | 4 ++ > .../bindings/net/dsa/nxp,sja1105.yaml | 42 +++++++++++++++++++ > 2 files changed, 46 insertions(+) > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:82:9: [warning] wrong indentation: expected 10 but found 8 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:84:17: [warning] wrong indentation: expected 14 but found 16 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:85:21: [warning] wrong indentation: expected 18 but found 20 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:86:25: [warning] wrong indentation: expected 22 but found 24 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:93:17: [warning] wrong indentation: expected 14 but found 16 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:94:21: [warning] wrong indentation: expected 18 but found 20 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:96:21: [warning] wrong indentation: expected 18 but found 20 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:103:5: [warning] wrong indentation: expected 2 but found 4 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:104:9: [warning] wrong indentation: expected 6 but found 8 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:105:13: [warning] wrong indentation: expected 10 but found 12 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:109:13: [warning] wrong indentation: expected 10 but found 12 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:110:13: [warning] wrong indentation: expected 13 but found 12 (indentation) ./Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml:111:13: [warning] wrong indentation: expected 13 but found 12 (indentation) dtschema/dtc warnings/errors: doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/patch/1540707 This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
On 10/13/21 3:23 PM, Vladimir Oltean wrote: > Add a schema validator to nxp,sja1105.yaml and to dsa.yaml for explicit > MAC-level RGMII delays. These properties must be per port and must be > present only for a phy-mode that represents RGMII. > > We tell dsa.yaml that these port properties might be present, we also > define their valid values for SJA1105. We create a common definition for > the RX and TX valid range, since it's quite a mouthful. > > We also modify the example to include the explicit RGMII delay properties. > On the fixed-link ports (in the example, port 4), having these explicit > delays is actually mandatory, since with the new behavior, the driver > shouts that it is interpreting what delays to apply based on phy-mode. > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Even if you need to make yamllint happy
On Thu, 14 Oct 2021 09:31:04 -0500 Rob Herring wrote: > On Thu, 14 Oct 2021 01:23:12 +0300, Vladimir Oltean wrote: > > Add a schema validator to nxp,sja1105.yaml and to dsa.yaml for explicit > > MAC-level RGMII delays. These properties must be per port and must be > > present only for a phy-mode that represents RGMII. > > > > We tell dsa.yaml that these port properties might be present, we also > > define their valid values for SJA1105. We create a common definition for > > the RX and TX valid range, since it's quite a mouthful. > > > > We also modify the example to include the explicit RGMII delay properties. > > On the fixed-link ports (in the example, port 4), having these explicit > > delays is actually mandatory, since with the new behavior, the driver > > shouts that it is interpreting what delays to apply based on phy-mode. > > > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > on your patch (DT_CHECKER_FLAGS is new in v5.13): FWIW I dropped the set from pw based on Rob's report, I see a mention of possible issues with fsl-lx2160a-bluebox3.dts, but it's not clear to me which DT is disagreeing with the schema.. or is the schema itself not 100?
On Fri, Oct 15, 2021 at 12:55:27PM -0700, Jakub Kicinski wrote: > On Thu, 14 Oct 2021 09:31:04 -0500 Rob Herring wrote: > > On Thu, 14 Oct 2021 01:23:12 +0300, Vladimir Oltean wrote: > > > Add a schema validator to nxp,sja1105.yaml and to dsa.yaml for explicit > > > MAC-level RGMII delays. These properties must be per port and must be > > > present only for a phy-mode that represents RGMII. > > > > > > We tell dsa.yaml that these port properties might be present, we also > > > define their valid values for SJA1105. We create a common definition for > > > the RX and TX valid range, since it's quite a mouthful. > > > > > > We also modify the example to include the explicit RGMII delay properties. > > > On the fixed-link ports (in the example, port 4), having these explicit > > > delays is actually mandatory, since with the new behavior, the driver > > > shouts that it is interpreting what delays to apply based on phy-mode. > > > > > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > > > > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > > on your patch (DT_CHECKER_FLAGS is new in v5.13): > > FWIW I dropped the set from pw based on Rob's report, I see a mention > of possible issues with fsl-lx2160a-bluebox3.dts, but it's not clear > to me which DT is disagreeing with the schema.. or is the schema itself > not 100? I am only saying that I am introducing a new DT binding scheme and warning all users of the old one. That's also why I am updating the device trees, to silence the newly introduced warnings. I would like this series to go through net-next, but fsl-lx2160a-bluebox3.dts isn't in net-next.
On Fri, Oct 15, 2021 at 5:48 PM Vladimir Oltean <vladimir.oltean@nxp.com> wrote: > > On Fri, Oct 15, 2021 at 12:55:27PM -0700, Jakub Kicinski wrote: > > On Thu, 14 Oct 2021 09:31:04 -0500 Rob Herring wrote: > > > On Thu, 14 Oct 2021 01:23:12 +0300, Vladimir Oltean wrote: > > > > Add a schema validator to nxp,sja1105.yaml and to dsa.yaml for explicit > > > > MAC-level RGMII delays. These properties must be per port and must be > > > > present only for a phy-mode that represents RGMII. > > > > > > > > We tell dsa.yaml that these port properties might be present, we also > > > > define their valid values for SJA1105. We create a common definition for > > > > the RX and TX valid range, since it's quite a mouthful. > > > > > > > > We also modify the example to include the explicit RGMII delay properties. > > > > On the fixed-link ports (in the example, port 4), having these explicit > > > > delays is actually mandatory, since with the new behavior, the driver > > > > shouts that it is interpreting what delays to apply based on phy-mode. > > > > > > > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > > > > > > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' > > > on your patch (DT_CHECKER_FLAGS is new in v5.13): > > > > FWIW I dropped the set from pw based on Rob's report, I see a mention > > of possible issues with fsl-lx2160a-bluebox3.dts, but it's not clear > > to me which DT is disagreeing with the schema.. or is the schema itself > > not 100? > > I am only saying that I am introducing a new DT binding scheme and > warning all users of the old one. That's also why I am updating the > device trees, to silence the newly introduced warnings. I would like > this series to go through net-next, but fsl-lx2160a-bluebox3.dts isn't > in net-next. .dts changes should go in via the sub-arch's tree, not a subsystem tree. Rob
diff --git a/Documentation/devicetree/bindings/net/dsa/dsa.yaml b/Documentation/devicetree/bindings/net/dsa/dsa.yaml index 9cfd08cd31da..2ad7f79ad371 100644 --- a/Documentation/devicetree/bindings/net/dsa/dsa.yaml +++ b/Documentation/devicetree/bindings/net/dsa/dsa.yaml @@ -97,6 +97,10 @@ patternProperties: managed: true + rx-internal-delay-ps: true + + tx-internal-delay-ps: true + required: - reg diff --git a/Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml b/Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml index f97a22772e6f..0bbaefacdaba 100644 --- a/Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml +++ b/Documentation/devicetree/bindings/net/dsa/nxp,sja1105.yaml @@ -74,10 +74,42 @@ properties: - compatible - reg +patternProperties: + "^(ethernet-)?ports$": + patternProperties: + "^(ethernet-)?port@[0-9]+$": + allOf: + - if: + properties: + phy-mode: + contains: + enum: + - rgmii + - rgmii-rxid + - rgmii-txid + - rgmii-id + then: + properties: + rx-internal-delay-ps: + $ref: "#/$defs/internal-delay-ps" + tx-internal-delay-ps: + $ref: "#/$defs/internal-delay-ps" + required: - compatible - reg +$defs: + internal-delay-ps: + description: + Disable tunable delay lines using 0 ps, or enable them and select + the phase between 1640 ps (73.8 degree shift at 1Gbps) and 2260 ps + (101.7 degree shift) in increments of 0.9 degrees (20 ps). + enum: + [0, 1640, 1660, 1680, 1700, 1720, 1740, 1760, 1780, 1800, 1820, + 1840, 1860, 1880, 1900, 1920, 1940, 1960, 1980, 2000, 2020, 2040, + 2060, 2080, 2100, 2120, 2140, 2160, 2180, 2200, 2220, 2240, 2260] + unevaluatedProperties: false examples: @@ -97,30 +129,40 @@ examples: port@0 { phy-handle = <&rgmii_phy6>; phy-mode = "rgmii-id"; + rx-internal-delay-ps = <0>; + tx-internal-delay-ps = <0>; reg = <0>; }; port@1 { phy-handle = <&rgmii_phy3>; phy-mode = "rgmii-id"; + rx-internal-delay-ps = <0>; + tx-internal-delay-ps = <0>; reg = <1>; }; port@2 { phy-handle = <&rgmii_phy4>; phy-mode = "rgmii-id"; + rx-internal-delay-ps = <0>; + tx-internal-delay-ps = <0>; reg = <2>; }; port@3 { phy-handle = <&rgmii_phy4>; phy-mode = "rgmii-id"; + rx-internal-delay-ps = <0>; + tx-internal-delay-ps = <0>; reg = <3>; }; port@4 { ethernet = <&enet2>; phy-mode = "rgmii"; + rx-internal-delay-ps = <0>; + tx-internal-delay-ps = <0>; reg = <4>; fixed-link {
Add a schema validator to nxp,sja1105.yaml and to dsa.yaml for explicit MAC-level RGMII delays. These properties must be per port and must be present only for a phy-mode that represents RGMII. We tell dsa.yaml that these port properties might be present, we also define their valid values for SJA1105. We create a common definition for the RX and TX valid range, since it's quite a mouthful. We also modify the example to include the explicit RGMII delay properties. On the fixed-link ports (in the example, port 4), having these explicit delays is actually mandatory, since with the new behavior, the driver shouts that it is interpreting what delays to apply based on phy-mode. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> --- .../devicetree/bindings/net/dsa/dsa.yaml | 4 ++ .../bindings/net/dsa/nxp,sja1105.yaml | 42 +++++++++++++++++++ 2 files changed, 46 insertions(+)