Micrel KSZ9021/KSZ9031 Gigabit Ethernet PHY Some boards require special tuning values, particularly when it comes to clock delays. You can specify clock delay values by adding micrel-specific properties to an Ethernet OF device node. Note that these settings are applied after any phy-specific fixup from phy_fixup_list (see phy_init_hw() from drivers/net/phy/phy_device.c), and therefore may overwrite them. KSZ9021: All skew control options are specified in picoseconds. The minimum value is 0, the maximum value is 3000, and it is incremented by 200ps steps. Optional properties: - rxc-skew-ps : Skew control of RXC pad - rxdv-skew-ps : Skew control of RX CTL pad - txc-skew-ps : Skew control of TXC pad - txen-skew-ps : Skew control of TX CTL pad - rxd0-skew-ps : Skew control of RX data 0 pad - rxd1-skew-ps : Skew control of RX data 1 pad - rxd2-skew-ps : Skew control of RX data 2 pad - rxd3-skew-ps : Skew control of RX data 3 pad - txd0-skew-ps : Skew control of TX data 0 pad - txd1-skew-ps : Skew control of TX data 1 pad - txd2-skew-ps : Skew control of TX data 2 pad - txd3-skew-ps : Skew control of TX data 3 pad KSZ9031: All skew control options are specified in picoseconds. The minimum value is 0, and the maximum is property-dependent. The increment step is 60ps. Optional properties: Maximum value of 1860: - rxc-skew-ps : Skew control of RX clock pad - txc-skew-ps : Skew control of TX clock pad Maximum value of 900: - rxdv-skew-ps : Skew control of RX CTL pad - txen-skew-ps : Skew control of TX CTL pad - rxd0-skew-ps : Skew control of RX data 0 pad - rxd1-skew-ps : Skew control of RX data 1 pad - rxd2-skew-ps : Skew control of RX data 2 pad - rxd3-skew-ps : Skew control of RX data 3 pad - txd0-skew-ps : Skew control of TX data 0 pad - txd1-skew-ps : Skew control of TX data 1 pad - txd2-skew-ps : Skew control of TX data 2 pad - txd3-skew-ps : Skew control of TX data 3 pad Examples: /* Attach to an Ethernet device with autodetected PHY */ &enet { rxc-skew-ps = <3000>; rxdv-skew-ps = <0>; txc-skew-ps = <3000>; txen-skew-ps = <0>; status = "okay"; }; /* Attach to an explicitly-specified PHY */ mdio { phy0: ethernet-phy@0 { rxc-skew-ps = <3000>; rxdv-skew-ps = <0>; txc-skew-ps = <3000>; txen-skew-ps = <0>; reg = <0>; }; }; ethernet@70000 { status = "okay"; phy = <&phy0>; phy-mode = "rgmii-id"; };