Merge tag 'csky-for-linus-4.20-fixup-dtb' of https://github.com/c-sky/csky-linux
[linux-block.git] / Documentation / devicetree / bindings / clock / actions,owl-cmu.txt
CommitLineData
d0e45d68 1* Actions Semi Owl Clock Management Unit (CMU)
06d42212 2
d0e45d68
SS
3The Actions Semi Owl Clock Management Unit generates and supplies clock
4to various controllers within the SoC. The clock binding described here is
5applicable to S900 and S700 SoC's.
06d42212
MS
6
7Required Properties:
8
d0e45d68
SS
9- compatible: should be one of the following,
10 "actions,s900-cmu"
11 "actions,s700-cmu"
06d42212
MS
12- reg: physical base address of the controller and length of memory mapped
13 region.
14- clocks: Reference to the parent clocks ("hosc", "losc")
15- #clock-cells: should be 1.
46b5dfab 16- #reset-cells: should be 1.
06d42212
MS
17
18Each clock is assigned an identifier, and client nodes can use this identifier
19to specify the clock which they consume.
20
d0e45d68
SS
21All available clocks are defined as preprocessor macros in corresponding
22dt-bindings/clock/actions,s900-cmu.h or actions,s700-cmu.h header and can be
23used in device tree sources.
06d42212
MS
24
25External clocks:
26
27The hosc clock used as input for the plls is generated outside the SoC. It is
28expected that it is defined using standard clock bindings as "hosc".
29
d0e45d68 30Actions Semi S900 CMU also requires one more clock:
06d42212
MS
31 - "losc" - internal low frequency oscillator
32
33Example: Clock Management Unit node:
34
35 cmu: clock-controller@e0160000 {
36 compatible = "actions,s900-cmu";
37 reg = <0x0 0xe0160000 0x0 0x1000>;
38 clocks = <&hosc>, <&losc>;
39 #clock-cells = <1>;
46b5dfab 40 #reset-cells = <1>;
06d42212
MS
41 };
42
43Example: UART controller node that consumes clock generated by the clock
44management unit:
45
46 uart: serial@e012a000 {
47 compatible = "actions,s900-uart", "actions,owl-uart";
48 reg = <0x0 0xe012a000 0x0 0x2000>;
49 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
50 clocks = <&cmu CLK_UART5>;
51 };