Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / clock / renesas,rcar-usb2-clock-sel.txt
1 * Renesas R-Car USB 2.0 clock selector
2
3 This file provides information on what the device node for the R-Car USB 2.0
4 clock selector.
5
6 If you connect an external clock to the USB_EXTAL pin only, you should set
7 the clock rate to "usb_extal" node only.
8 If you connect an oscillator to both the USB_XTAL and USB_EXTAL, this module
9 is not needed because this is default setting. (Of course, you can set the
10 clock rates to both "usb_extal" and "usb_xtal" nodes.
11
12 Case 1: An external clock connects to R-Car SoC
13         +----------+   +--- R-Car ---------------------+
14         |External  |---|USB_EXTAL ---> all usb channels|
15         |clock     |   |USB_XTAL                       |
16         +----------+   +-------------------------------+
17 In this case, we need this driver with "usb_extal" clock.
18
19 Case 2: An oscillator connects to R-Car SoC
20         +----------+   +--- R-Car ---------------------+
21         |Oscillator|---|USB_EXTAL -+-> all usb channels|
22         |          |---|USB_XTAL --+                   |
23         +----------+   +-------------------------------+
24 In this case, we don't need this selector.
25
26 Required properties:
27 - compatible: "renesas,r8a7795-rcar-usb2-clock-sel" if the device is a part of
28               an R8A7795 SoC.
29               "renesas,r8a7796-rcar-usb2-clock-sel" if the device if a part of
30               an R8A7796 SoC.
31               "renesas,rcar-gen3-usb2-clock-sel" for a generic R-Car Gen3
32               compatible device.
33
34               When compatible with the generic version, nodes must list the
35               SoC-specific version corresponding to the platform first
36               followed by the generic version.
37
38 - reg: offset and length of the USB 2.0 clock selector register block.
39 - clocks: A list of phandles and specifier pairs.
40 - clock-names: Name of the clocks.
41  - The functional clock must be "ehci_ohci"
42  - The USB_EXTAL clock pin must be "usb_extal"
43  - The USB_XTAL clock pin must be "usb_xtal"
44 - #clock-cells: Must be 0
45
46 Example (R-Car H3):
47
48         usb2_clksel: clock-controller@e6590630 {
49                 compatible = "renesas,r8a77950-rcar-usb2-clock-sel",
50                              "renesas,rcar-gen3-usb2-clock-sel";
51                 reg = <0 0xe6590630 0 0x02>;
52                 clocks = <&cpg CPG_MOD 703>, <&usb_extal>, <&usb_xtal>;
53                 clock-names = "ehci_ohci", "usb_extal", "usb_xtal";
54                 #clock-cells = <0>;
55         };