1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/net/cdns,macb.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Cadence MACB/GEM Ethernet controller
10 - Nicolas Ferre <nicolas.ferre@microchip.com>
11 - Claudiu Beznea <claudiu.beznea@microchip.com>
18 - cdns,at91rm9200-emac # Atmel at91rm9200 SoC
19 - const: cdns,emac # Generic
23 - cdns,zynq-gem # Xilinx Zynq-7xxx SoC
24 - cdns,zynqmp-gem # Xilinx Zynq Ultrascale+ MPSoC
25 - const: cdns,gem # Generic
29 - cdns,at91sam9260-macb # Atmel at91sam9 SoCs
30 - cdns,sam9x60-macb # Microchip sam9x60 SoC
31 - const: cdns,macb # Generic
35 - atmel,sama5d3-macb # 10/100Mbit IP on Atmel sama5d3 SoCs
37 - cdns,at91sam9260-macb # Atmel at91sam9 SoCs.
38 - const: cdns,macb # Generic
41 - atmel,sama5d29-gem # GEM XL IP (10/100) on Atmel sama5d29 SoCs
42 - atmel,sama5d2-gem # GEM IP (10/100) on Atmel sama5d2 SoCs
43 - atmel,sama5d3-gem # Gigabit IP on Atmel sama5d3 SoCs
44 - atmel,sama5d4-gem # GEM IP (10/100) on Atmel sama5d4 SoCs
45 - cdns,at32ap7000-macb # Other 10/100 usage or use the generic form
46 - cdns,np4-macb # NP4 SoC devices
47 - microchip,sama7g5-emac # Microchip SAMA7G5 ethernet interface
48 - microchip,sama7g5-gem # Microchip SAMA7G5 gigabit ethernet interface
49 - sifive,fu540-c000-gem # SiFive FU540-C000 SoC
57 - description: Basic register set
58 - description: GEMGXL Management block registers on SiFive FU540-C000 SoC
63 description: One interrupt per available hardware queue
72 - enum: [ ether_clk, hclk, pclk ]
73 - enum: [ hclk, pclk ]
75 - enum: [ rx_clk, tsu_clk ]
78 local-mac-address: true
90 Recommended with ZynqMP, specify reset control for this
91 controller instance with zynqmp-reset driver.
113 Node containing PHY children. If this node is not present, then PHYs will
117 "^ethernet-phy@[0-9a-f]$":
119 $ref: ethernet-phy.yaml#
127 Indicates that the hardware supports waking up via magic packet.
129 unevaluatedProperties: false
140 - $ref: ethernet-controller.yaml#
147 const: sifive,fu540-c000-gem
153 unevaluatedProperties: false
157 macb0: ethernet@fffc4000 {
158 compatible = "cdns,at32ap7000-macb";
159 reg = <0xfffc4000 0x4000>;
162 local-mac-address = [3a 0e 03 04 05 06];
163 clock-names = "pclk", "hclk", "tx_clk";
164 clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>;
165 #address-cells = <1>;
170 reset-gpios = <&pioE 6 1>;
175 #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
176 #include <dt-bindings/power/xlnx-zynqmp-power.h>
177 #include <dt-bindings/reset/xlnx-zynqmp-resets.h>
178 #include <dt-bindings/phy/phy.h>
181 #address-cells = <2>;
183 gem1: ethernet@ff0c0000 {
184 compatible = "cdns,zynqmp-gem", "cdns,gem";
185 interrupt-parent = <&gic>;
186 interrupts = <0 59 4>, <0 59 4>;
187 reg = <0x0 0xff0c0000 0x0 0x1000>;
188 clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_REF>,
189 <&zynqmp_clk GEM1_TX>, <&zynqmp_clk GEM1_RX>,
190 <&zynqmp_clk GEM_TSU>;
191 clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
192 #address-cells = <1>;
194 iommus = <&smmu 0x875>;
195 power-domains = <&zynqmp_firmware PD_ETH_1>;
196 resets = <&zynqmp_reset ZYNQMP_RESET_GEM1>;
197 reset-names = "gem1_rst";
200 phys = <&psgtr 1 PHY_TYPE_SGMII 1 1>;