1c66ec88fSEmmanuel Vadot* Cadence MACB/GEM Ethernet controller 2c66ec88fSEmmanuel Vadot 3c66ec88fSEmmanuel VadotRequired properties: 4c66ec88fSEmmanuel Vadot- compatible: Should be "cdns,[<chip>-]{macb|gem}" 5c66ec88fSEmmanuel Vadot Use "cdns,at91rm9200-emac" Atmel at91rm9200 SoC. 6c66ec88fSEmmanuel Vadot Use "cdns,at91sam9260-macb" for Atmel at91sam9 SoCs. 7c66ec88fSEmmanuel Vadot Use "cdns,sam9x60-macb" for Microchip sam9x60 SoC. 8c66ec88fSEmmanuel Vadot Use "cdns,np4-macb" for NP4 SoC devices. 9c66ec88fSEmmanuel Vadot Use "cdns,at32ap7000-macb" for other 10/100 usage or use the generic form: "cdns,macb". 10c66ec88fSEmmanuel Vadot Use "atmel,sama5d2-gem" for the GEM IP (10/100) available on Atmel sama5d2 SoCs. 11354d7675SEmmanuel Vadot Use "atmel,sama5d29-gem" for GEM XL IP (10/100) available on Atmel sama5d29 SoCs. 12c66ec88fSEmmanuel Vadot Use "atmel,sama5d3-macb" for the 10/100Mbit IP available on Atmel sama5d3 SoCs. 13c66ec88fSEmmanuel Vadot Use "atmel,sama5d3-gem" for the Gigabit IP available on Atmel sama5d3 SoCs. 14c66ec88fSEmmanuel Vadot Use "atmel,sama5d4-gem" for the GEM IP (10/100) available on Atmel sama5d4 SoCs. 15c66ec88fSEmmanuel Vadot Use "cdns,zynq-gem" Xilinx Zynq-7xxx SoC. 16c66ec88fSEmmanuel Vadot Use "cdns,zynqmp-gem" for Zynq Ultrascale+ MPSoC. 17c66ec88fSEmmanuel Vadot Use "sifive,fu540-c000-gem" for SiFive FU540-C000 SoC. 185def4c47SEmmanuel Vadot Use "microchip,sama7g5-emac" for Microchip SAMA7G5 ethernet interface. 195def4c47SEmmanuel Vadot Use "microchip,sama7g5-gem" for Microchip SAMA7G5 gigabit ethernet interface. 20c66ec88fSEmmanuel Vadot Or the generic form: "cdns,emac". 21c66ec88fSEmmanuel Vadot- reg: Address and length of the register set for the device 22c66ec88fSEmmanuel Vadot For "sifive,fu540-c000-gem", second range is required to specify the 23c66ec88fSEmmanuel Vadot address and length of the registers for GEMGXL Management block. 24c66ec88fSEmmanuel Vadot- interrupts: Should contain macb interrupt 25c66ec88fSEmmanuel Vadot- phy-mode: See ethernet.txt file in the same directory. 26c66ec88fSEmmanuel Vadot- clock-names: Tuple listing input clock names. 27c66ec88fSEmmanuel Vadot Required elements: 'pclk', 'hclk' 28c66ec88fSEmmanuel Vadot Optional elements: 'tx_clk' 29c66ec88fSEmmanuel Vadot Optional elements: 'rx_clk' applies to cdns,zynqmp-gem 30c66ec88fSEmmanuel Vadot Optional elements: 'tsu_clk' 31c66ec88fSEmmanuel Vadot- clocks: Phandles to input clocks. 32c66ec88fSEmmanuel Vadot 33*8cc087a1SEmmanuel VadotOptional properties: 34*8cc087a1SEmmanuel Vadot- mdio: node containing PHY children. If this node is not present, then PHYs 35*8cc087a1SEmmanuel Vadot will be direct children. 36*8cc087a1SEmmanuel Vadot 37c66ec88fSEmmanuel VadotThe MAC address will be determined using the optional properties 38c66ec88fSEmmanuel Vadotdefined in ethernet.txt. 39c66ec88fSEmmanuel Vadot 40c66ec88fSEmmanuel VadotOptional properties for PHY child node: 41c66ec88fSEmmanuel Vadot- reset-gpios : Should specify the gpio for phy reset 42c66ec88fSEmmanuel Vadot- magic-packet : If present, indicates that the hardware supports waking 43c66ec88fSEmmanuel Vadot up via magic packet. 44c66ec88fSEmmanuel Vadot- phy-handle : see ethernet.txt file in the same directory 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel VadotExamples: 47c66ec88fSEmmanuel Vadot 48c66ec88fSEmmanuel Vadot macb0: ethernet@fffc4000 { 49c66ec88fSEmmanuel Vadot compatible = "cdns,at32ap7000-macb"; 50c66ec88fSEmmanuel Vadot reg = <0xfffc4000 0x4000>; 51c66ec88fSEmmanuel Vadot interrupts = <21>; 52c66ec88fSEmmanuel Vadot phy-mode = "rmii"; 53c66ec88fSEmmanuel Vadot local-mac-address = [3a 0e 03 04 05 06]; 54c66ec88fSEmmanuel Vadot clock-names = "pclk", "hclk", "tx_clk"; 55c66ec88fSEmmanuel Vadot clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>; 56c66ec88fSEmmanuel Vadot ethernet-phy@1 { 57c66ec88fSEmmanuel Vadot reg = <0x1>; 58c66ec88fSEmmanuel Vadot reset-gpios = <&pioE 6 1>; 59c66ec88fSEmmanuel Vadot }; 60c66ec88fSEmmanuel Vadot }; 61