Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1Allwinner Clock Control Unit Binding
2------------------------------------
3
4Required properties :
5- compatible: must contain one of the following compatibles:
6 - "allwinner,sun4i-a10-ccu"
7 - "allwinner,sun5i-a10s-ccu"
8 - "allwinner,sun5i-a13-ccu"
9 - "allwinner,sun6i-a31-ccu"
10 - "allwinner,sun7i-a20-ccu"
11 - "allwinner,sun8i-a23-ccu"
12 - "allwinner,sun8i-a33-ccu"
13 - "allwinner,sun8i-a83t-ccu"
14 - "allwinner,sun8i-a83t-r-ccu"
15 - "allwinner,sun8i-h3-ccu"
16 - "allwinner,sun8i-h3-r-ccu"
17+ - "allwinner,sun8i-r40-ccu"
18 - "allwinner,sun8i-v3s-ccu"
19 - "allwinner,sun9i-a80-ccu"
20 - "allwinner,sun50i-a64-ccu"
21 - "allwinner,sun50i-a64-r-ccu"
22 - "allwinner,sun50i-h5-ccu"
23 - "nextthing,gr8-ccu"
24
25- reg: Must contain the registers base address and length
26- clocks: phandle to the oscillators feeding the CCU. Two are needed:
27 - "hosc": the high frequency oscillator (usually at 24MHz)
28 - "losc": the low frequency oscillator (usually at 32kHz)
29 On the A83T, this is the internal 16MHz oscillator divided by 512
30- clock-names: Must contain the clock names described just above
31- #clock-cells : must contain 1
32- #reset-cells : must contain 1
33
34For the PRCM CCUs on A83T/H3/A64, two more clocks are needed:
35- "pll-periph": the SoC's peripheral PLL from the main CCU
36- "iosc": the SoC's internal frequency oscillator
37
38Example for generic CCU:
39ccu: clock@1c20000 {
40 compatible = "allwinner,sun8i-h3-ccu";
41 reg = <0x01c20000 0x400>;
42 clocks = <&osc24M>, <&osc32k>;
43 clock-names = "hosc", "losc";
44 #clock-cells = <1>;
45 #reset-cells = <1>;
46};
47
48Example for PRCM CCU:
49r_ccu: clock@1f01400 {
50 compatible = "allwinner,sun50i-a64-r-ccu";
51 reg = <0x01f01400 0x100>;
52 clocks = <&osc24M>, <&osc32k>, <&iosc>, <&ccu CLK_PLL_PERIPH0>;
53 clock-names = "hosc", "losc", "iosc", "pll-periph";
54 #clock-cells = <1>;
55 #reset-cells = <1>;
56};