dwc3-st.txt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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-bindings.txt
  20. - pinctrl-0 : Pin control group
  21. See: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.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. compatible = "st,stih407-dwc3";
  35. reg = <0x08f94000 0x1000>, <0x110 0x4>;
  36. reg-names = "reg-glue", "syscfg-reg";
  37. st,syscfg = <&syscfg_core>;
  38. resets = <&powerdown STIH407_USB3_POWERDOWN>,
  39. <&softreset STIH407_MIPHY2_SOFTRESET>;
  40. reset-names = "powerdown", "softreset";
  41. #address-cells = <1>;
  42. #size-cells = <1>;
  43. pinctrl-names = "default";
  44. pinctrl-0 = <&pinctrl_usb3>;
  45. ranges;
  46. dwc3: dwc3@9900000 {
  47. compatible = "snps,dwc3";
  48. reg = <0x09900000 0x100000>;
  49. interrupts = <GIC_SPI 155 IRQ_TYPE_NONE>;
  50. dr_mode = "host";
  51. phy-names = "usb2-phy", "usb3-phy";
  52. phys = <&usb2_picophy2>, <&phy_port2 PHY_TYPE_USB3>;
  53. };
  54. };