~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/mediatek-dwmac.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/net/mediatek-dwmac.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: MediaTek DWMAC glue layer controller
  8 
  9 maintainers:
 10   - Biao Huang <biao.huang@mediatek.com>
 11 
 12 description:
 13   This file documents platform glue layer for stmmac.
 14 
 15 # We need a select here so we don't match all nodes with 'snps,dwmac'
 16 select:
 17   properties:
 18     compatible:
 19       contains:
 20         enum:
 21           - mediatek,mt2712-gmac
 22           - mediatek,mt8188-gmac
 23           - mediatek,mt8195-gmac
 24   required:
 25     - compatible
 26 
 27 allOf:
 28   - $ref: snps,dwmac.yaml#
 29 
 30 properties:
 31   compatible:
 32     oneOf:
 33       - items:
 34           - enum:
 35               - mediatek,mt2712-gmac
 36           - const: snps,dwmac-4.20a
 37       - items:
 38           - enum:
 39               - mediatek,mt8195-gmac
 40           - const: snps,dwmac-5.10a
 41       - items:
 42           - enum:
 43               - mediatek,mt8188-gmac
 44           - const: mediatek,mt8195-gmac
 45           - const: snps,dwmac-5.10a
 46 
 47   clocks:
 48     minItems: 5
 49     items:
 50       - description: AXI clock
 51       - description: APB clock
 52       - description: MAC Main clock
 53       - description: PTP clock
 54       - description: RMII reference clock provided by MAC
 55       - description: MAC clock gate
 56 
 57   clock-names:
 58     minItems: 5
 59     items:
 60       - const: axi
 61       - const: apb
 62       - const: mac_main
 63       - const: ptp_ref
 64       - const: rmii_internal
 65       - const: mac_cg
 66 
 67   power-domains:
 68     maxItems: 1
 69 
 70   mediatek,pericfg:
 71     $ref: /schemas/types.yaml#/definitions/phandle
 72     description:
 73       The phandle to the syscon node that control ethernet
 74       interface and timing delay.
 75 
 76   mediatek,tx-delay-ps:
 77     description:
 78       The internal TX clock delay (provided by this driver) in nanoseconds.
 79       For MT2712 RGMII interface, Allowed value need to be a multiple of 170,
 80       or will round down. Range 0~31*170.
 81       For MT2712 RMII/MII interface, Allowed value need to be a multiple of 550,
 82       or will round down. Range 0~31*550.
 83       For MT8188/MT8195 RGMII/RMII/MII interface, Allowed value need to be a multiple of 290,
 84       or will round down. Range 0~31*290.
 85 
 86   mediatek,rx-delay-ps:
 87     description:
 88       The internal RX clock delay (provided by this driver) in nanoseconds.
 89       For MT2712 RGMII interface, Allowed value need to be a multiple of 170,
 90       or will round down. Range 0~31*170.
 91       For MT2712 RMII/MII interface, Allowed value need to be a multiple of 550,
 92       or will round down. Range 0~31*550.
 93       For MT8188/MT8195 RGMII/RMII/MII interface, Allowed value need to be a multiple
 94       of 290, or will round down. Range 0~31*290.
 95 
 96   mediatek,rmii-rxc:
 97     type: boolean
 98     description:
 99       If present, indicates that the RMII reference clock, which is from external
100       PHYs, is connected to RXC pin. Otherwise, is connected to TXC pin.
101 
102   mediatek,rmii-clk-from-mac:
103     type: boolean
104     description:
105       If present, indicates that MAC provides the RMII reference clock, which
106       outputs to TXC pin only.
107 
108   mediatek,txc-inverse:
109     type: boolean
110     description:
111       If present, indicates that
112       1. tx clock will be inversed in MII/RGMII case,
113       2. tx clock inside MAC will be inversed relative to reference clock
114          which is from external PHYs in RMII case, and it rarely happen.
115       3. the reference clock, which outputs to TXC pin will be inversed in RMII case
116          when the reference clock is from MAC.
117 
118   mediatek,rxc-inverse:
119     type: boolean
120     description:
121       If present, indicates that
122       1. rx clock will be inversed in MII/RGMII case.
123       2. reference clock will be inversed when arrived at MAC in RMII case, when
124          the reference clock is from external PHYs.
125       3. the inside clock, which be sent to MAC, will be inversed in RMII case when
126          the reference clock is from MAC.
127 
128   mediatek,mac-wol:
129     type: boolean
130     description:
131       If present, indicates that MAC supports WOL(Wake-On-LAN), and MAC WOL will be enabled.
132       Otherwise, PHY WOL is preferred.
133 
134 required:
135   - compatible
136   - reg
137   - interrupts
138   - interrupt-names
139   - clocks
140   - clock-names
141   - phy-mode
142   - mediatek,pericfg
143 
144 unevaluatedProperties: false
145 
146 examples:
147   - |
148     #include <dt-bindings/clock/mt2712-clk.h>
149     #include <dt-bindings/gpio/gpio.h>
150     #include <dt-bindings/interrupt-controller/arm-gic.h>
151     #include <dt-bindings/interrupt-controller/irq.h>
152     #include <dt-bindings/power/mt2712-power.h>
153 
154     eth: ethernet@1101c000 {
155         compatible = "mediatek,mt2712-gmac", "snps,dwmac-4.20a";
156         reg = <0x1101c000 0x1300>;
157         interrupts = <GIC_SPI 237 IRQ_TYPE_LEVEL_LOW>;
158         interrupt-names = "macirq";
159         phy-mode = "rgmii-rxid";
160         mac-address = [00 55 7b b5 7d f7];
161         clock-names = "axi",
162                       "apb",
163                       "mac_main",
164                       "ptp_ref",
165                       "rmii_internal";
166         clocks = <&pericfg CLK_PERI_GMAC>,
167                  <&pericfg CLK_PERI_GMAC_PCLK>,
168                  <&topckgen CLK_TOP_ETHER_125M_SEL>,
169                  <&topckgen CLK_TOP_ETHER_50M_SEL>,
170                  <&topckgen CLK_TOP_ETHER_50M_RMII_SEL>;
171         assigned-clocks = <&topckgen CLK_TOP_ETHER_125M_SEL>,
172                           <&topckgen CLK_TOP_ETHER_50M_SEL>,
173                           <&topckgen CLK_TOP_ETHER_50M_RMII_SEL>;
174         assigned-clock-parents = <&topckgen CLK_TOP_ETHERPLL_125M>,
175                                  <&topckgen CLK_TOP_APLL1_D3>,
176                                  <&topckgen CLK_TOP_ETHERPLL_50M>;
177         power-domains = <&scpsys MT2712_POWER_DOMAIN_AUDIO>;
178         mediatek,pericfg = <&pericfg>;
179         mediatek,tx-delay-ps = <1530>;
180         snps,txpbl = <1>;
181         snps,rxpbl = <1>;
182         snps,reset-gpio = <&pio 87 GPIO_ACTIVE_LOW>;
183         snps,reset-delays-us = <0 10000 10000>;
184     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php