omap-usb.txt 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. OMAP GLUE AND OTHER OMAP SPECIFIC COMPONENTS
  2. OMAP MUSB GLUE
  3. - compatible : Should be "ti,omap4-musb" or "ti,omap3-musb"
  4. - ti,hwmods : must be "usb_otg_hs"
  5. - ti,has-mailbox : to specify that omap uses an external mailbox
  6. (in control module) to communicate with the musb core during device connect
  7. and disconnect.
  8. - multipoint : Should be "1" indicating the musb controller supports
  9. multipoint. This is a MUSB configuration-specific setting.
  10. - num-eps : Specifies the number of endpoints. This is also a
  11. MUSB configuration-specific setting. Should be set to "16"
  12. - ram-bits : Specifies the ram address size. Should be set to "12"
  13. - interface-type : This is a board specific setting to describe the type of
  14. interface between the controller and the phy. It should be "0" or "1"
  15. specifying ULPI and UTMI respectively.
  16. - mode : Should be "3" to represent OTG. "1" signifies HOST and "2"
  17. represents PERIPHERAL.
  18. - power : Should be "50". This signifies the controller can supply up to
  19. 100mA when operating in host mode.
  20. - usb-phy : the phandle for the PHY device
  21. - phys : the phandle for the PHY device (used by generic PHY framework)
  22. - phy-names : the names of the PHY corresponding to the PHYs present in the
  23. *phy* phandle.
  24. Optional properties:
  25. - ctrl-module : phandle of the control module this glue uses to write to
  26. mailbox
  27. SOC specific device node entry
  28. usb_otg_hs: usb_otg_hs@4a0ab000 {
  29. compatible = "ti,omap4-musb";
  30. ti,hwmods = "usb_otg_hs";
  31. ti,has-mailbox;
  32. multipoint = <1>;
  33. num-eps = <16>;
  34. ram-bits = <12>;
  35. ctrl-module = <&omap_control_usb>;
  36. phys = <&usb2_phy>;
  37. phy-names = "usb2-phy";
  38. };
  39. Board specific device node entry
  40. &usb_otg_hs {
  41. interface-type = <1>;
  42. mode = <3>;
  43. power = <50>;
  44. };
  45. OMAP DWC3 GLUE
  46. - compatible : Should be "ti,dwc3"
  47. - ti,hwmods : Should be "usb_otg_ss"
  48. - reg : Address and length of the register set for the device.
  49. - interrupts : The irq number of this device that is used to interrupt the
  50. MPU
  51. - #address-cells, #size-cells : Must be present if the device has sub-nodes
  52. - utmi-mode : controls the source of UTMI/PIPE status for VBUS and OTG ID.
  53. It should be set to "1" for HW mode and "2" for SW mode.
  54. - ranges: the child address space are mapped 1:1 onto the parent address space
  55. Optional Properties:
  56. - extcon : phandle for the extcon device omap dwc3 uses to detect
  57. connect/disconnect events.
  58. - vbus-supply : phandle to the regulator device tree node if needed.
  59. Sub-nodes:
  60. The dwc3 core should be added as subnode to omap dwc3 glue.
  61. - dwc3 :
  62. The binding details of dwc3 can be found in:
  63. Documentation/devicetree/bindings/usb/dwc3.txt
  64. omap_dwc3 {
  65. compatible = "ti,dwc3";
  66. ti,hwmods = "usb_otg_ss";
  67. reg = <0x4a020000 0x1ff>;
  68. interrupts = <0 93 4>;
  69. #address-cells = <1>;
  70. #size-cells = <1>;
  71. utmi-mode = <2>;
  72. ranges;
  73. };
  74. OMAP CONTROL USB
  75. Required properties:
  76. - compatible: Should be "ti,omap-control-usb"
  77. - reg : Address and length of the register set for the device. It contains
  78. the address of "control_dev_conf" and "otghs_control" or "phy_power_usb"
  79. depending upon omap4 or omap5.
  80. - reg-names: The names of the register addresses corresponding to the registers
  81. filled in "reg".
  82. - ti,type: This is used to differentiate whether the control module has
  83. usb mailbox or usb3 phy power. omap4 has usb mailbox in control module to
  84. notify events to the musb core and omap5 has usb3 phy power register to
  85. power on usb3 phy. Should be "1" if it has mailbox and "2" if it has usb3
  86. phy power.
  87. omap_control_usb: omap-control-usb@4a002300 {
  88. compatible = "ti,omap-control-usb";
  89. reg = <0x4a002300 0x4>,
  90. <0x4a00233c 0x4>;
  91. reg-names = "control_dev_conf", "otghs_control";
  92. ti,type = <1>;
  93. };