Lines Matching +full:gmii +full:- +full:to +full:- +full:sgmii +full:- +full:2
1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/net/ethernet-controller.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - David S. Miller <davem@davemloft.net>
19 max-speed:
24 nvmem-cells:
27 Reference to an nvmem node for the MAC address
29 nvmem-cell-names:
30 const: mac-address
32 phy-connection-type:
38 # something proprietary is being used to embed the PHY in the
40 - internal
41 - mii
42 - mii-lite
43 - gmii
44 - sgmii
45 - psgmii
46 - qsgmii
47 - qusgmii
48 - tbi
49 - rev-mii
50 - rmii
51 - rev-rmii
52 - moca
55 - rgmii
59 - rgmii-id
62 - rgmii-rxid
65 - rgmii-txid
66 - rtbi
67 - smii
68 - xgmii
69 - trgmii
70 - 1000base-x
71 - 2500base-x
72 - 5gbase-r
73 - rxaui
74 - xaui
76 # 10GBASE-KR, XFI, SFI
77 - 10gbase-kr
78 - usxgmii
79 - 10gbase-r
80 - 25gbase-r
81 - 10g-qxgmii
83 phy-mode:
84 $ref: "#/properties/phy-connection-type"
86 pcs-handle:
87 $ref: /schemas/types.yaml#/definitions/phandle-array
91 Specifies a reference to a node representing a PCS PHY device on a MDIO
92 bus to link with an external PHY (phy-handle) if exists.
94 pcs-handle-names:
96 The name of each PCS in pcs-handle.
98 phy-handle:
101 Specifies a reference to a node representing a PHY device.
104 $ref: "#/properties/phy-handle"
107 phy-device:
108 $ref: "#/properties/phy-handle"
111 rx-fifo-depth:
122 Specifies a reference to a node representing a SFP cage.
124 tx-fifo-depth:
132 Specifies the PHY management type. If auto is set and fixed-link
137 - auto
138 - in-band-status
140 fixed-link:
142 - $ref: /schemas/types.yaml#/definitions/uint32-array
145 - minimum: 0
148 Emulated PHY ID, choose any but unique to the all
149 specified fixed-links
151 - enum: [0, 1]
156 - enum: [10, 100, 1000, 2500, 10000]
160 - enum: [0, 1]
164 - enum: [0, 1]
168 - type: object
177 full-duplex:
180 Indicates that full-duplex is used. When absent, half
188 asym-pause:
193 link-gpios:
196 GPIO to determine if the link is up
199 - speed
205 control on them. Ethernet Controller regs are used to control
211 '#address-cells':
214 '#size-cells':
218 '^led@[a-f0-9]+$':
230 - reg
237 pcs-handle-names: [pcs-handle]
240 - $ref: /schemas/net/network-class.yaml#
241 - if:
243 phy-mode:
246 - rgmii
247 - rgmii-rxid
248 - rgmii-txid
249 - rgmii-id
252 rx-internal-delay-ps:
257 tx-internal-delay-ps:
268 # 'phy-modes' & 'phy-connection-type' properties 'rgmii', 'rgmii-id',
269 # 'rgmii-rxid', and 'rgmii-txid' are frequently used wrongly by
272 # The RGMII specification requires a 2ns delay between the data and
276 # One option is to make the clock traces on the PCB longer than the
277 # data traces. A sufficiently difference in length can provide the 2ns
282 # 'rgmii-id' should be used. Here, 'id' refers to 'internal delay',
286 # lines, either 'rgmii-rxid' or 'rgmii-txid' should be used,
295 # any RGMII phy mode other than 'rgmii-id' is probably wrong, and is
296 # unlikely to be accepted during review without details provided in
304 # the MAC and PHY to add these delays when the PCB does not. As stated
312 # to read the 'phy-mode' from Device Tree, not implement any delays,
313 # and pass the value to the PHY. The PHY will then implement delays as
314 # specified by the 'phy-mode'. The PHY should always be reconfigured
315 # to implement the needed delays, replacing any setting performed by
318 # Experience to date is that all PHYs which implement RGMII also
319 # implement the ability to add or not add the needed delays. Hence
320 # this default is expected to work in all cases. Ignoring this default
321 # is likely to be questioned by Reviews, and require a strong argument
322 # to be accepted.
325 # delays which cannot be disabled. The 'phy-mode' only describes the
326 # PCB. The inability to disable the delays in the MAC does not change
327 # the meaning of 'phy-mode'. It does however mean that a 'phy-mode' of
333 # must modify the phy-mode it passes to the PHY, removing the delay it
334 # has added. Failure to remove the delay will result in a
335 # non-functioning link.
337 # Sometimes there is a need to fine tune the delays. Often the MAC or
339 # properties 'rx-internal-delay-ps' and 'tx-internal-delay-ps' should
340 # be used to indicate fine tuning performed by the MAC. The values
341 # expected here are small. A value of 2000ps, i.e 2ns, and a phy-mode
344 # If the PHY is to perform fine tuning, the properties
345 # 'rx-internal-delay-ps' and 'tx-internal-delay-ps' in the PHY node
346 # should be used. When the PHY is implementing delays, e.g. 'rgmii-id'
347 # these properties should have a value near to 2000ps. If the PCB is
348 # implementing delays, e.g. 'rgmii', a small value can be used to fine