Message ID | 20230313225103.30512-2-Sergey.Semin@baikalelectronics.ru (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | dt-bindings: net: dwmac: Extend clocks, props desc and constraints | expand |
On Tue, 14 Mar 2023 01:50:48 +0300, Serge Semin wrote: > Indeed the maximum DMA burst length can be programmed not only for DW > xGMACs, Allwinner EMACs and Spear SoC GMAC, but in accordance with [1] > for Generic DW *MAC IP-cores. Moreover the STMMAC set of drivers parse > the property and then apply the configuration for all supported DW MAC > devices. All of that makes the property being available for all IP-cores > the bindings supports. Let's make sure the PBL-related properties are > validated for all of them by the common DW MAC DT schema. > > [1] DesignWare Cores Ethernet MAC Universal Databook, Revision 3.73a, > October 2013, p. 380. > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > Reviewed-by: Rob Herring <robh@kernel.org> > > --- > > Changelog v1: > - Use correct syntax of the JSON pointers, so the later would begin > with a '/' after the '#'. > --- > .../devicetree/bindings/net/snps,dwmac.yaml | 77 +++++++------------ > 1 file changed, 26 insertions(+), 51 deletions(-) > 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: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: Unevaluated properties are not allowed ('interrupt-names', 'interrupts', 'mac-address', 'phy-mode', 'reg', 'snps,reset-delays-us', 'snps,reset-gpio', 'snps,rxpbl', 'snps,txpbl' were unexpected) From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230313225103.30512-2-Sergey.Semin@baikalelectronics.ru The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. 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 after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On Tue, Mar 14, 2023 at 09:10:19AM -0500, Rob Herring wrote: > > On Tue, 14 Mar 2023 01:50:48 +0300, Serge Semin wrote: > > Indeed the maximum DMA burst length can be programmed not only for DW > > xGMACs, Allwinner EMACs and Spear SoC GMAC, but in accordance with [1] > > for Generic DW *MAC IP-cores. Moreover the STMMAC set of drivers parse > > the property and then apply the configuration for all supported DW MAC > > devices. All of that makes the property being available for all IP-cores > > the bindings supports. Let's make sure the PBL-related properties are > > validated for all of them by the common DW MAC DT schema. > > > > [1] DesignWare Cores Ethernet MAC Universal Databook, Revision 3.73a, > > October 2013, p. 380. > > > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > Reviewed-by: Rob Herring <robh@kernel.org> > > > > --- > > > > Changelog v1: > > - Use correct syntax of the JSON pointers, so the later would begin > > with a '/' after the '#'. > > --- > > .../devicetree/bindings/net/snps,dwmac.yaml | 77 +++++++------------ > > 1 file changed, 26 insertions(+), 51 deletions(-) > > > > 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: > > dtschema/dtc warnings/errors: > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: Unevaluated properties are not allowed ('interrupt-names', 'interrupts', 'mac-address', 'phy-mode', 'reg', 'snps,reset-delays-us', 'snps,reset-gpio', 'snps,rxpbl', 'snps,txpbl' were unexpected) > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml Oops, on rebasing my work from older kernel I missed that the PBL properties constraints have already been extended. I'll drop the next patch in the series then and fix this one so the already defined constraints would be preserved. -Serge(y) > > doc reference errors (make refcheckdocs): > > See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230313225103.30512-2-Sergey.Semin@baikalelectronics.ru > > The base for the series is generally the latest rc1. A different dependency > should be noted in *this* patch. > > 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 after running the above command yourself. Note > that DT_SCHEMA_FILES can be set to your schema file to speed up checking > your schema. However, it must be unset to test all examples with your schema. >
On Tue, Mar 14, 2023 at 06:07:01PM +0300, Serge Semin wrote: > On Tue, Mar 14, 2023 at 09:10:19AM -0500, Rob Herring wrote: > > > > On Tue, 14 Mar 2023 01:50:48 +0300, Serge Semin wrote: > > > Indeed the maximum DMA burst length can be programmed not only for DW > > > xGMACs, Allwinner EMACs and Spear SoC GMAC, but in accordance with [1] > > > for Generic DW *MAC IP-cores. Moreover the STMMAC set of drivers parse > > > the property and then apply the configuration for all supported DW MAC > > > devices. All of that makes the property being available for all IP-cores > > > the bindings supports. Let's make sure the PBL-related properties are > > > validated for all of them by the common DW MAC DT schema. > > > > > > [1] DesignWare Cores Ethernet MAC Universal Databook, Revision 3.73a, > > > October 2013, p. 380. > > > > > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > > Reviewed-by: Rob Herring <robh@kernel.org> > > > > > > --- > > > > > > Changelog v1: > > > - Use correct syntax of the JSON pointers, so the later would begin > > > with a '/' after the '#'. > > > --- > > > .../devicetree/bindings/net/snps,dwmac.yaml | 77 +++++++------------ > > > 1 file changed, 26 insertions(+), 51 deletions(-) > > > > > > > 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: > > > > dtschema/dtc warnings/errors: > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: Unevaluated properties are not allowed ('interrupt-names', 'interrupts', 'mac-address', 'phy-mode', 'reg', 'snps,reset-delays-us', 'snps,reset-gpio', 'snps,rxpbl', 'snps,txpbl' were unexpected) > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > Oops, on rebasing my work from older kernel I missed that the PBL > properties constraints have already been extended. I'll drop the next > patch in the series then and fix this one so the already defined > constraints would be preserved. BTW it's strange I didn't have that bug spotted during my dt_binding_check run... -Serge(y) > > -Serge(y) > > > > > doc reference errors (make refcheckdocs): > > > > See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230313225103.30512-2-Sergey.Semin@baikalelectronics.ru > > > > The base for the series is generally the latest rc1. A different dependency > > should be noted in *this* patch. > > > > 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 after running the above command yourself. Note > > that DT_SCHEMA_FILES can be set to your schema file to speed up checking > > your schema. However, it must be unset to test all examples with your schema. > >
On Tue, Mar 14, 2023 at 08:09:45PM +0300, Serge Semin wrote: > On Tue, Mar 14, 2023 at 06:07:01PM +0300, Serge Semin wrote: > > On Tue, Mar 14, 2023 at 09:10:19AM -0500, Rob Herring wrote: > > > > > > On Tue, 14 Mar 2023 01:50:48 +0300, Serge Semin wrote: > > > > Indeed the maximum DMA burst length can be programmed not only for DW > > > > xGMACs, Allwinner EMACs and Spear SoC GMAC, but in accordance with [1] > > > > for Generic DW *MAC IP-cores. Moreover the STMMAC set of drivers parse > > > > the property and then apply the configuration for all supported DW MAC > > > > devices. All of that makes the property being available for all IP-cores > > > > the bindings supports. Let's make sure the PBL-related properties are > > > > validated for all of them by the common DW MAC DT schema. > > > > > > > > [1] DesignWare Cores Ethernet MAC Universal Databook, Revision 3.73a, > > > > October 2013, p. 380. > > > > > > > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > > > Reviewed-by: Rob Herring <robh@kernel.org> > > > > > > > > --- > > > > > > > > Changelog v1: > > > > - Use correct syntax of the JSON pointers, so the later would begin > > > > with a '/' after the '#'. > > > > --- > > > > .../devicetree/bindings/net/snps,dwmac.yaml | 77 +++++++------------ > > > > 1 file changed, 26 insertions(+), 51 deletions(-) > > > > > > > > > > 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: > > > > > > dtschema/dtc warnings/errors: > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: Unevaluated properties are not allowed ('interrupt-names', 'interrupts', 'mac-address', 'phy-mode', 'reg', 'snps,reset-delays-us', 'snps,reset-gpio', 'snps,rxpbl', 'snps,txpbl' were unexpected) > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > > > Oops, on rebasing my work from older kernel I missed that the PBL > > properties constraints have already been extended. I'll drop the next > > patch in the series then and fix this one so the already defined > > constraints would be preserved. > > BTW it's strange I didn't have that bug spotted during my > dt_binding_check run... Perhaps because you set DT_SCHEMA_FILES?
On Thu, Mar 16, 2023 at 03:40:37PM -0500, Rob Herring wrote: > On Tue, Mar 14, 2023 at 08:09:45PM +0300, Serge Semin wrote: > > On Tue, Mar 14, 2023 at 06:07:01PM +0300, Serge Semin wrote: > > > On Tue, Mar 14, 2023 at 09:10:19AM -0500, Rob Herring wrote: > > > > > > > > On Tue, 14 Mar 2023 01:50:48 +0300, Serge Semin wrote: > > > > > Indeed the maximum DMA burst length can be programmed not only for DW > > > > > xGMACs, Allwinner EMACs and Spear SoC GMAC, but in accordance with [1] > > > > > for Generic DW *MAC IP-cores. Moreover the STMMAC set of drivers parse > > > > > the property and then apply the configuration for all supported DW MAC > > > > > devices. All of that makes the property being available for all IP-cores > > > > > the bindings supports. Let's make sure the PBL-related properties are > > > > > validated for all of them by the common DW MAC DT schema. > > > > > > > > > > [1] DesignWare Cores Ethernet MAC Universal Databook, Revision 3.73a, > > > > > October 2013, p. 380. > > > > > > > > > > Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru> > > > > > Reviewed-by: Rob Herring <robh@kernel.org> > > > > > > > > > > --- > > > > > > > > > > Changelog v1: > > > > > - Use correct syntax of the JSON pointers, so the later would begin > > > > > with a '/' after the '#'. > > > > > --- > > > > > .../devicetree/bindings/net/snps,dwmac.yaml | 77 +++++++------------ > > > > > 1 file changed, 26 insertions(+), 51 deletions(-) > > > > > > > > > > > > > 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: > > > > > > > > dtschema/dtc warnings/errors: > > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml > > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,txpbl:0:0: 1 is not one of [2, 4, 8] > > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: snps,rxpbl:0:0: 1 is not one of [2, 4, 8] > > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > > > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.example.dtb: ethernet@1101c000: Unevaluated properties are not allowed ('interrupt-names', 'interrupts', 'mac-address', 'phy-mode', 'reg', 'snps,reset-delays-us', 'snps,reset-gpio', 'snps,rxpbl', 'snps,txpbl' were unexpected) > > > > From schema: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml > > > > > > Oops, on rebasing my work from older kernel I missed that the PBL > > > properties constraints have already been extended. I'll drop the next > > > patch in the series then and fix this one so the already defined > > > constraints would be preserved. > > > > BTW it's strange I didn't have that bug spotted during my > > dt_binding_check run... > > Perhaps because you set DT_SCHEMA_FILES? Can't remember now. I might have missed that in the long log as well. Anyway I'll test it out one more time before fixing. Thanks for your response. -Serge(y)
diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml index 16b7d2904696..a0a0437eb4f0 100644 --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml @@ -426,6 +426,32 @@ properties: description: Use Address-Aligned Beats + snps,pbl: + description: + Programmable Burst Length (tx and rx) + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [2, 4, 8] + + snps,txpbl: + description: + Tx Programmable Burst Length. If set, DMA tx will use this + value rather than snps,pbl. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [2, 4, 8] + + snps,rxpbl: + description: + Rx Programmable Burst Length. If set, DMA rx will use this + value rather than snps,pbl. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [2, 4, 8] + + snps,no-pbl-x8: + $ref: /schemas/types.yaml#/definitions/flag + description: + Don\'t multiply the pbl/txpbl/rxpbl values by 8. For core + rev < 3.50, don\'t multiply the values by 4. + snps,fixed-burst: $ref: /schemas/types.yaml#/definitions/flag description: @@ -556,57 +582,6 @@ dependencies: allOf: - $ref: "ethernet-controller.yaml#" - - if: - properties: - compatible: - contains: - enum: - - allwinner,sun7i-a20-gmac - - allwinner,sun8i-a83t-emac - - allwinner,sun8i-h3-emac - - allwinner,sun8i-r40-gmac - - allwinner,sun8i-v3s-emac - - allwinner,sun50i-a64-emac - - ingenic,jz4775-mac - - ingenic,x1000-mac - - ingenic,x1600-mac - - ingenic,x1830-mac - - ingenic,x2000-mac - - snps,dwmac-3.50a - - snps,dwmac-4.10a - - snps,dwmac-4.20a - - snps,dwxgmac - - snps,dwxgmac-2.10 - - st,spear600-gmac - - then: - properties: - snps,pbl: - description: - Programmable Burst Length (tx and rx) - $ref: /schemas/types.yaml#/definitions/uint32 - enum: [1, 2, 4, 8, 16, 32] - - snps,txpbl: - description: - Tx Programmable Burst Length. If set, DMA tx will use this - value rather than snps,pbl. - $ref: /schemas/types.yaml#/definitions/uint32 - enum: [1, 2, 4, 8, 16, 32] - - snps,rxpbl: - description: - Rx Programmable Burst Length. If set, DMA rx will use this - value rather than snps,pbl. - $ref: /schemas/types.yaml#/definitions/uint32 - enum: [1, 2, 4, 8, 16, 32] - - snps,no-pbl-x8: - $ref: /schemas/types.yaml#/definitions/flag - description: - Don\'t multiply the pbl/txpbl/rxpbl values by 8. For core - rev < 3.50, don\'t multiply the values by 4. - - if: properties: compatible: