diff options
Diffstat (limited to 'Documentation/devicetree/bindings/usb/fsl-usb.txt')
-rw-r--r-- | Documentation/devicetree/bindings/usb/fsl-usb.txt | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/usb/fsl-usb.txt b/Documentation/devicetree/bindings/usb/fsl-usb.txt new file mode 100644 index 000000000000..bd5723f0b67e --- /dev/null +++ b/Documentation/devicetree/bindings/usb/fsl-usb.txt | |||
@@ -0,0 +1,81 @@ | |||
1 | Freescale SOC USB controllers | ||
2 | |||
3 | The device node for a USB controller that is part of a Freescale | ||
4 | SOC is as described in the document "Open Firmware Recommended | ||
5 | Practice : Universal Serial Bus" with the following modifications | ||
6 | and additions : | ||
7 | |||
8 | Required properties : | ||
9 | - compatible : Should be "fsl-usb2-mph" for multi port host USB | ||
10 | controllers, or "fsl-usb2-dr" for dual role USB controllers | ||
11 | or "fsl,mpc5121-usb2-dr" for dual role USB controllers of MPC5121 | ||
12 | - phy_type : For multi port host USB controllers, should be one of | ||
13 | "ulpi", or "serial". For dual role USB controllers, should be | ||
14 | one of "ulpi", "utmi", "utmi_wide", or "serial". | ||
15 | - reg : Offset and length of the register set for the device | ||
16 | - port0 : boolean; if defined, indicates port0 is connected for | ||
17 | fsl-usb2-mph compatible controllers. Either this property or | ||
18 | "port1" (or both) must be defined for "fsl-usb2-mph" compatible | ||
19 | controllers. | ||
20 | - port1 : boolean; if defined, indicates port1 is connected for | ||
21 | fsl-usb2-mph compatible controllers. Either this property or | ||
22 | "port0" (or both) must be defined for "fsl-usb2-mph" compatible | ||
23 | controllers. | ||
24 | - dr_mode : indicates the working mode for "fsl-usb2-dr" compatible | ||
25 | controllers. Can be "host", "peripheral", or "otg". Default to | ||
26 | "host" if not defined for backward compatibility. | ||
27 | |||
28 | Recommended properties : | ||
29 | - interrupts : <a b> where a is the interrupt number and b is a | ||
30 | field that represents an encoding of the sense and level | ||
31 | information for the interrupt. This should be encoded based on | ||
32 | the information in section 2) depending on the type of interrupt | ||
33 | controller you have. | ||
34 | - interrupt-parent : the phandle for the interrupt controller that | ||
35 | services interrupts for this device. | ||
36 | |||
37 | Optional properties : | ||
38 | - fsl,invert-drvvbus : boolean; for MPC5121 USB0 only. Indicates the | ||
39 | port power polarity of internal PHY signal DRVVBUS is inverted. | ||
40 | - fsl,invert-pwr-fault : boolean; for MPC5121 USB0 only. Indicates | ||
41 | the PWR_FAULT signal polarity is inverted. | ||
42 | |||
43 | Example multi port host USB controller device node : | ||
44 | usb@22000 { | ||
45 | compatible = "fsl-usb2-mph"; | ||
46 | reg = <22000 1000>; | ||
47 | #address-cells = <1>; | ||
48 | #size-cells = <0>; | ||
49 | interrupt-parent = <700>; | ||
50 | interrupts = <27 1>; | ||
51 | phy_type = "ulpi"; | ||
52 | port0; | ||
53 | port1; | ||
54 | }; | ||
55 | |||
56 | Example dual role USB controller device node : | ||
57 | usb@23000 { | ||
58 | compatible = "fsl-usb2-dr"; | ||
59 | reg = <23000 1000>; | ||
60 | #address-cells = <1>; | ||
61 | #size-cells = <0>; | ||
62 | interrupt-parent = <700>; | ||
63 | interrupts = <26 1>; | ||
64 | dr_mode = "otg"; | ||
65 | phy = "ulpi"; | ||
66 | }; | ||
67 | |||
68 | Example dual role USB controller device node for MPC5121ADS: | ||
69 | |||
70 | usb@4000 { | ||
71 | compatible = "fsl,mpc5121-usb2-dr"; | ||
72 | reg = <0x4000 0x1000>; | ||
73 | #address-cells = <1>; | ||
74 | #size-cells = <0>; | ||
75 | interrupt-parent = < &ipic >; | ||
76 | interrupts = <44 0x8>; | ||
77 | dr_mode = "otg"; | ||
78 | phy_type = "utmi_wide"; | ||
79 | fsl,invert-drvvbus; | ||
80 | fsl,invert-pwr-fault; | ||
81 | }; | ||