aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIvan T. Ivanov <iivanov@mm-sol.com>2014-09-12 15:28:06 -0400
committerFelipe Balbi <balbi@ti.com>2014-09-12 16:30:50 -0400
commitbbfc6cb720df16b0c3895ac75c9804dd8c728ba4 (patch)
tree0f063eca0da446039c39445e673bbf87c219a9c0
parent974a70bdecea5296db1b643e4046ef208e99c592 (diff)
usb: dwc3: qcom: Add device tree binding
QCOM USB3.0 core wrapper consist of USB3.0 IP from Synopsys (SNPS) and HS, SS PHY's control and configuration registers. It could operate in device mode (SS, HS, FS) and host mode (SS, HS, FS, LS). Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com> Signed-off-by: Andy Gross <agross@codeaurora.org> Signed-off-by: Felipe Balbi <balbi@ti.com>
-rw-r--r--Documentation/devicetree/bindings/phy/qcom-dwc3-usb-phy.txt39
-rw-r--r--Documentation/devicetree/bindings/usb/qcom,dwc3.txt66
2 files changed, 105 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/phy/qcom-dwc3-usb-phy.txt b/Documentation/devicetree/bindings/phy/qcom-dwc3-usb-phy.txt
new file mode 100644
index 000000000000..86f2dbe07ed4
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/qcom-dwc3-usb-phy.txt
@@ -0,0 +1,39 @@
1Qualcomm DWC3 HS AND SS PHY CONTROLLER
2--------------------------------------
3
4DWC3 PHY nodes are defined to describe on-chip Synopsis Physical layer
5controllers. Each DWC3 PHY controller should have its own node.
6
7Required properties:
8- compatible: should contain one of the following:
9 - "qcom,dwc3-hs-usb-phy" for High Speed Synopsis PHY controller
10 - "qcom,dwc3-ss-usb-phy" for Super Speed Synopsis PHY controller
11- reg: offset and length of the DWC3 PHY controller register set
12- #phy-cells: must be zero
13- clocks: a list of phandles and clock-specifier pairs, one for each entry in
14 clock-names.
15- clock-names: Should contain "ref" for the PHY reference clock
16
17Optional clocks:
18 "xo" External reference clock
19
20Example:
21 phy@100f8800 {
22 compatible = "qcom,dwc3-hs-usb-phy";
23 reg = <0x100f8800 0x30>;
24 clocks = <&gcc USB30_0_UTMI_CLK>;
25 clock-names = "ref";
26 #phy-cells = <0>;
27
28 status = "ok";
29 };
30
31 phy@100f8830 {
32 compatible = "qcom,dwc3-ss-usb-phy";
33 reg = <0x100f8830 0x30>;
34 clocks = <&gcc USB30_0_MASTER_CLK>;
35 clock-names = "ref";
36 #phy-cells = <0>;
37
38 status = "ok";
39 };
diff --git a/Documentation/devicetree/bindings/usb/qcom,dwc3.txt b/Documentation/devicetree/bindings/usb/qcom,dwc3.txt
new file mode 100644
index 000000000000..ca164e71dd50
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/qcom,dwc3.txt
@@ -0,0 +1,66 @@
1Qualcomm SuperSpeed DWC3 USB SoC controller
2
3Required properties:
4- compatible: should contain "qcom,dwc3"
5- clocks: A list of phandle + clock-specifier pairs for the
6 clocks listed in clock-names
7- clock-names: Should contain the following:
8 "core" Master/Core clock, have to be >= 125 MHz for SS
9 operation and >= 60MHz for HS operation
10
11Optional clocks:
12 "iface" System bus AXI clock. Not present on all platforms
13 "sleep" Sleep clock, used when USB3 core goes into low
14 power mode (U3).
15
16Required child node:
17A child node must exist to represent the core DWC3 IP block. The name of
18the node is not important. The content of the node is defined in dwc3.txt.
19
20Phy documentation is provided in the following places:
21Documentation/devicetree/bindings/phy/qcom,dwc3-usb-phy.txt
22
23Example device nodes:
24
25 hs_phy: phy@100f8800 {
26 compatible = "qcom,dwc3-hs-usb-phy";
27 reg = <0x100f8800 0x30>;
28 clocks = <&gcc USB30_0_UTMI_CLK>;
29 clock-names = "ref";
30 #phy-cells = <0>;
31
32 status = "ok";
33 };
34
35 ss_phy: phy@100f8830 {
36 compatible = "qcom,dwc3-ss-usb-phy";
37 reg = <0x100f8830 0x30>;
38 clocks = <&gcc USB30_0_MASTER_CLK>;
39 clock-names = "ref";
40 #phy-cells = <0>;
41
42 status = "ok";
43 };
44
45 usb3_0: usb30@0 {
46 compatible = "qcom,dwc3";
47 #address-cells = <1>;
48 #size-cells = <1>;
49 clocks = <&gcc USB30_0_MASTER_CLK>;
50 clock-names = "core";
51
52 ranges;
53
54 status = "ok";
55
56 dwc3@10000000 {
57 compatible = "snps,dwc3";
58 reg = <0x10000000 0xcd00>;
59 interrupts = <0 205 0x4>;
60 phys = <&hs_phy>, <&ss_phy>;
61 phy-names = "usb2-phy", "usb3-phy";
62 tx-fifo-resize;
63 dr_mode = "host";
64 };
65 };
66