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