Micrel KSZ9021/KSZ9031/KSZ9131 Gigabit Ethernet PHY

Some boards require special tuning values, particularly when it comes
to clock delays. You can specify clock delay values in the PHY OF
device node. Deprecated, but still supported, these properties can
also be added 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 can be specified in 200ps
  steps, *but* these values are in not fact what you get because this chip's
  skew values actually increase in 120ps steps, starting from -840ps. The
  incorrect values came from an error in the original KSZ9021 datasheet
  before it was corrected in revision 1.2 (Feb 2014), but it is too late to
  change the driver now because of the many existing device trees that have
  been created using values that go up in increments of 200.

  The following table shows the actual skew delay you will get for each of the
  possible devicetree values, and the number that will be programmed into the
  corresponding pad skew register:

  Device Tree Value	Delay	Pad Skew Register Value
  -----------------------------------------------------
	0   		-840ps		0000
	200 		-720ps		0001
	400 		-600ps		0010
	600 		-480ps		0011
	800 		-360ps		0100
	1000		-240ps		0101
	1200		-120ps		0110
	1400		   0ps		0111
	1600		 120ps		1000
	1800		 240ps		1001
	2000		 360ps		1010
	2200		 480ps		1011
	2400		 600ps		1100
	2600		 720ps		1101
	2800		 840ps		1110
	3000		 960ps		1111

  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. The default value is the neutral setting, so setting
  rxc-skew-ps=<0> actually results in -900 picoseconds adjustment.

  Optional properties:

    Maximum value of 1860, default value 900:

      - rxc-skew-ps : Skew control of RX clock pad
      - txc-skew-ps : Skew control of TX clock pad

    Maximum value of 900, default value 420:

      - 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

    - micrel,force-master:
        Boolean, force phy to master mode. Only set this option if the phy
        reference clock provided at CLK125_NDO pin is used as MAC reference
        clock because the clock jitter in slave mode is to high (errata#2).
        Attention: The link partner must be configurable as slave otherwise
        no link will be established.

KSZ9131:

  All skew control options are specified in picoseconds. The increment
  step is 100ps. Unlike KSZ9031, the values represent picoseccond delays.
  A negative value can be assigned as rxc-skew-psec = <(-100)>;.

  Optional properties:

    Range of the value -700 to 2400, default value 0:

      - rxc-skew-psec : Skew control of RX clock pad
      - txc-skew-psec : Skew control of TX clock pad

    Range of the value -700 to 800, default value 0:

      - rxdv-skew-psec : Skew control of RX CTL pad
      - txen-skew-psec : Skew control of TX CTL pad
      - rxd0-skew-psec : Skew control of RX data 0 pad
      - rxd1-skew-psec : Skew control of RX data 1 pad
      - rxd2-skew-psec : Skew control of RX data 2 pad
      - rxd3-skew-psec : Skew control of RX data 3 pad
      - txd0-skew-psec : Skew control of TX data 0 pad
      - txd1-skew-psec : Skew control of TX data 1 pad
      - txd2-skew-psec : Skew control of TX data 2 pad
      - txd3-skew-psec : Skew control of TX data 3 pad

Examples:

	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 {
		phy = <&phy0>;
		phy-mode = "rgmii-id";
	};
