Message ID | 1684531184-14009-3-git-send-email-justin.chen@broadcom.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | Brcm ASP 2.0 Ethernet Controller | expand |
On Fri, May 19, 2023 at 02:19:40PM -0700, Justin Chen wrote: > From: Florian Fainelli <florian.fainelli@broadcom.com> > > Add a binding document for the Broadcom ASP 2.0 Ethernet controller. > > Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com> > Signed-off-by: Justin Chen <justin.chen@broadcom.com> > --- Same deal here, usual mailer is refusing to reply cos of: Problem signature from: 1.2.840.113549.1.9.1=#6A757374696E2E6368656E4062726F6164636F6D2E636F6D,CN=Justin Chen,O=Broadcom Inc.,L=Bangalore,ST=Karnataka,C=IN aka: <justin.chen@broadcom.com> created: Fri 19 May 2023 10:19:57 PM IST expires: Wed 10 Sep 2025 01:39:50 PM IST > v3 > - Minor formatting issues > - Change channel prop to brcm,channel for vendor specific format > - Removed redundant v2.0 from compat string > - Fix ranges field > > v2 > - Minor formatting issues > > .../devicetree/bindings/net/brcm,asp-v2.0.yaml | 145 +++++++++++++++++++++ > 1 file changed, 145 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > > diff --git a/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml b/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > new file mode 100644 > index 000000000000..a9fed957e1d6 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > @@ -0,0 +1,145 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/brcm,asp-v2.0.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Broadcom ASP 2.0 Ethernet controller > + > +maintainers: > + - Justin Chen <justin.chen@broadcom.com> > + - Florian Fainelli <florian.fainelli@broadcom.com> > + > +description: Broadcom Ethernet controller first introduced with 72165 > + > +properties: > + '#address-cells': > + const: 1 > + '#size-cells': > + const: 1 > + > + compatible: > + enum: > + - brcm,asp-v2.0 > + - brcm,bcm72165-asp > + - brcm,asp-v2.1 > + - brcm,bcm74165-asp One of Rob's questions on V(N-1) that seems to have been ignored/only partly implemented: > You have 1 SoC per version, so what's the point of versions? If you have > more coming, then fine, but I'd expect it to be something like this: > > compatible = "brcm,bcm74165-asp-v2.1", "brcm,asp-v2.1"; You did drop the -v2.1 that he requested from the SoC compatible, but I amn't sure why the above was not implemented (at least there's no explanation in the previous thread's version, nor in the changelog here...) Cheers, Conor
On Mon, May 22, 2023 at 11:27 AM Conor Dooley <mail@conchuod.ie> wrote: > > On Fri, May 19, 2023 at 02:19:40PM -0700, Justin Chen wrote: > > From: Florian Fainelli <florian.fainelli@broadcom.com> > > > > Add a binding document for the Broadcom ASP 2.0 Ethernet controller. > > > > Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com> > > Signed-off-by: Justin Chen <justin.chen@broadcom.com> > > --- > > Same deal here, usual mailer is refusing to reply cos of: > Problem signature from: > 1.2.840.113549.1.9.1=#6A757374696E2E6368656E4062726F6164636F6D2E636F6D,CN=Justin > Chen,O=Broadcom Inc.,L=Bangalore,ST=Karnataka,C=IN > aka: <justin.chen@broadcom.com> > created: Fri 19 May 2023 10:19:57 PM IST > expires: Wed 10 Sep 2025 01:39:50 PM IST > > > v3 > > - Minor formatting issues > > - Change channel prop to brcm,channel for vendor specific format > > - Removed redundant v2.0 from compat string > > - Fix ranges field > > > > v2 > > - Minor formatting issues > > > > .../devicetree/bindings/net/brcm,asp-v2.0.yaml | 145 > +++++++++++++++++++++ > > 1 file changed, 145 insertions(+) > > create mode 100644 > Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > > > > diff --git a/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > b/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > > new file mode 100644 > > index 000000000000..a9fed957e1d6 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml > > @@ -0,0 +1,145 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/net/brcm,asp-v2.0.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Broadcom ASP 2.0 Ethernet controller > > + > > +maintainers: > > + - Justin Chen <justin.chen@broadcom.com> > > + - Florian Fainelli <florian.fainelli@broadcom.com> > > + > > +description: Broadcom Ethernet controller first introduced with 72165 > > + > > +properties: > > + '#address-cells': > > + const: 1 > > + '#size-cells': > > + const: 1 > > + > > + compatible: > > + enum: > > + - brcm,asp-v2.0 > > + - brcm,bcm72165-asp > > + - brcm,asp-v2.1 > > + - brcm,bcm74165-asp > > One of Rob's questions on V(N-1) that seems to have been ignored/only > partly implemented: > > You have 1 SoC per version, so what's the point of versions? If you have > > more coming, then fine, but I'd expect it to be something like this: > > > > compatible = "brcm,bcm74165-asp-v2.1", "brcm,asp-v2.1"; > > You did drop the -v2.1 that he requested from the SoC compatible, but I > amn't sure why the above was not implemented (at least there's no > explanation in the previous thread's version, nor in the changelog > here...) Will fix it. Didn't realize he was talking about the compat string in the example below. Thanks, Justin > > Cheers, > Conor
diff --git a/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml b/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml new file mode 100644 index 000000000000..a9fed957e1d6 --- /dev/null +++ b/Documentation/devicetree/bindings/net/brcm,asp-v2.0.yaml @@ -0,0 +1,145 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/brcm,asp-v2.0.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Broadcom ASP 2.0 Ethernet controller + +maintainers: + - Justin Chen <justin.chen@broadcom.com> + - Florian Fainelli <florian.fainelli@broadcom.com> + +description: Broadcom Ethernet controller first introduced with 72165 + +properties: + '#address-cells': + const: 1 + '#size-cells': + const: 1 + + compatible: + enum: + - brcm,asp-v2.0 + - brcm,bcm72165-asp + - brcm,asp-v2.1 + - brcm,bcm74165-asp + + reg: + maxItems: 1 + + ranges: true + + interrupts: + minItems: 1 + items: + - description: RX/TX interrupt + - description: Port 0 Wake-on-LAN + - description: Port 1 Wake-on-LAN + + clocks: + maxItems: 1 + + ethernet-ports: + type: object + properties: + '#address-cells': + const: 1 + '#size-cells': + const: 0 + + patternProperties: + "^port@[0-9]+$": + type: object + + $ref: ethernet-controller.yaml# + + properties: + reg: + maxItems: 1 + description: Port number + + brcm,channel: + $ref: /schemas/types.yaml#/definitions/uint32 + description: ASP channel number + + required: + - reg + - brcm,channel + + additionalProperties: false + +patternProperties: + "^mdio@[0-9a-f]+$": + type: object + $ref: brcm,unimac-mdio.yaml + + description: + ASP internal UniMAC MDIO bus + +required: + - compatible + - reg + - interrupts + - clocks + - ranges + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + + ethernet@9c00000 { + compatible = "brcm,asp-v2.0"; + reg = <0x9c00000 0x1fff14>; + interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; + ranges = <0x0 0x9c00000 0x1fff14>; + clocks = <&scmi 14>; + #address-cells = <1>; + #size-cells = <1>; + + mdio@c614 { + compatible = "brcm,asp-v2.0-mdio"; + reg = <0xc614 0x8>; + reg-names = "mdio"; + #address-cells = <1>; + #size-cells = <0>; + + phy0: ethernet-phy@1 { + reg = <1>; + }; + }; + + mdio@ce14 { + compatible = "brcm,asp-v2.0-mdio"; + reg = <0xce14 0x8>; + reg-names = "mdio"; + #address-cells = <1>; + #size-cells = <0>; + + phy1: ethernet-phy@1 { + reg = <1>; + }; + }; + + ethernet-ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + brcm,channel = <8>; + phy-mode = "rgmii"; + phy-handle = <&phy0>; + }; + + port@1 { + reg = <1>; + brcm,channel = <9>; + phy-mode = "rgmii"; + phy-handle = <&phy1>; + }; + }; + };