Merge tag 'selinux-pr-20181115' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / clock / ingenic,cgu.txt
1 Ingenic SoC CGU binding
2
3 The CGU in an Ingenic SoC provides all the clocks generated on-chip. It
4 typically includes a variety of PLLs, multiplexers, dividers & gates in order
5 to provide many different clock signals derived from only 2 external source
6 clocks.
7
8 Required properties:
9 - compatible : Should be one of:
10   * ingenic,jz4740-cgu
11   * ingenic,jz4725b-cgu
12   * ingenic,jz4770-cgu
13   * ingenic,jz4780-cgu
14 - reg : The address & length of the CGU registers.
15 - clocks : List of phandle & clock specifiers for clocks external to the CGU.
16   Two such external clocks should be specified - first the external crystal
17   "ext" and second the RTC clock source "rtc".
18 - clock-names : List of name strings for the external clocks.
19 - #clock-cells: Should be 1.
20   Clock consumers specify this argument to identify a clock. The valid values
21   may be found in <dt-bindings/clock/<soctype>-cgu.h>.
22
23 Example SoC include file:
24
25 / {
26         cgu: jz4740-cgu {
27                 compatible = "ingenic,jz4740-cgu";
28                 reg = <0x10000000 0x100>;
29                 #clock-cells = <1>;
30         };
31
32         uart0: serial@10030000 {
33                 clocks = <&cgu JZ4740_CLK_UART0>;
34         };
35 };
36
37 Example board file:
38
39 / {
40         ext: clock@0 {
41                 compatible = "fixed-clock";
42                 #clock-cells = <0>;
43                 clock-frequency = <12000000>;
44         };
45
46         rtc: clock@1 {
47                 compatible = "fixed-clock";
48                 #clock-cells = <0>;
49                 clock-frequency = <32768>;
50         };
51
52         &cgu {
53                 clocks = <&ext> <&rtc>;
54                 clock-names: "ext", "rtc";
55         };
56 };