The Broadcom BCM87XX devices are a family of 10G Ethernet PHYs.  They
have these bindings in addition to the standard PHY bindings.

Compatible: Should contain "broadcom,bcm8706" or "broadcom,bcm8727" and
            "ethernet-phy-ieee802.3-c45"

Optional Properties:

- broadcom,c45-reg-init : one of more sets of 4 cells.  The first cell
  is the MDIO Manageable Device (MMD) address, the second a register
  address within the MMD, the third cell contains a mask to be ANDed
  with the existing register value, and the fourth cell is ORed with
  he result to yield the new register value.  If the third cell has a
  value of zero, no read of the existing value is performed.

Example:

	ethernet-phy@5 {
		reg = <5>;
		compatible = "broadcom,bcm8706", "ethernet-phy-ieee802.3-c45";
		interrupt-parent = <&gpio>;
		interrupts = <12 8>; /* Pin 12, active low */
		/*
		 * Set PMD Digital Control Register for
		 * GPIO[1] Tx/Rx
		 * GPIO[0] R64 Sync Acquired
		 */
		broadcom,c45-reg-init = <1 0xc808 0xff8f 0x70>;
	};
