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