.. | .. |
---|
1 | | -Micrel KSZ9021/KSZ9031 Gigabit Ethernet PHY |
---|
| 1 | +Micrel KSZ9021/KSZ9031/KSZ9131 Gigabit Ethernet PHY |
---|
2 | 2 | |
---|
3 | 3 | Some boards require special tuning values, particularly when it comes |
---|
4 | 4 | to clock delays. You can specify clock delay values in the PHY OF |
---|
.. | .. |
---|
12 | 12 | KSZ9021: |
---|
13 | 13 | |
---|
14 | 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. |
---|
| 15 | + value is 0, the maximum value is 3000, and it can be specified in 200ps |
---|
| 16 | + steps, *but* these values are in not fact what you get because this chip's |
---|
| 17 | + skew values actually increase in 120ps steps, starting from -840ps. The |
---|
| 18 | + incorrect values came from an error in the original KSZ9021 datasheet |
---|
| 19 | + before it was corrected in revision 1.2 (Feb 2014), but it is too late to |
---|
| 20 | + change the driver now because of the many existing device trees that have |
---|
| 21 | + been created using values that go up in increments of 200. |
---|
| 22 | + |
---|
| 23 | + The following table shows the actual skew delay you will get for each of the |
---|
| 24 | + possible devicetree values, and the number that will be programmed into the |
---|
| 25 | + corresponding pad skew register: |
---|
| 26 | + |
---|
| 27 | + Device Tree Value Delay Pad Skew Register Value |
---|
| 28 | + ----------------------------------------------------- |
---|
| 29 | + 0 -840ps 0000 |
---|
| 30 | + 200 -720ps 0001 |
---|
| 31 | + 400 -600ps 0010 |
---|
| 32 | + 600 -480ps 0011 |
---|
| 33 | + 800 -360ps 0100 |
---|
| 34 | + 1000 -240ps 0101 |
---|
| 35 | + 1200 -120ps 0110 |
---|
| 36 | + 1400 0ps 0111 |
---|
| 37 | + 1600 120ps 1000 |
---|
| 38 | + 1800 240ps 1001 |
---|
| 39 | + 2000 360ps 1010 |
---|
| 40 | + 2200 480ps 1011 |
---|
| 41 | + 2400 600ps 1100 |
---|
| 42 | + 2600 720ps 1101 |
---|
| 43 | + 2800 840ps 1110 |
---|
| 44 | + 3000 960ps 1111 |
---|
17 | 45 | |
---|
18 | 46 | Optional properties: |
---|
19 | 47 | |
---|
.. | .. |
---|
64 | 92 | Attention: The link partner must be configurable as slave otherwise |
---|
65 | 93 | no link will be established. |
---|
66 | 94 | |
---|
| 95 | +KSZ9131: |
---|
| 96 | + |
---|
| 97 | + All skew control options are specified in picoseconds. The increment |
---|
| 98 | + step is 100ps. Unlike KSZ9031, the values represent picoseccond delays. |
---|
| 99 | + A negative value can be assigned as rxc-skew-psec = <(-100)>;. |
---|
| 100 | + |
---|
| 101 | + Optional properties: |
---|
| 102 | + |
---|
| 103 | + Range of the value -700 to 2400, default value 0: |
---|
| 104 | + |
---|
| 105 | + - rxc-skew-psec : Skew control of RX clock pad |
---|
| 106 | + - txc-skew-psec : Skew control of TX clock pad |
---|
| 107 | + |
---|
| 108 | + Range of the value -700 to 800, default value 0: |
---|
| 109 | + |
---|
| 110 | + - rxdv-skew-psec : Skew control of RX CTL pad |
---|
| 111 | + - txen-skew-psec : Skew control of TX CTL pad |
---|
| 112 | + - rxd0-skew-psec : Skew control of RX data 0 pad |
---|
| 113 | + - rxd1-skew-psec : Skew control of RX data 1 pad |
---|
| 114 | + - rxd2-skew-psec : Skew control of RX data 2 pad |
---|
| 115 | + - rxd3-skew-psec : Skew control of RX data 3 pad |
---|
| 116 | + - txd0-skew-psec : Skew control of TX data 0 pad |
---|
| 117 | + - txd1-skew-psec : Skew control of TX data 1 pad |
---|
| 118 | + - txd2-skew-psec : Skew control of TX data 2 pad |
---|
| 119 | + - txd3-skew-psec : Skew control of TX data 3 pad |
---|
| 120 | + |
---|
67 | 121 | Examples: |
---|
68 | 122 | |
---|
69 | 123 | mdio { |
---|