~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/ibm,emac.txt

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1     4xx/Axon EMAC ethernet nodes
  2 
  3     The EMAC ethernet controller in IBM and AMCC 4xx chips, and also
  4     the Axon bridge.  To operate this needs to interact with a this
  5     special McMAL DMA controller, and sometimes an RGMII or ZMII
  6     interface.  In addition to the nodes and properties described
  7     below, the node for the OPB bus on which the EMAC sits must have a
  8     correct clock-frequency property.
  9 
 10       i) The EMAC node itself
 11 
 12     Required properties:
 13     - device_type       : "network"
 14 
 15     - compatible        : compatible list, contains 2 entries, first is
 16                           "ibm,emac-CHIP" where CHIP is the host ASIC (440gx,
 17                           405gp, Axon) and second is either "ibm,emac" or
 18                           "ibm,emac4".  For Axon, thus, we have: "ibm,emac-axon",
 19                           "ibm,emac4"
 20     - interrupts        : <interrupt mapping for EMAC IRQ and WOL IRQ>
 21     - reg               : <registers mapping>
 22     - local-mac-address : 6 bytes, MAC address
 23     - mal-device        : phandle of the associated McMAL node
 24     - mal-tx-channel    : 1 cell, index of the tx channel on McMAL associated
 25                           with this EMAC
 26     - mal-rx-channel    : 1 cell, index of the rx channel on McMAL associated
 27                           with this EMAC
 28     - cell-index        : 1 cell, hardware index of the EMAC cell on a given
 29                           ASIC (typically 0x0 and 0x1 for EMAC0 and EMAC1 on
 30                           each Axon chip)
 31     - max-frame-size    : 1 cell, maximum frame size supported in bytes
 32     - rx-fifo-size      : 1 cell, Rx fifo size in bytes for 10 and 100 Mb/sec
 33                           operations.
 34                           For Axon, 2048
 35     - tx-fifo-size      : 1 cell, Tx fifo size in bytes for 10 and 100 Mb/sec
 36                           operations.
 37                           For Axon, 2048.
 38     - fifo-entry-size   : 1 cell, size of a fifo entry (used to calculate
 39                           thresholds).
 40                           For Axon, 0x00000010
 41     - mal-burst-size    : 1 cell, MAL burst size (used to calculate thresholds)
 42                           in bytes.
 43                           For Axon, 0x00000100 (I think ...)
 44     - phy-mode          : string, mode of operations of the PHY interface.
 45                           Supported values are: "mii", "rmii", "smii", "rgmii",
 46                           "tbi", "gmii", rtbi", "sgmii".
 47                           For Axon on CAB, it is "rgmii"
 48     - mdio-device       : 1 cell, required iff using shared MDIO registers
 49                           (440EP).  phandle of the EMAC to use to drive the
 50                           MDIO lines for the PHY used by this EMAC.
 51     - zmii-device       : 1 cell, required iff connected to a ZMII.  phandle of
 52                           the ZMII device node
 53     - zmii-channel      : 1 cell, required iff connected to a ZMII.  Which ZMII
 54                           channel or 0xffffffff if ZMII is only used for MDIO.
 55     - rgmii-device      : 1 cell, required iff connected to an RGMII. phandle
 56                           of the RGMII device node.
 57                           For Axon: phandle of plb5/plb4/opb/rgmii
 58     - rgmii-channel     : 1 cell, required iff connected to an RGMII.  Which
 59                           RGMII channel is used by this EMAC.
 60                           Fox Axon: present, whatever value is appropriate for each
 61                           EMAC, that is the content of the current (bogus) "phy-port"
 62                           property.
 63 
 64     Optional properties:
 65     - phy-address       : 1 cell, optional, MDIO address of the PHY. If absent,
 66                           a search is performed.
 67     - phy-map           : 1 cell, optional, bitmap of addresses to probe the PHY
 68                           for, used if phy-address is absent. bit 0x00000001 is
 69                           MDIO address 0.
 70                           For Axon it can be absent, though my current driver
 71                           doesn't handle phy-address yet so for now, keep
 72                           0x00ffffff in it.
 73     - phy-handle        : Used to describe configurations where a external PHY
 74                           is used. Please refer to:
 75                           Documentation/devicetree/bindings/net/ethernet.txt
 76     - rx-fifo-size-gige : 1 cell, Rx fifo size in bytes for 1000 Mb/sec
 77                           operations (if absent the value is the same as
 78                           rx-fifo-size).  For Axon, either absent or 2048.
 79     - tx-fifo-size-gige : 1 cell, Tx fifo size in bytes for 1000 Mb/sec
 80                           operations (if absent the value is the same as
 81                           tx-fifo-size). For Axon, either absent or 2048.
 82     - tah-device        : 1 cell, optional. If connected to a TAH engine for
 83                           offload, phandle of the TAH device node.
 84     - tah-channel       : 1 cell, optional. If appropriate, channel used on the
 85                           TAH engine.
 86     - fixed-link        : Fixed-link subnode describing a link to a non-MDIO
 87                           managed entity. See
 88                           Documentation/devicetree/bindings/net/fixed-link.txt
 89                           for details.
 90     - mdio subnode      : When the EMAC has a phy connected to its local
 91                           mdio, which us supported by the kernel's network
 92                           PHY library in drivers/net/phy, there must be device
 93                           tree subnode with the following required properties:
 94                                 - #address-cells: Must be <1>.
 95                                 - #size-cells: Must be <0>.
 96 
 97                           For PHY definitions: Please refer to
 98                           Documentation/devicetree/bindings/net/phy.txt and
 99                           Documentation/devicetree/bindings/net/ethernet.txt
100 
101     Examples:
102 
103         EMAC0: ethernet@40000800 {
104                 device_type = "network";
105                 compatible = "ibm,emac-440gp", "ibm,emac";
106                 interrupt-parent = <&UIC1>;
107                 interrupts = <1c 4 1d 4>;
108                 reg = <40000800 70>;
109                 local-mac-address = [00 04 AC E3 1B 1E];
110                 mal-device = <&MAL0>;
111                 mal-tx-channel = <0 1>;
112                 mal-rx-channel = <0>;
113                 cell-index = <0>;
114                 max-frame-size = <5dc>;
115                 rx-fifo-size = <1000>;
116                 tx-fifo-size = <800>;
117                 phy-mode = "rmii";
118                 phy-map = <00000001>;
119                 zmii-device = <&ZMII0>;
120                 zmii-channel = <0>;
121         };
122 
123         EMAC1: ethernet@ef600c00 {
124                 device_type = "network";
125                 compatible = "ibm,emac-apm821xx", "ibm,emac4sync";
126                 interrupt-parent = <&EMAC1>;
127                 interrupts = <0 1>;
128                 #interrupt-cells = <1>;
129                 #address-cells = <0>;
130                 #size-cells = <0>;
131                 interrupt-map = <0 &UIC2 0x10 IRQ_TYPE_LEVEL_HIGH /* Status */
132                                  1 &UIC2 0x14 IRQ_TYPE_LEVEL_HIGH /* Wake */>;
133                 reg = <0xef600c00 0x000000c4>;
134                 local-mac-address = [000000000000]; /* Filled in by U-Boot */
135                 mal-device = <&MAL0>;
136                 mal-tx-channel = <0>;
137                 mal-rx-channel = <0>;
138                 cell-index = <0>;
139                 max-frame-size = <9000>;
140                 rx-fifo-size = <16384>;
141                 tx-fifo-size = <2048>;
142                 fifo-entry-size = <10>;
143                 phy-mode = "rgmii";
144                 phy-handle = <&phy0>;
145                 phy-map = <0x00000000>;
146                 rgmii-device = <&RGMII0>;
147                 rgmii-channel = <0>;
148                 tah-device = <&TAH0>;
149                 tah-channel = <0>;
150                 has-inverted-stacr-oc;
151                 has-new-stacr-staopc;
152 
153                 mdio {
154                         #address-cells = <1>;
155                         #size-cells = <0>;
156 
157                         phy0: ethernet-phy@0 {
158                                 compatible = "ethernet-phy-ieee802.3-c22";
159                                 reg = <0>;
160                         };
161                 };
162         };
163 
164 
165       ii) McMAL node
166 
167     Required properties:
168     - device_type        : "dma-controller"
169     - compatible         : compatible list, containing 2 entries, first is
170                            "ibm,mcmal-CHIP" where CHIP is the host ASIC (like
171                            emac) and the second is either "ibm,mcmal" or
172                            "ibm,mcmal2".
173                            For Axon, "ibm,mcmal-axon","ibm,mcmal2"
174     - interrupts         : <interrupt mapping for the MAL interrupts sources:
175                            5 sources: tx_eob, rx_eob, serr, txde, rxde>.
176                            For Axon: This is _different_ from the current
177                            firmware.  We use the "delayed" interrupts for txeob
178                            and rxeob. Thus we end up with mapping those 5 MPIC
179                            interrupts, all level positive sensitive: 10, 11, 32,
180                            33, 34 (in decimal)
181     - dcr-reg            : < DCR registers range >
182     - dcr-parent         : if needed for dcr-reg
183     - num-tx-chans       : 1 cell, number of Tx channels
184     - num-rx-chans       : 1 cell, number of Rx channels
185 
186       iii) ZMII node
187 
188     Required properties:
189     - compatible         : compatible list, containing 2 entries, first is
190                            "ibm,zmii-CHIP" where CHIP is the host ASIC (like
191                            EMAC) and the second is "ibm,zmii".
192                            For Axon, there is no ZMII node.
193     - reg                : <registers mapping>
194 
195       iv) RGMII node
196 
197     Required properties:
198     - compatible         : compatible list, containing 2 entries, first is
199                            "ibm,rgmii-CHIP" where CHIP is the host ASIC (like
200                            EMAC) and the second is "ibm,rgmii".
201                            For Axon, "ibm,rgmii-axon","ibm,rgmii"
202     - reg                : <registers mapping>
203     - revision           : as provided by the RGMII new version register if
204                            available.
205                            For Axon: 0x0000012a

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php