blob: 5efeeb6fc5e4ec0425741ea122317cf86f88feb7 [file] [log] [blame]
Hannes Schmelzerdb40c1a2017-03-23 15:11:43 +01001Fixed link Device Tree binding
2------------------------------
3
4Some Ethernet MACs have a "fixed link", and are not connected to a
5normal MDIO-managed PHY device. For those situations, a Device Tree
6binding allows to describe a "fixed link".
7
Bin Meng1c196b32021-03-14 20:14:45 +08008Note there are two ways to describe a fixed PHY attached to an
9Ethernet device:
Hannes Schmelzerdb40c1a2017-03-23 15:11:43 +010010
Bin Meng1c196b32021-03-14 20:14:45 +080011- The new DT binding, where 'fixed-link' is a sub-node of the Ethernet
12 MAC device node, with the following properties:
13
14 * 'speed' (integer, mandatory), to indicate the link speed. Accepted
15 values are 10, 100 and 1000
16 * 'full-duplex' (boolean, optional), to indicate that full duplex is
17 used. When absent, half duplex is assumed.
18 * 'pause' (boolean, optional), to indicate that pause should be
19 enabled.
20 * 'asym-pause' (boolean, optional), to indicate that asym_pause should
21 be enabled.
22
23- The old DT binding, where 'fixed-link' is a property with 5 cells
24 encoding various information about the fixed PHY, in the form of
25 <phy_id, full-duplex, speed, pause, asym-pause>.
26
27 * 'phy_id', emulated PHY ID, choose any but unique to the all specified
28 fixed-links. Note U-Boot deliberately ignores the 'phy_id' and
29 unconditionally uses PHY_FIXED_ID.
30 * 'full-duplex', 0 for half duplex or 1 for full duplex
31 * 'speed', link speed in Mbits/sec, accepts only 10, 100 and 1000
32 * 'pause', 0 for no pause, 1 for pause
33 * 'asym-pause', 0 for no asymmetric pause, 1 for asymmetric pause
Hannes Schmelzerdb40c1a2017-03-23 15:11:43 +010034
35Examples:
36
Bin Meng1c196b32021-03-14 20:14:45 +080037The new binding:
38
Hannes Schmelzerdb40c1a2017-03-23 15:11:43 +010039ethernet@0 {
40 ...
41 fixed-link {
42 speed = <1000>;
43 full-duplex;
44 };
45 ...
46};
Bin Meng1c196b32021-03-14 20:14:45 +080047
48The old binding:
49
50ethernet@0 {
51 ...
52 fixed-link = <0 1 1000 0 0>;
53 ...
54};