Linux 4.1.18
[linux/fpc-iii.git] / Documentation / devicetree / bindings / usb / dwc3-st.txt
blobf9d70252bbb298b9450dfdde78cb425808a0e85c
1 ST DWC3 glue logic
3 This file documents the parameters for the dwc3-st driver.
4 This driver controls the glue logic used to configure the dwc3 core on
5 STiH407 based platforms.
7 Required properties:
8  - compatible   : must be "st,stih407-dwc3"
9  - reg          : glue logic base address and USB syscfg ctrl register offset
10  - reg-names    : should be "reg-glue" and "syscfg-reg"
11  - st,syscon    : should be phandle to system configuration node which
12                   encompasses the glue registers
13  - resets       : list of phandle and reset specifier pairs. There should be two entries, one
14                   for the powerdown and softreset lines of the usb3 IP
15  - reset-names  : list of reset signal names. Names should be "powerdown" and "softreset"
16 See: Documentation/devicetree/bindings/reset/st,sti-powerdown.txt
17 See: Documentation/devicetree/bindings/reset/reset.txt
19  - #address-cells, #size-cells : should be '1' if the device has sub-nodes
20    with 'reg' property
22  - pinctl-names : A pinctrl state named "default" must be defined
23 See: Documentation/devicetree/bindings/pinctrl/pinctrl-binding.txt
25  - pinctrl-0    : Pin control group
26 See: Documentation/devicetree/bindings/pinctrl/pinctrl-binding.txt
28  - ranges       : allows valid 1:1 translation between child's address space and
29                   parent's address space
31 Sub-nodes:
32 The dwc3 core should be added as subnode to ST DWC3 glue as shown in the
33 example below. The DT binding details of dwc3 can be found in:
34 Documentation/devicetree/bindings/usb/dwc3.txt
36 NB: The dr_mode property described in [1] is NOT optional for this driver, as the default value
37 is "otg", which isn't supported by this SoC. Valid dr_mode values for dwc3-st are either "host"
38 or "device".
40 [1] Documentation/devicetree/bindings/usb/generic.txt
42 Example:
44 st_dwc3: dwc3@8f94000 {
45         status          = "disabled";
46         compatible      = "st,stih407-dwc3";
47         reg             = <0x08f94000 0x1000>, <0x110 0x4>;
48         reg-names       = "reg-glue", "syscfg-reg";
49         st,syscfg       = <&syscfg_core>;
50         resets          = <&powerdown STIH407_USB3_POWERDOWN>,
51                           <&softreset STIH407_MIPHY2_SOFTRESET>;
52         reset-names     = "powerdown",
53                           "softreset";
54         #address-cells  = <1>;
55         #size-cells     = <1>;
56         pinctrl-names   = "default";
57         pinctrl-0       = <&pinctrl_usb3>;
58         ranges;
60         dwc3: dwc3@9900000 {
61                 compatible      = "snps,dwc3";
62                 reg             = <0x09900000 0x100000>;
63                 interrupts      = <GIC_SPI 155 IRQ_TYPE_NONE>;
64                 dr_mode         = "host";
65                 phys-names      = "usb2-phy", "usb3-phy";
66                 phys            = <&usb2_picophy2>, <&phy_port2 MIPHY_TYPE_USB>;
67         };