exynos-usb.txt 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. Samsung Exynos SoC USB controller
  2. The USB devices interface with USB controllers on Exynos SOCs.
  3. The device node has following properties.
  4. EHCI
  5. Required properties:
  6. - compatible: should be "samsung,exynos4210-ehci" for USB 2.0
  7. EHCI controller in host mode.
  8. - reg: physical base address of the controller and length of memory mapped
  9. region.
  10. - interrupts: interrupt number to the cpu.
  11. - clocks: from common clock binding: handle to usb clock.
  12. - clock-names: from common clock binding: Shall be "usbhost".
  13. Optional properties:
  14. - samsung,vbus-gpio: if present, specifies the GPIO that
  15. needs to be pulled up for the bus to be powered.
  16. Example:
  17. usb@12110000 {
  18. compatible = "samsung,exynos4210-ehci";
  19. reg = <0x12110000 0x100>;
  20. interrupts = <0 71 0>;
  21. samsung,vbus-gpio = <&gpx2 6 1 3 3>;
  22. clocks = <&clock 285>;
  23. clock-names = "usbhost";
  24. };
  25. OHCI
  26. Required properties:
  27. - compatible: should be "samsung,exynos4210-ohci" for USB 2.0
  28. OHCI companion controller in host mode.
  29. - reg: physical base address of the controller and length of memory mapped
  30. region.
  31. - interrupts: interrupt number to the cpu.
  32. - clocks: from common clock binding: handle to usb clock.
  33. - clock-names: from common clock binding: Shall be "usbhost".
  34. Example:
  35. usb@12120000 {
  36. compatible = "samsung,exynos4210-ohci";
  37. reg = <0x12120000 0x100>;
  38. interrupts = <0 71 0>;
  39. clocks = <&clock 285>;
  40. clock-names = "usbhost";
  41. };
  42. DWC3
  43. Required properties:
  44. - compatible: should be "samsung,exynos5250-dwusb3" for USB 3.0 DWC3
  45. controller.
  46. - #address-cells, #size-cells : should be '1' if the device has sub-nodes
  47. with 'reg' property.
  48. - ranges: allows valid 1:1 translation between child's address space and
  49. parent's address space
  50. - clocks: Clock IDs array as required by the controller.
  51. - clock-names: names of clocks correseponding to IDs in the clock property
  52. Sub-nodes:
  53. The dwc3 core should be added as subnode to Exynos dwc3 glue.
  54. - dwc3 :
  55. The binding details of dwc3 can be found in:
  56. Documentation/devicetree/bindings/usb/dwc3.txt
  57. Example:
  58. usb@12000000 {
  59. compatible = "samsung,exynos5250-dwusb3";
  60. clocks = <&clock 286>;
  61. clock-names = "usbdrd30";
  62. #address-cells = <1>;
  63. #size-cells = <1>;
  64. ranges;
  65. dwc3 {
  66. compatible = "synopsys,dwc3";
  67. reg = <0x12000000 0x10000>;
  68. interrupts = <0 72 0>;
  69. usb-phy = <&usb2_phy &usb3_phy>;
  70. };
  71. };