OCTEON/OCTEON+ USB BLOCK

1) Main node

   Required properties:

   - compatible: must be "cavium,octeon-5750-usbn"

   - reg: specifies the physical base address of the USBN block and
     the length of the memory mapped region.

   - #address-cells: specifies the number of cells needed to encode an
     address. The value must be 2.

   - #size-cells: specifies the number of cells used to represent the size
     of an address. The value must be 2.

   - ranges: specifies the translation between child address space and parent
     address space.

   - clock-frequency: speed of the USB reference clock. Allowed values are
     12000000, 24000000 or 48000000.

   - cavium,refclk-type: type of the USB reference clock. Allowed values are
     "crystal" or "external".

   - refclk-frequency: deprecated, use "clock-frequency".

   - refclk-type: deprecated, use "cavium,refclk-type".

2) Child node

   The main node must have one child node which describes the built-in
   USB controller.

   Required properties:

   - compatible: must be "cavium,octeon-5750-usbc"

   - reg: specifies the physical base address of the USBC block and
     the length of the memory mapped region.

   - interrupts: specifies the interrupt number for the USB controller.

3) Example:

	usbn: usbn@1180068000000 {
		compatible = "cavium,octeon-5750-usbn";
		reg = <0x11800 0x68000000 0x0 0x1000>;
		ranges; /* Direct mapping */
		#address-cells = <2>;
		#size-cells = <2>;
		clock-frequency = <12000000>;
		cavium,refclk-type = "crystal";

		usbc@16f0010000000 {
			compatible = "cavium,octeon-5750-usbc";
			reg = <0x16f00 0x10000000 0x0 0x80000>;
			interrupts = <0 56>;
		};
	};

