omap-usb-host.txt 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. OMAP HS USB Host
  2. Required properties:
  3. - compatible: should be "ti,usbhs-host"
  4. - reg: should contain one register range i.e. start and length
  5. - ti,hwmods: must contain "usb_host_hs"
  6. Optional properties:
  7. - num-ports: number of USB ports. Usually this is automatically detected
  8. from the IP's revision register but can be overridden by specifying
  9. this property. A maximum of 3 ports are supported at the moment.
  10. - portN-mode: String specifying the port mode for port N, where N can be
  11. from 1 to 3. If the port mode is not specified, that port is treated
  12. as unused. When specified, it must be one of the following.
  13. "ehci-phy",
  14. "ehci-tll",
  15. "ehci-hsic",
  16. "ohci-phy-6pin-datse0",
  17. "ohci-phy-6pin-dpdm",
  18. "ohci-phy-3pin-datse0",
  19. "ohci-phy-4pin-dpdm",
  20. "ohci-tll-6pin-datse0",
  21. "ohci-tll-6pin-dpdm",
  22. "ohci-tll-3pin-datse0",
  23. "ohci-tll-4pin-dpdm",
  24. "ohci-tll-2pin-datse0",
  25. "ohci-tll-2pin-dpdm",
  26. - single-ulpi-bypass: Must be present if the controller contains a single
  27. ULPI bypass control bit. e.g. OMAP3 silicon <= ES2.1
  28. - clocks: a list of phandles and clock-specifier pairs, one for each entry in
  29. clock-names.
  30. - clock-names: should include:
  31. For OMAP3
  32. * "usbhost_120m_fck" - 120MHz Functional clock.
  33. For OMAP4+
  34. * "refclk_60m_int" - 60MHz internal reference clock for UTMI clock mux
  35. * "refclk_60m_ext_p1" - 60MHz external ref. clock for Port 1's UTMI clock mux.
  36. * "refclk_60m_ext_p2" - 60MHz external ref. clock for Port 2's UTMI clock mux
  37. * "utmi_p1_gfclk" - Port 1 UTMI clock mux.
  38. * "utmi_p2_gfclk" - Port 2 UTMI clock mux.
  39. * "usb_host_hs_utmi_p1_clk" - Port 1 UTMI clock gate.
  40. * "usb_host_hs_utmi_p2_clk" - Port 2 UTMI clock gate.
  41. * "usb_host_hs_utmi_p3_clk" - Port 3 UTMI clock gate.
  42. * "usb_host_hs_hsic480m_p1_clk" - Port 1 480MHz HSIC clock gate.
  43. * "usb_host_hs_hsic480m_p2_clk" - Port 2 480MHz HSIC clock gate.
  44. * "usb_host_hs_hsic480m_p3_clk" - Port 3 480MHz HSIC clock gate.
  45. * "usb_host_hs_hsic60m_p1_clk" - Port 1 60MHz HSIC clock gate.
  46. * "usb_host_hs_hsic60m_p2_clk" - Port 2 60MHz HSIC clock gate.
  47. * "usb_host_hs_hsic60m_p3_clk" - Port 3 60MHz HSIC clock gate.
  48. Required properties if child node exists:
  49. - #address-cells: Must be 1
  50. - #size-cells: Must be 1
  51. - ranges: must be present
  52. Properties for children:
  53. The OMAP HS USB Host subsystem contains EHCI and OHCI controllers.
  54. See Documentation/devicetree/bindings/usb/omap-ehci.txt and
  55. omap3-ohci.txt
  56. Example for OMAP4:
  57. usbhshost: usbhshost@4a064000 {
  58. compatible = "ti,usbhs-host";
  59. reg = <0x4a064000 0x800>;
  60. ti,hwmods = "usb_host_hs";
  61. #address-cells = <1>;
  62. #size-cells = <1>;
  63. ranges;
  64. usbhsohci: ohci@4a064800 {
  65. compatible = "ti,ohci-omap3", "usb-ohci";
  66. reg = <0x4a064800 0x400>;
  67. interrupt-parent = <&gic>;
  68. interrupts = <0 76 0x4>;
  69. };
  70. usbhsehci: ehci@4a064c00 {
  71. compatible = "ti,ehci-omap", "usb-ehci";
  72. reg = <0x4a064c00 0x400>;
  73. interrupt-parent = <&gic>;
  74. interrupts = <0 77 0x4>;
  75. };
  76. };
  77. &usbhshost {
  78. port1-mode = "ehci-phy";
  79. port2-mode = "ehci-tll";
  80. port3-mode = "ehci-phy";
  81. };
  82. &usbhsehci {
  83. phys = <&hsusb1_phy 0 &hsusb3_phy>;
  84. };