dwc3-st.txt 2.3 KB

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