blob: c35b5b428a7f5f78f69d02dcadbbfd383bb38a0b [file] [log] [blame]
Hubert Chaumette4b405ef2014-05-06 09:40:16 +02001Micrel KSZ9021/KSZ9031 Gigabit Ethernet PHY
2
Andrew Lunn2ad7b752015-12-09 19:39:03 +01003Some boards require special tuning values, particularly when it comes
4to clock delays. You can specify clock delay values in the PHY OF
5device node. Deprecated, but still supported, these properties can
6also be added to an Ethernet OF device node.
Hubert Chaumette4b405ef2014-05-06 09:40:16 +02007
8Note that these settings are applied after any phy-specific fixup from
9phy_fixup_list (see phy_init_hw() from drivers/net/phy/phy_device.c),
10and therefore may overwrite them.
11
12KSZ9021:
13
14 All skew control options are specified in picoseconds. The minimum
15 value is 0, the maximum value is 3000, and it is incremented by 200ps
16 steps.
17
18 Optional properties:
19
20 - rxc-skew-ps : Skew control of RXC pad
21 - rxdv-skew-ps : Skew control of RX CTL pad
22 - txc-skew-ps : Skew control of TXC pad
23 - txen-skew-ps : Skew control of TX CTL pad
24 - rxd0-skew-ps : Skew control of RX data 0 pad
25 - rxd1-skew-ps : Skew control of RX data 1 pad
26 - rxd2-skew-ps : Skew control of RX data 2 pad
27 - rxd3-skew-ps : Skew control of RX data 3 pad
28 - txd0-skew-ps : Skew control of TX data 0 pad
29 - txd1-skew-ps : Skew control of TX data 1 pad
30 - txd2-skew-ps : Skew control of TX data 2 pad
31 - txd3-skew-ps : Skew control of TX data 3 pad
32
33KSZ9031:
34
35 All skew control options are specified in picoseconds. The minimum
36 value is 0, and the maximum is property-dependent. The increment
Mike Looijmans3d9e1332016-10-05 16:03:08 +020037 step is 60ps. The default value is the neutral setting, so setting
38 rxc-skew-ps=<0> actually results in -900 picoseconds adjustment.
Hubert Chaumette4b405ef2014-05-06 09:40:16 +020039
40 Optional properties:
41
Mike Looijmans3d9e1332016-10-05 16:03:08 +020042 Maximum value of 1860, default value 900:
Hubert Chaumette4b405ef2014-05-06 09:40:16 +020043
44 - rxc-skew-ps : Skew control of RX clock pad
45 - txc-skew-ps : Skew control of TX clock pad
46
Mike Looijmans3d9e1332016-10-05 16:03:08 +020047 Maximum value of 900, default value 420:
Hubert Chaumette4b405ef2014-05-06 09:40:16 +020048
49 - rxdv-skew-ps : Skew control of RX CTL pad
50 - txen-skew-ps : Skew control of TX CTL pad
51 - rxd0-skew-ps : Skew control of RX data 0 pad
52 - rxd1-skew-ps : Skew control of RX data 1 pad
53 - rxd2-skew-ps : Skew control of RX data 2 pad
54 - rxd3-skew-ps : Skew control of RX data 3 pad
55 - txd0-skew-ps : Skew control of TX data 0 pad
56 - txd1-skew-ps : Skew control of TX data 1 pad
57 - txd2-skew-ps : Skew control of TX data 2 pad
58 - txd3-skew-ps : Skew control of TX data 3 pad
59
60Examples:
61
Hubert Chaumette4b405ef2014-05-06 09:40:16 +020062 mdio {
63 phy0: ethernet-phy@0 {
64 rxc-skew-ps = <3000>;
65 rxdv-skew-ps = <0>;
66 txc-skew-ps = <3000>;
67 txen-skew-ps = <0>;
68 reg = <0>;
69 };
70 };
71 ethernet@70000 {
72 status = "okay";
73 phy = <&phy0>;
74 phy-mode = "rgmii-id";
75 };