On Fri, Dec 16, 2022 at 03:06:27PM +0800, Yanhong Wang wrote: > Add documentation to describe StarFive dwmac driver(GMAC). > > Signed-off-by: Yanhong Wang <yanhong.wang@xxxxxxxxxxxxxxxx> > --- > .../devicetree/bindings/net/snps,dwmac.yaml | 1 + > .../bindings/net/starfive,jh71x0-dwmac.yaml | 103 ++++++++++++++++++ > MAINTAINERS | 5 + > 3 files changed, 109 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/starfive,jh71x0-dwmac.yaml > > diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml > index 7870228b4cd3..cdb045d1c618 100644 > --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml > +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml > @@ -91,6 +91,7 @@ properties: > - snps,dwmac-5.20 > - snps,dwxgmac > - snps,dwxgmac-2.10 > + - starfive,jh7110-dwmac > > reg: > minItems: 1 > diff --git a/Documentation/devicetree/bindings/net/starfive,jh71x0-dwmac.yaml b/Documentation/devicetree/bindings/net/starfive,jh71x0-dwmac.yaml > new file mode 100644 > index 000000000000..5cb1272fe959 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/starfive,jh71x0-dwmac.yaml > @@ -0,0 +1,103 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +# Copyright (C) 2022 StarFive Technology Co., Ltd. > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/starfive,jh71x0-dwmac.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: StarFive JH71x0 DWMAC glue layer > + > +maintainers: > + - Yanhong Wang <yanhong.wang@xxxxxxxxxxxxxxxx> > + > +select: > + properties: > + compatible: > + contains: > + enum: > + - starfive,jh7110-dwmac > + required: > + - compatible > + > +allOf: > + - $ref: snps,dwmac.yaml# > + > +properties: > + compatible: > + items: > + - enum: > + - starfive,jh7110-dwmac > + - const: snps,dwmac-5.20 > + > + clocks: > + items: > + - description: GMAC main clock > + - description: GMAC AHB clock > + - description: PTP clock > + - description: TX clock > + - description: GTXC clock > + - description: GTX clock > + > + clock-names: > + items: > + - const: stmmaceth > + - const: pclk > + - const: ptp_ref > + - const: tx > + - const: gtxc > + - const: gtx > + > +required: > + - compatible > + - clocks > + - clock-names > + - resets > + - reset-names > + > +unevaluatedProperties: false > + > +examples: > + - | > + stmmac_axi_setup: stmmac-axi-config { The schema says put this as a child node of ethernet@16030000. > + snps,lpi_en; > + snps,wr_osr_lmt = <4>; > + snps,rd_osr_lmt = <4>; > + snps,blen = <256 128 64 32 0 0 0>; > + }; > + > + gmac0: ethernet@16030000 { Drop unused labels. > + compatible = "starfive,jh7110-dwmac", "snps,dwmac-5.20"; > + reg = <0x16030000 0x10000>; > + clocks = <&clk 3>, <&clk 2>, <&clk 109>, > + <&clk 5>, <&clk 111>, <&clk 108>; > + clock-names = "stmmaceth", "pclk", "ptp_ref", > + "tx", "gtxc", "gtx"; > + resets = <&rst 1>, <&rst 2>; > + reset-names = "stmmaceth", "ahb"; > + interrupts = <7>, <6>, <5>; > + interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; > + phy-mode = "rgmii-id"; > + snps,multicast-filter-bins = <64>; > + snps,perfect-filter-entries = <8>; > + rx-fifo-depth = <2048>; > + tx-fifo-depth = <2048>; > + snps,fixed-burst; > + snps,no-pbl-x8; > + snps,tso; > + snps,force_thresh_dma_mode; > + snps,axi-config = <&stmmac_axi_setup>; > + snps,en-tx-lpi-clockgating; > + snps,txpbl = <16>; > + snps,rxpbl = <16>; > + phy-handle = <&phy0>; > + > + mdio { > + #address-cells = <1>; > + #size-cells = <0>; > + compatible = "snps,dwmac-mdio"; > + > + phy0: ethernet-phy@0 { > + reg = <0>; > + }; > + }; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index a70c1d0f303e..166b0009f63c 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -19606,6 +19606,11 @@ F: Documentation/devicetree/bindings/clock/starfive* > F: drivers/clk/starfive/ > F: include/dt-bindings/clock/starfive* > > +STARFIVE DWMAC GLUE LAYER > +M: Yanhong Wang <yanhong.wang@xxxxxxxxxxxxxxxx> > +S: Maintained > +F: Documentation/devicetree/bindings/net/starfive,jh71x0-dwmac.yaml > + > STARFIVE PINCTRL DRIVER > M: Emil Renner Berthing <kernel@xxxxxxxx> > M: Jianlong Huang <jianlong.huang@xxxxxxxxxxxxxxxx> > -- > 2.17.1 > >