Message ID | 20210422094257.1641396-2-prasanna.vengateshan@microchip.com |
---|---|
State | Superseded |
Headers | show |
Series | net: dsa: microchip: DSA driver support for LAN937x switch | expand |
On Thu, 2021-04-22 at 12:38 -0500, Rob Herring wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the > content is safe > > On Thu, Apr 22, 2021 at 03:12:49PM +0530, Prasanna Vengateshan wrote: > > Documentation in .yaml format and updates to the MAINTAINERS > > Also 'make dt_binding_check' is passed > > > > Signed-off-by: Prasanna Vengateshan <prasanna.vengateshan@microchip.com> > > --- > > .../bindings/net/dsa/microchip,lan937x.yaml | 142 ++++++++++++++++++ > > MAINTAINERS | 1 + > > 2 files changed, 143 insertions(+) > > create mode 100644 > > Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml > > > > diff --git > > a/Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml > > b/Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml > > new file mode 100644 > > index 000000000000..22128a52d699 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml > > @@ -0,0 +1,142 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/net/dsa/microchip,lan937x.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: LAN937x Ethernet Switch Series Tree Bindings > > + > > +maintainers: > > + - UNGLinuxDriver@microchip.com > > + > > +allOf: > > + - $ref: dsa.yaml# > > + > > +properties: > > + compatible: > > + enum: > > + - microchip,lan9370 > > + - microchip,lan9371 > > + - microchip,lan9372 > > + - microchip,lan9373 > > + - microchip,lan9374 > > + > > + reg: > > + maxItems: 1 > > + > > + spi-max-frequency: > > + maximum: 50000000 > > + > > + reset-gpios: > > + description: Optional gpio specifier for a reset line > > + maxItems: 1 > > + > > +required: > > + - compatible > > + - reg > > + > > +unevaluatedProperties: false > > + > > +examples: > > + - | > > + #include <dt-bindings/gpio/gpio.h> > > + > > + //Ethernet switch connected via spi to the host > > If this is on SPI, why is it not under the spi bus node? Thanks for reviewing the patch. I will move this comment to above the spi node. > > > + ethernet { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + fixed-link { > > + speed = <1000>; > > + full-duplex; > > + }; > > + }; > > + > > + spi { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + lan9374: switch@0 { > > + compatible = "microchip,lan9374"; > > + reg = <0>; > > + > > + spi-max-frequency = <44000000>; > > + > > + ethernet-ports { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + port@0 { > > + reg = <0>; > > + label = "lan1"; > > + phy-handle = <&t1phy0>; > > + }; > > + port@1 { > > + reg = <1>; > > + label = "lan2"; > > + phy-handle = <&t1phy1>; > > + }; > > + port@2 { > > + reg = <2>; > > + label = "lan4"; > > + phy-handle = <&t1phy2>; > > + }; > > + port@3 { > > + reg = <3>; > > + label = "lan6"; > > + phy-handle = <&t1phy3>; > > + }; > > + port@4 { > > + reg = <4>; > > + phy-mode = "rgmii"; > > + ethernet = <ðernet>; > > You are missing 'ethernet' label. This is the cpu port and label is not used anywhere. i received this feedback in last patch version. > > > > > + }; > > + }; > > + > > + mdio { > > + compatible = "microchip,lan937x-mdio"; > > You can just drop this to make the example pass. Or convert that binding > to schema. Okay, will remove in the next revision. Also i have received an alternate suggestion in the other patch to avoid usage of compatible string. > > > > > -- > > 2.27.0 > >
On 4/25/21 9:05 PM, Prasanna Vengateshan wrote: >>> + port@4 { >>> + reg = <4>; >>> + phy-mode = "rgmii"; >>> + ethernet = <ðernet>; >> >> You are missing 'ethernet' label. > This is the cpu port and label is not used anywhere. i received this feedback in > last patch version. Your example of a CPU port node is valid here, we need an 'ethernet' phandle to know this is a CPU port, otherwise it is just a regular user-facing port.
diff --git a/Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml b/Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml new file mode 100644 index 000000000000..22128a52d699 --- /dev/null +++ b/Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml @@ -0,0 +1,142 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/dsa/microchip,lan937x.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: LAN937x Ethernet Switch Series Tree Bindings + +maintainers: + - UNGLinuxDriver@microchip.com + +allOf: + - $ref: dsa.yaml# + +properties: + compatible: + enum: + - microchip,lan9370 + - microchip,lan9371 + - microchip,lan9372 + - microchip,lan9373 + - microchip,lan9374 + + reg: + maxItems: 1 + + spi-max-frequency: + maximum: 50000000 + + reset-gpios: + description: Optional gpio specifier for a reset line + maxItems: 1 + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + //Ethernet switch connected via spi to the host + ethernet { + #address-cells = <1>; + #size-cells = <0>; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + + spi { + #address-cells = <1>; + #size-cells = <0>; + + lan9374: switch@0 { + compatible = "microchip,lan9374"; + reg = <0>; + + spi-max-frequency = <44000000>; + + ethernet-ports { + #address-cells = <1>; + #size-cells = <0>; + port@0 { + reg = <0>; + label = "lan1"; + phy-handle = <&t1phy0>; + }; + port@1 { + reg = <1>; + label = "lan2"; + phy-handle = <&t1phy1>; + }; + port@2 { + reg = <2>; + label = "lan4"; + phy-handle = <&t1phy2>; + }; + port@3 { + reg = <3>; + label = "lan6"; + phy-handle = <&t1phy3>; + }; + port@4 { + reg = <4>; + phy-mode = "rgmii"; + ethernet = <ðernet>; + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + port@5 { + reg = <5>; + label = "lan7"; + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + port@6 { + reg = <6>; + label = "lan5"; + phy-handle = <&t1phy4>; + }; + port@7 { + reg = <7>; + label = "lan3"; + phy-handle = <&t1phy5>; + }; + }; + + mdio { + compatible = "microchip,lan937x-mdio"; + #address-cells = <1>; + #size-cells = <0>; + + t1phy0: ethernet-phy@0{ + reg = <0x0>; + }; + t1phy1: ethernet-phy@1{ + reg = <0x1>; + }; + t1phy2: ethernet-phy@2{ + reg = <0x2>; + }; + t1phy3: ethernet-phy@3{ + reg = <0x3>; + }; + t1phy4: ethernet-phy@6{ + reg = <0x6>; + }; + t1phy5: ethernet-phy@7{ + reg = <0x7>; + }; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index c3c8fa572580..a0fdfef8802a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -11752,6 +11752,7 @@ M: UNGLinuxDriver@microchip.com L: netdev@vger.kernel.org S: Maintained F: Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml +F: Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml F: drivers/net/dsa/microchip/* F: include/linux/platform_data/microchip-ksz.h F: net/dsa/tag_ksz.c
Documentation in .yaml format and updates to the MAINTAINERS Also 'make dt_binding_check' is passed Signed-off-by: Prasanna Vengateshan <prasanna.vengateshan@microchip.com> --- .../bindings/net/dsa/microchip,lan937x.yaml | 142 ++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 143 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/dsa/microchip,lan937x.yaml