1 ST DWC3 glue logic 1 ST DWC3 glue logic 2 2 3 This file documents the parameters for the dwc 3 This file documents the parameters for the dwc3-st driver. 4 This driver controls the glue logic used to co 4 This driver controls the glue logic used to configure the dwc3 core on 5 STiH407 based platforms. 5 STiH407 based platforms. 6 6 7 Required properties: 7 Required properties: 8 - compatible : must be "st,stih407-dwc3" 8 - compatible : must be "st,stih407-dwc3" 9 - reg : glue logic base address and 9 - reg : glue logic base address and USB syscfg ctrl register offset 10 - reg-names : should be "reg-glue" and "sy 10 - reg-names : should be "reg-glue" and "syscfg-reg" 11 - st,syscon : should be phandle to system 11 - st,syscon : should be phandle to system configuration node which 12 encompasses the glue registe 12 encompasses the glue registers 13 - resets : list of phandle and reset sp 13 - resets : list of phandle and reset specifier pairs. There should be two entries, one 14 for the powerdown and softre 14 for the powerdown and softreset lines of the usb3 IP 15 - reset-names : list of reset signal names. 15 - reset-names : list of reset signal names. Names should be "powerdown" and "softreset" 16 See: Documentation/devicetree/bindings/reset/s 16 See: Documentation/devicetree/bindings/reset/st,stih407-powerdown.yaml 17 See: Documentation/devicetree/bindings/reset/r 17 See: Documentation/devicetree/bindings/reset/reset.txt 18 18 19 - #address-cells, #size-cells : should be '1' 19 - #address-cells, #size-cells : should be '1' if the device has sub-nodes 20 with 'reg' property 20 with 'reg' property 21 21 22 - pinctl-names : A pinctrl state named "defau 22 - pinctl-names : A pinctrl state named "default" must be defined 23 See: Documentation/devicetree/bindings/pinctrl 23 See: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 24 24 25 - pinctrl-0 : Pin control group 25 - pinctrl-0 : Pin control group 26 See: Documentation/devicetree/bindings/pinctrl 26 See: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 27 27 28 - ranges : allows valid 1:1 translation 28 - ranges : allows valid 1:1 translation between child's address space and 29 parent's address space 29 parent's address space 30 30 31 Sub-nodes: 31 Sub-nodes: 32 The dwc3 core should be added as subnode to ST 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 33 example below. The DT binding details of dwc3 can be found in: 34 Documentation/devicetree/bindings/usb/snps,dwc 34 Documentation/devicetree/bindings/usb/snps,dwc3.yaml 35 35 36 NB: The dr_mode property described in [1] is N 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. V 37 is "otg", which isn't supported by this SoC. Valid dr_mode values for dwc3-st are either "host" 38 or "device". 38 or "device". 39 39 40 [1] Documentation/devicetree/bindings/usb/usb- 40 [1] Documentation/devicetree/bindings/usb/usb-drd.yaml 41 41 42 Example: 42 Example: 43 43 44 st_dwc3: dwc3@8f94000 { 44 st_dwc3: dwc3@8f94000 { 45 compatible = "st,stih407-dwc3"; 45 compatible = "st,stih407-dwc3"; 46 reg = <0x08f94000 0x1000>, 46 reg = <0x08f94000 0x1000>, <0x110 0x4>; 47 reg-names = "reg-glue", "syscfg- 47 reg-names = "reg-glue", "syscfg-reg"; 48 st,syscfg = <&syscfg_core>; 48 st,syscfg = <&syscfg_core>; 49 resets = <&powerdown STIH407_ 49 resets = <&powerdown STIH407_USB3_POWERDOWN>, 50 <&softreset STIH407_ 50 <&softreset STIH407_MIPHY2_SOFTRESET>; 51 reset-names = "powerdown", "softre 51 reset-names = "powerdown", "softreset"; 52 #address-cells = <1>; 52 #address-cells = <1>; 53 #size-cells = <1>; 53 #size-cells = <1>; 54 pinctrl-names = "default"; 54 pinctrl-names = "default"; 55 pinctrl-0 = <&pinctrl_usb3>; 55 pinctrl-0 = <&pinctrl_usb3>; 56 ranges; 56 ranges; 57 57 58 dwc3: dwc3@9900000 { 58 dwc3: dwc3@9900000 { 59 compatible = "snps,dwc3"; 59 compatible = "snps,dwc3"; 60 reg = <0x09900000 60 reg = <0x09900000 0x100000>; 61 interrupts = <GIC_SPI 155 61 interrupts = <GIC_SPI 155 IRQ_TYPE_NONE>; 62 dr_mode = "host"; 62 dr_mode = "host"; 63 phy-names = "usb2-phy", 63 phy-names = "usb2-phy", "usb3-phy"; 64 phys = <&usb2_picop 64 phys = <&usb2_picophy2>, <&phy_port2 PHY_TYPE_USB3>; 65 }; 65 }; 66 }; 66 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.