Florian Fainelli | aab5127 | 2014-02-13 16:08:50 -0800 | [diff] [blame] | 1 | * Broadcom BCM7xxx Ethernet Controller (GENET) |
| 2 | |
| 3 | Required properties: |
| 4 | - compatible: should contain one of "brcm,genet-v1", "brcm,genet-v2", |
| 5 | "brcm,genet-v3", "brcm,genet-v4". |
| 6 | - reg: address and length of the register set for the device |
| 7 | - interrupts: must be two cells, the first cell is the general purpose |
| 8 | interrupt line, while the second cell is the interrupt for the ring |
| 9 | RX and TX queues operating in ring mode |
| 10 | - phy-mode: String, operation mode of the PHY interface. Supported values are |
| 11 | "mii", "rgmii", "rgmii-txid", "rev-mii", "moca". Analogous to ePAPR |
| 12 | "phy-connection-type" values |
| 13 | - address-cells: should be 1 |
| 14 | - size-cells: should be 1 |
| 15 | |
| 16 | Optional properties: |
Florian Fainelli | d94b27c | 2014-02-14 15:21:42 -0800 | [diff] [blame] | 17 | - clocks: When provided, must be two phandles to the functional clocks nodes |
| 18 | of the GENET block. The first phandle is the main GENET clock used during |
| 19 | normal operation, while the second phandle is the Wake-on-LAN clock. |
| 20 | - clock-names: When provided, names of the functional clock phandles, first |
| 21 | name should be "enet" and second should be "enet-wol". |
Florian Fainelli | aab5127 | 2014-02-13 16:08:50 -0800 | [diff] [blame] | 22 | |
| 23 | - phy-handle: A phandle to a phy node defining the PHY address (as the reg |
| 24 | property, a single integer), used to describe configurations where a PHY |
| 25 | (internal or external) is used. |
| 26 | |
| 27 | - fixed-link: When the GENET interface is connected to a MoCA hardware block or |
| 28 | when operating in a RGMII to RGMII type of connection, or when the MDIO bus is |
| 29 | voluntarily disabled, this property should be used to describe the "fixed link". |
| 30 | See Documentation/devicetree/bindings/net/fsl-tsec-phy.txt for information on |
| 31 | the property specifics |
| 32 | |
| 33 | Required child nodes: |
| 34 | |
| 35 | - mdio bus node: this node should always be present regarless of the PHY |
| 36 | configuration of the GENET instance |
| 37 | |
| 38 | MDIO bus node required properties: |
| 39 | |
| 40 | - compatible: should contain one of "brcm,genet-mdio-v1", "brcm,genet-mdio-v2" |
| 41 | "brcm,genet-mdio-v3", "brcm,genet-mdio-v4", the version has to match the |
| 42 | parent node compatible property (e.g: brcm,genet-v4 pairs with |
| 43 | brcm,genet-mdio-v4) |
| 44 | - reg: address and length relative to the parent node base register address |
| 45 | - address-cells: address cell for MDIO bus addressing, should be 1 |
| 46 | - size-cells: size of the cells for MDIO bus addressing, should be 0 |
| 47 | |
| 48 | Ethernet PHY node properties: |
| 49 | |
| 50 | See Documentation/devicetree/bindings/net/phy.txt for the list of required and |
| 51 | optional properties. |
| 52 | |
| 53 | Internal Gigabit PHY example: |
| 54 | |
| 55 | ethernet@f0b60000 { |
| 56 | phy-mode = "internal"; |
| 57 | phy-handle = <&phy1>; |
| 58 | mac-address = [ 00 10 18 36 23 1a ]; |
| 59 | compatible = "brcm,genet-v4"; |
| 60 | #address-cells = <0x1>; |
| 61 | #size-cells = <0x1>; |
| 62 | reg = <0xf0b60000 0xfc4c>; |
| 63 | interrupts = <0x0 0x14 0x0>, <0x0 0x15 0x0>; |
| 64 | |
| 65 | mdio@e14 { |
| 66 | compatible = "brcm,genet-mdio-v4"; |
| 67 | #address-cells = <0x1>; |
| 68 | #size-cells = <0x0>; |
| 69 | reg = <0xe14 0x8>; |
| 70 | |
| 71 | phy1: ethernet-phy@1 { |
| 72 | max-speed = <1000>; |
| 73 | reg = <0x1>; |
| 74 | compatible = "brcm,28nm-gphy", "ethernet-phy-ieee802.3-c22"; |
| 75 | }; |
| 76 | }; |
| 77 | }; |
| 78 | |
| 79 | MoCA interface / MAC to MAC example: |
| 80 | |
| 81 | ethernet@f0b80000 { |
| 82 | phy-mode = "moca"; |
| 83 | fixed-link = <1 0 1000 0 0>; |
| 84 | mac-address = [ 00 10 18 36 24 1a ]; |
| 85 | compatible = "brcm,genet-v4"; |
| 86 | #address-cells = <0x1>; |
| 87 | #size-cells = <0x1>; |
| 88 | reg = <0xf0b80000 0xfc4c>; |
| 89 | interrupts = <0x0 0x16 0x0>, <0x0 0x17 0x0>; |
| 90 | |
| 91 | mdio@e14 { |
| 92 | compatible = "brcm,genet-mdio-v4"; |
| 93 | #address-cells = <0x1>; |
| 94 | #size-cells = <0x0>; |
| 95 | reg = <0xe14 0x8>; |
| 96 | }; |
| 97 | }; |
| 98 | |
| 99 | |
| 100 | External MDIO-connected Gigabit PHY/switch: |
| 101 | |
| 102 | ethernet@f0ba0000 { |
| 103 | phy-mode = "rgmii"; |
| 104 | phy-handle = <&phy0>; |
| 105 | mac-address = [ 00 10 18 36 26 1a ]; |
| 106 | compatible = "brcm,genet-v4"; |
| 107 | #address-cells = <0x1>; |
| 108 | #size-cells = <0x1>; |
| 109 | reg = <0xf0ba0000 0xfc4c>; |
| 110 | interrupts = <0x0 0x18 0x0>, <0x0 0x19 0x0>; |
| 111 | |
| 112 | mdio@0e14 { |
| 113 | compatible = "brcm,genet-mdio-v4"; |
| 114 | #address-cells = <0x1>; |
| 115 | #size-cells = <0x0>; |
| 116 | reg = <0xe14 0x8>; |
| 117 | |
| 118 | phy0: ethernet-phy@0 { |
| 119 | max-speed = <1000>; |
| 120 | reg = <0x0>; |
| 121 | compatible = "brcm,bcm53125", "ethernet-phy-ieee802.3-c22"; |
| 122 | }; |
| 123 | }; |
| 124 | }; |