[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1aebd827-3ff4-8d13-ca85-acf4d3a82592@linaro.org>
Date: Thu, 22 Sep 2022 09:37:28 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Yoshihiro Shimoda <yoshihiro.shimoda.uh@...esas.com>,
kishon@...com, vkoul@...nel.org, davem@...emloft.net,
edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com,
richardcochran@...il.com, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, geert+renesas@...der.be
Cc: andrew@...n.ch, linux-phy@...ts.infradead.org,
netdev@...r.kernel.org, devicetree@...r.kernel.org,
linux-renesas-soc@...r.kernel.org
Subject: Re: [PATCH v2 4/8] dt-bindings: net: renesas: Document Renesas
Ethernet Switch
On 21/09/2022 10:47, Yoshihiro Shimoda wrote:
> Document Renesas Etherent Switch for R-Car S4-8 (r8a779f0).
>
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@...esas.com>
> ---
> .../bindings/net/renesas,etherswitch.yaml | 286 ++++++++++++++++++
> 1 file changed, 286 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/net/renesas,etherswitch.yaml
>
> diff --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?
> @@ -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 <yoshihiro.shimoda.uh@...esas.com>
> +
> +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@...80000 {
> + 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
Powered by blists - more mailing lists