summaryrefslogtreecommitdiffstats
path: root/dts/Bindings/usb/octeon-usb.txt
blob: 205c8d24d6e31487f412cc88fe860a4794765197 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
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>;
		};
	};