|  | APM X-Gene SoC Ethernet nodes | 
|  |  | 
|  | Ethernet nodes are defined to describe on-chip ethernet interfaces in | 
|  | APM X-Gene SoC. | 
|  |  | 
|  | Required properties for all the ethernet interfaces: | 
|  | - compatible: Should state binding information from the following list, | 
|  | - "apm,xgene-enet":    RGMII based 1G interface | 
|  | - "apm,xgene1-sgenet": SGMII based 1G interface | 
|  | - "apm,xgene1-xgenet": XFI based 10G interface | 
|  | - reg: Address and length of the register set for the device. It contains the | 
|  | information of registers in the same order as described by reg-names | 
|  | - reg-names: Should contain the register set names | 
|  | - "enet_csr": Ethernet control and status register address space | 
|  | - "ring_csr": Descriptor ring control and status register address space | 
|  | - "ring_cmd": Descriptor ring command register address space | 
|  | - interrupts: Two interrupt specifiers can be specified. | 
|  | - First is the Rx interrupt.  This irq is mandatory. | 
|  | - Second is the Tx completion interrupt. | 
|  | This is supported only on SGMII based 1GbE and 10GbE interfaces. | 
|  | - port-id: Port number (0 or 1) | 
|  | - clocks: Reference to the clock entry. | 
|  | - local-mac-address: MAC address assigned to this device | 
|  | - phy-connection-type: Interface type between ethernet device and PHY device | 
|  |  | 
|  | Required properties for ethernet interfaces that have external PHY: | 
|  | - phy-handle: Reference to a PHY node connected to this device | 
|  |  | 
|  | - mdio: Device tree subnode with the following required properties: | 
|  | - compatible: Must be "apm,xgene-mdio". | 
|  | - #address-cells: Must be <1>. | 
|  | - #size-cells: Must be <0>. | 
|  |  | 
|  | For the phy on the mdio bus, there must be a node with the following fields: | 
|  | - compatible: PHY identifier.  Please refer ./phy.txt for the format. | 
|  | - reg: The ID number for the phy. | 
|  |  | 
|  | Optional properties: | 
|  | - status: Should be "ok" or "disabled" for enabled/disabled. Default is "ok". | 
|  |  | 
|  | Example: | 
|  | menetclk: menetclk { | 
|  | compatible = "apm,xgene-device-clock"; | 
|  | clock-output-names = "menetclk"; | 
|  | status = "ok"; | 
|  | }; | 
|  |  | 
|  | menet: ethernet@17020000 { | 
|  | compatible = "apm,xgene-enet"; | 
|  | status = "disabled"; | 
|  | reg = <0x0 0x17020000 0x0 0xd100>, | 
|  | <0x0 0X17030000 0x0 0X400>, | 
|  | <0x0 0X10000000 0x0 0X200>; | 
|  | reg-names = "enet_csr", "ring_csr", "ring_cmd"; | 
|  | interrupts = <0x0 0x3c 0x4>; | 
|  | port-id = <0>; | 
|  | clocks = <&menetclk 0>; | 
|  | local-mac-address = [00 01 73 00 00 01]; | 
|  | phy-connection-type = "rgmii"; | 
|  | phy-handle = <&menetphy>; | 
|  | mdio { | 
|  | compatible = "apm,xgene-mdio"; | 
|  | #address-cells = <1>; | 
|  | #size-cells = <0>; | 
|  | menetphy: menetphy@3 { | 
|  | compatible = "ethernet-phy-id001c.c915"; | 
|  | reg = <0x3>; | 
|  | }; | 
|  |  | 
|  | }; | 
|  | }; | 
|  |  | 
|  | /* Board-specific peripheral configurations */ | 
|  | &menet { | 
|  | status = "ok"; | 
|  | }; |