From: Ansuel Smith <ansuelsmth@gmail.com> Date: 2021-11-12 16:58:10
Some switch may require to add additional binding to the node port.
Move DSA generic port definition to a dedicated yaml to permit this.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
.../devicetree/bindings/net/dsa/dsa-port.yaml | 70 +++++++++++++++++++
.../devicetree/bindings/net/dsa/dsa.yaml | 54 +-------------
2 files changed, 72 insertions(+), 52 deletions(-)
create mode 100644 Documentation/devicetree/bindings/net/dsa/dsa-port.yaml
@@ -0,0 +1,70 @@+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)+%YAML1.2+---+$id:http://devicetree.org/schemas/net/dsa/dsa-port.yaml#+$schema:http://devicetree.org/meta-schemas/core.yaml#++title:Ethernet Switch port Device Tree Bindings++maintainers:+-Andrew Lunn <andrew@lunn.ch>+-Florian Fainelli <f.fainelli@gmail.com>+-Vivien Didelot <vivien.didelot@gmail.com>++description:+Ethernet switch port Description++properties:+reg:+description:Port number++label:+description:+Describes the label associated with this port, which will become+the netdev name+$ref:/schemas/types.yaml#/definitions/string++link:+description:+Should be a list of phandles to other switch's DSA port. This+port is used as the outgoing port towards the phandle ports. The+full routing information must be given, not just the one hop+routes to neighbouring switches+$ref:/schemas/types.yaml#/definitions/phandle-array++ethernet:+description:+Should be a phandle to a valid Ethernet device node. This host+device is what the switch port is connected to+$ref:/schemas/types.yaml#/definitions/phandle++dsa-tag-protocol:+description:+Instead of the default, the switch will use this tag protocol if+possible. Useful when a device supports multiple protocols and+the default is incompatible with the Ethernet device.+enum:+-dsa+-edsa+-ocelot+-ocelot-8021q+-seville++phy-handle:true++phy-mode:true++fixed-link:true++mac-address:true++sfp:true++managed:true++required:+-reg++additionalProperties:true++...
@@ -46,58 +46,8 @@ patternProperties:type:objectdescription:Ethernet switch ports-properties:-reg:-description:Port number--label:-description:-Describes the label associated with this port, which will become-the netdev name-$ref:/schemas/types.yaml#/definitions/string--link:-description:-Should be a list of phandles to other switch's DSA port. This-port is used as the outgoing port towards the phandle ports. The-full routing information must be given, not just the one hop-routes to neighbouring switches-$ref:/schemas/types.yaml#/definitions/phandle-array--ethernet:-description:-Should be a phandle to a valid Ethernet device node. This host-device is what the switch port is connected to-$ref:/schemas/types.yaml#/definitions/phandle--dsa-tag-protocol:-description:-Instead of the default, the switch will use this tag protocol if-possible. Useful when a device supports multiple protocols and-the default is incompatible with the Ethernet device.-enum:--dsa--edsa--ocelot--ocelot-8021q--seville--phy-handle:true--phy-mode:true--fixed-link:true--mac-address:true--sfp:true--managed:true--required:--reg--additionalProperties:false+allOf:+-$ref:dsa-port.yaml#oneOf:-required:
From: Ansuel Smith <ansuelsmth@gmail.com> Date: 2021-11-12 16:58:12
Clean and improve port definition for qca8k documentation by referencing
the dsa generic port definition and adding the additional specific port
definition.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
.../devicetree/bindings/net/dsa/qca8k.yaml | 82 ++++++-------------
1 file changed, 23 insertions(+), 59 deletions(-)
@@ -99,65 +99,29 @@ patternProperties:type:objectdescription:Ethernet switch ports-properties:-reg:-description:Port number--label:-description:-Describes the label associated with this port, which will become-the netdev name-$ref:/schemas/types.yaml#/definitions/string--link:-description:-Should be a list of phandles to other switch's DSA port. This-port is used as the outgoing port towards the phandle ports. The-full routing information must be given, not just the one hop-routes to neighbouring switches-$ref:/schemas/types.yaml#/definitions/phandle-array--ethernet:-description:-Should be a phandle to a valid Ethernet device node. This host-device is what the switch port is connected to-$ref:/schemas/types.yaml#/definitions/phandle--phy-handle:true--phy-mode:true--fixed-link:true--mac-address:true--sfp:true--qca,sgmii-rxclk-falling-edge:-$ref:/schemas/types.yaml#/definitions/flag-description:-Set the receive clock phase to falling edge. Mostly commonly used on-the QCA8327 with CPU port 0 set to SGMII.--qca,sgmii-txclk-falling-edge:-$ref:/schemas/types.yaml#/definitions/flag-description:-Set the transmit clock phase to falling edge.--qca,sgmii-enable-pll:-$ref:/schemas/types.yaml#/definitions/flag-description:-For SGMII CPU port, explicitly enable PLL, TX and RX chain along with-Signal Detection. On the QCA8327 this should not be enabled, otherwise-the SGMII port will not initialize. When used on the QCA8337, revision 3-or greater, a warning will be displayed. When the CPU port is set to-SGMII on the QCA8337, it is advised to set this unless a communication-issue is observed.--required:--reg--additionalProperties:false+allOf:+-$ref:dsa-port.yaml#+-properties:+qca,sgmii-rxclk-falling-edge:+$ref:/schemas/types.yaml#/definitions/flag+description:+Set the receive clock phase to falling edge. Mostly commonly used on+the QCA8327 with CPU port 0 set to SGMII.++qca,sgmii-txclk-falling-edge:+$ref:/schemas/types.yaml#/definitions/flag+description:+Set the transmit clock phase to falling edge.++qca,sgmii-enable-pll:+$ref:/schemas/types.yaml#/definitions/flag+description:+For SGMII CPU port, explicitly enable PLL, TX and RX chain along with+Signal Detection. On the QCA8327 this should not be enabled, otherwise+the SGMII port will not initialize. When used on the QCA8337, revision 3+or greater, a warning will be displayed. When the CPU port is set to+SGMII on the QCA8337, it is advised to set this unless a communication+issue is observed.oneOf:-required:
From: Rob Herring <robh@kernel.org> Date: 2021-11-29 21:20:58
On Fri, Nov 12, 2021 at 05:57:51PM +0100, Ansuel Smith wrote:
quoted hunk
Some switch may require to add additional binding to the node port.
Move DSA generic port definition to a dedicated yaml to permit this.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
.../devicetree/bindings/net/dsa/dsa-port.yaml | 70 +++++++++++++++++++
.../devicetree/bindings/net/dsa/dsa.yaml | 54 +-------------
2 files changed, 72 insertions(+), 52 deletions(-)
create mode 100644 Documentation/devicetree/bindings/net/dsa/dsa-port.yaml
@@ -0,0 +1,70 @@+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)+%YAML1.2+---+$id:http://devicetree.org/schemas/net/dsa/dsa-port.yaml#+$schema:http://devicetree.org/meta-schemas/core.yaml#++title:Ethernet Switch port Device Tree Bindings++maintainers:+-Andrew Lunn <andrew@lunn.ch>+-Florian Fainelli <f.fainelli@gmail.com>+-Vivien Didelot <vivien.didelot@gmail.com>++description:+Ethernet switch port Description++properties:+reg:+description:Port number++label:+description:+Describes the label associated with this port, which will become+the netdev name+$ref:/schemas/types.yaml#/definitions/string++link:+description:+Should be a list of phandles to other switch's DSA port. This+port is used as the outgoing port towards the phandle ports. The+full routing information must be given, not just the one hop+routes to neighbouring switches+$ref:/schemas/types.yaml#/definitions/phandle-array++ethernet:+description:+Should be a phandle to a valid Ethernet device node. This host+device is what the switch port is connected to+$ref:/schemas/types.yaml#/definitions/phandle++dsa-tag-protocol:+description:+Instead of the default, the switch will use this tag protocol if+possible. Useful when a device supports multiple protocols and+the default is incompatible with the Ethernet device.+enum:+-dsa+-edsa+-ocelot+-ocelot-8021q+-seville++phy-handle:true++phy-mode:true++fixed-link:true++mac-address:true++sfp:true++managed:true++required:+-reg++additionalProperties:true++...
@@ -46,58 +46,8 @@ patternProperties:type:objectdescription:Ethernet switch ports-properties:-reg:-description:Port number--label:-description:-Describes the label associated with this port, which will become-the netdev name-$ref:/schemas/types.yaml#/definitions/string--link:-description:-Should be a list of phandles to other switch's DSA port. This-port is used as the outgoing port towards the phandle ports. The-full routing information must be given, not just the one hop-routes to neighbouring switches-$ref:/schemas/types.yaml#/definitions/phandle-array--ethernet:-description:-Should be a phandle to a valid Ethernet device node. This host-device is what the switch port is connected to-$ref:/schemas/types.yaml#/definitions/phandle--dsa-tag-protocol:-description:-Instead of the default, the switch will use this tag protocol if-possible. Useful when a device supports multiple protocols and-the default is incompatible with the Ethernet device.-enum:--dsa--edsa--ocelot--ocelot-8021q--seville--phy-handle:true--phy-mode:true--fixed-link:true--mac-address:true--sfp:true--managed:true--required:--reg--additionalProperties:false+allOf:+-$ref:dsa-port.yaml#
Don't need 'allOf' here. And you need to add 'unevaluatedProperties:
false'. With that,
Reviewed-by: Rob Herring <robh@kernel.org>
(This needs to go in net-next to avoid conflicts, but given the
maintainers didn't apply it already unreviewed they probably expect I
will apply it.)
From: Rob Herring <robh@kernel.org> Date: 2021-11-29 21:22:17
On Fri, Nov 12, 2021 at 05:57:52PM +0100, Ansuel Smith wrote:
quoted hunk
Clean and improve port definition for qca8k documentation by referencing
the dsa generic port definition and adding the additional specific port
definition.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
.../devicetree/bindings/net/dsa/qca8k.yaml | 82 ++++++-------------
1 file changed, 23 insertions(+), 59 deletions(-)
@@ -99,65 +99,29 @@ patternProperties:type:objectdescription:Ethernet switch ports-properties:-reg:-description:Port number--label:-description:-Describes the label associated with this port, which will become-the netdev name-$ref:/schemas/types.yaml#/definitions/string--link:-description:-Should be a list of phandles to other switch's DSA port. This-port is used as the outgoing port towards the phandle ports. The-full routing information must be given, not just the one hop-routes to neighbouring switches-$ref:/schemas/types.yaml#/definitions/phandle-array--ethernet:-description:-Should be a phandle to a valid Ethernet device node. This host-device is what the switch port is connected to-$ref:/schemas/types.yaml#/definitions/phandle--phy-handle:true--phy-mode:true--fixed-link:true--mac-address:true--sfp:true--qca,sgmii-rxclk-falling-edge:-$ref:/schemas/types.yaml#/definitions/flag-description:-Set the receive clock phase to falling edge. Mostly commonly used on-the QCA8327 with CPU port 0 set to SGMII.--qca,sgmii-txclk-falling-edge:-$ref:/schemas/types.yaml#/definitions/flag-description:-Set the transmit clock phase to falling edge.--qca,sgmii-enable-pll:-$ref:/schemas/types.yaml#/definitions/flag-description:-For SGMII CPU port, explicitly enable PLL, TX and RX chain along with-Signal Detection. On the QCA8327 this should not be enabled, otherwise-the SGMII port will not initialize. When used on the QCA8337, revision 3-or greater, a warning will be displayed. When the CPU port is set to-SGMII on the QCA8337, it is advised to set this unless a communication-issue is observed.--required:--reg--additionalProperties:false+allOf:+-$ref:dsa-port.yaml#+-properties:
You can drop 'allOf' here too. And add 'unevaluatedProperties: false'.
With that,
Reviewed-by: Rob Herring <robh@kernel.org>
+ qca,sgmii-rxclk-falling-edge:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description:
+ Set the receive clock phase to falling edge. Mostly commonly used on
+ the QCA8327 with CPU port 0 set to SGMII.
+
+ qca,sgmii-txclk-falling-edge:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description:
+ Set the transmit clock phase to falling edge.
+
+ qca,sgmii-enable-pll:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description:
+ For SGMII CPU port, explicitly enable PLL, TX and RX chain along with
+ Signal Detection. On the QCA8327 this should not be enabled, otherwise
+ the SGMII port will not initialize. When used on the QCA8337, revision 3
+ or greater, a warning will be displayed. When the CPU port is set to
+ SGMII on the QCA8337, it is advised to set this unless a communication
+ issue is observed.
oneOf:
- required:
--
2.32.0
From: Ansuel Smith <ansuelsmth@gmail.com> Date: 2021-11-29 22:24:25
On Mon, Nov 29, 2021 at 03:18:54PM -0600, Rob Herring wrote:
On Fri, Nov 12, 2021 at 05:57:51PM +0100, Ansuel Smith wrote:
quoted
Some switch may require to add additional binding to the node port.
Move DSA generic port definition to a dedicated yaml to permit this.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
.../devicetree/bindings/net/dsa/dsa-port.yaml | 70 +++++++++++++++++++
.../devicetree/bindings/net/dsa/dsa.yaml | 54 +-------------
2 files changed, 72 insertions(+), 52 deletions(-)
create mode 100644 Documentation/devicetree/bindings/net/dsa/dsa-port.yaml
@@ -0,0 +1,70 @@+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)+%YAML1.2+---+$id:http://devicetree.org/schemas/net/dsa/dsa-port.yaml#+$schema:http://devicetree.org/meta-schemas/core.yaml#++title:Ethernet Switch port Device Tree Bindings++maintainers:+-Andrew Lunn <andrew@lunn.ch>+-Florian Fainelli <f.fainelli@gmail.com>+-Vivien Didelot <vivien.didelot@gmail.com>++description:+Ethernet switch port Description++properties:+reg:+description:Port number++label:+description:+Describes the label associated with this port, which will become+the netdev name+$ref:/schemas/types.yaml#/definitions/string++link:+description:+Should be a list of phandles to other switch's DSA port. This+port is used as the outgoing port towards the phandle ports. The+full routing information must be given, not just the one hop+routes to neighbouring switches+$ref:/schemas/types.yaml#/definitions/phandle-array++ethernet:+description:+Should be a phandle to a valid Ethernet device node. This host+device is what the switch port is connected to+$ref:/schemas/types.yaml#/definitions/phandle++dsa-tag-protocol:+description:+Instead of the default, the switch will use this tag protocol if+possible. Useful when a device supports multiple protocols and+the default is incompatible with the Ethernet device.+enum:+-dsa+-edsa+-ocelot+-ocelot-8021q+-seville++phy-handle:true++phy-mode:true++fixed-link:true++mac-address:true++sfp:true++managed:true++required:+-reg++additionalProperties:true++...
@@ -46,58 +46,8 @@ patternProperties:type:objectdescription:Ethernet switch ports-properties:-reg:-description:Port number--label:-description:-Describes the label associated with this port, which will become-the netdev name-$ref:/schemas/types.yaml#/definitions/string--link:-description:-Should be a list of phandles to other switch's DSA port. This-port is used as the outgoing port towards the phandle ports. The-full routing information must be given, not just the one hop-routes to neighbouring switches-$ref:/schemas/types.yaml#/definitions/phandle-array--ethernet:-description:-Should be a phandle to a valid Ethernet device node. This host-device is what the switch port is connected to-$ref:/schemas/types.yaml#/definitions/phandle--dsa-tag-protocol:-description:-Instead of the default, the switch will use this tag protocol if-possible. Useful when a device supports multiple protocols and-the default is incompatible with the Ethernet device.-enum:--dsa--edsa--ocelot--ocelot-8021q--seville--phy-handle:true--phy-mode:true--fixed-link:true--mac-address:true--sfp:true--managed:true--required:--reg--additionalProperties:false+allOf:+-$ref:dsa-port.yaml#
Don't need 'allOf' here. And you need to add 'unevaluatedProperties:
false'. With that,
Reviewed-by: Rob Herring <robh@kernel.org>
(This needs to go in net-next to avoid conflicts, but given the
maintainers didn't apply it already unreviewed they probably expect I
will apply it.)
If you want I can push a v2 with the net-next tag.
--
Ansuel