Re: [PATCH v2 4/8] dt-bindings: net: renesas: Document Renesas Ethernet Switch
From: Krzysztof Kozlowski <hidden>
Date: 2022-09-22 07:37:38
Also in:
linux-devicetree, linux-phy, linux-renesas-soc
On 21/09/2022 10:47, Yoshihiro Shimoda wrote:
quoted hunk ↗ jump to hunk
Document Renesas Etherent Switch for R-Car S4-8 (r8a779f0). Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> --- .../bindings/net/renesas,etherswitch.yaml | 286 ++++++++++++++++++ 1 file changed, 286 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/renesas,etherswitch.yamldiff --git a/Documentation/devicetree/bindings/net/renesas,etherswitch.yaml b/Documentation/devicetree/bindings/net/renesas,etherswitch.yaml new file mode 100644 index 000000000000..988d14f5c54e --- /dev/null +++ b/Documentation/devicetree/bindings/net/renesas,etherswitch.yaml
Isn't dsa directory for this?
quoted hunk ↗ jump to hunk
@@ -0,0 +1,286 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/renesas,etherswitch.yaml#
Filename: renesas,r8a779f0-ether-switch.yaml
+$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Renesas Ethernet Switch + +maintainers: + - Yoshihiro Shimoda [off-list ref] + +properties: + compatible: + const: renesas,r8a779f0-ether-switch + + reg: + maxItems: 2 + + reg-names: + items: + - const: base + - const: secure_base + + interrupts: + maxItems: 47 + + interrupt-names: + items: + - const: mfwd_error + - const: race_error + - const: coma_error + - const: gwca0_error + - const: gwca1_error + - const: etha0_error + - const: etha1_error + - const: etha2_error + - const: gptp0_status + - const: gptp1_status + - const: mfwd_status + - const: race_status + - const: coma_status + - const: gwca0_status + - const: gwca1_status + - const: etha0_status + - const: etha1_status + - const: etha2_status + - const: rmac0_status + - const: rmac1_status + - const: rmac2_status + - const: gwca0_rxtx0 + - const: gwca0_rxtx1 + - const: gwca0_rxtx2 + - const: gwca0_rxtx3 + - const: gwca0_rxtx4 + - const: gwca0_rxtx5 + - const: gwca0_rxtx6 + - const: gwca0_rxtx7 + - const: gwca1_rxtx0 + - const: gwca1_rxtx1 + - const: gwca1_rxtx2 + - const: gwca1_rxtx3 + - const: gwca1_rxtx4 + - const: gwca1_rxtx5 + - const: gwca1_rxtx6 + - const: gwca1_rxtx7 + - const: gwca0_rxts0 + - const: gwca0_rxts1 + - const: gwca1_rxts0 + - const: gwca1_rxts1 + - const: rmac0_mdio + - const: rmac1_mdio + - const: rmac2_mdio + - const: rmac0_phy + - const: rmac1_phy + - const: rmac2_phy + + clocks: + maxItems: 2 + + clock-names: + items: + - const: fck + - const: tsn + + resets: + maxItems: 2 + + reset-names: + items: + - const: rswitch2 + - const: tsn + + iommus: + maxItems: 16 + + power-domains: + maxItems: 1 + + ethernet-ports: + type: object + + properties: + '#address-cells': + description: Port number of ETHA (TSNA). + const: 1
Blank line
+ '#size-cells': + const: 0 + + additionalProperties: false
Don't put it between properties. For nested object usually this is before properties:
+ + patternProperties: + "^port@[0-9a-f]+$": + type: object +
Skip blank line.
+ $ref: "/schemas/net/ethernet-controller.yaml#"
No need for quotes.
+ unevaluatedProperties: false + + properties: + reg: + description: + Port number of ETHA (TSNA). + + phy-handle: + description: + Phandle of an Ethernet PHY.
Why do you need to mention this property? Isn't it coming from ethernet-controller.yaml?
+ + phy-mode: + description: + This specifies the interface used by the Ethernet PHY. + enum: + - mii + - sgmii + - usxgmii + + phys: + maxItems: 1 + description: + Phandle of an Ethernet SERDES.
This is getting confusing. You have now: - phy-handle - phy - phy-device - phys in one schema... although lan966x serdes seems to do the same. :/
+ + mdio: + $ref: "/schemas/net/mdio.yaml#"
No need for quotes. Are you sure this is property of each port? I don't know the net/ethernet bindings that good, so I need to ask sometimes basic questions. Other bindings seem to do it differently a bit.
+ unevaluatedProperties: false
+
+ required:
+ - phy-handle
+ - phy-mode
+ - phys
+ - mdio
+
+required:
+ - compatible
+ - reg
+ - reg-names
+ - interrupts
+ - interrupt-names
+ - clocks
+ - clock-names
+ - resets
+ - power-domains
+ - ethernet-ports
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/r8a779f0-cpg-mssr.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/power/r8a779f0-sysc.h>
+
+ ethernet@e6880000 {
+ compatible = "renesas,r8a779f0-ether-switch";Wrong indentation. Use 4 spaces.
+ reg = <0xe6880000 0x20000>, <0xe68c0000 0x20000>; + reg-names = "base", "secure_base"; + interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>,
Best regards, Krzysztof