xref: /freebsd/sys/contrib/device-tree/Bindings/clock/allwinner,sun4i-a10-ccu.yaml (revision 5def4c47d4bd90b209b9b4a4ba9faec15846d8fd)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel Vadottitle: Allwinner Clock Control Unit Device Tree Bindings
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Chen-Yu Tsai <wens@csie.org>
11c66ec88fSEmmanuel Vadot  - Maxime Ripard <mripard@kernel.org>
12c66ec88fSEmmanuel Vadot
13c66ec88fSEmmanuel Vadotproperties:
14c66ec88fSEmmanuel Vadot  "#clock-cells":
15c66ec88fSEmmanuel Vadot    const: 1
16c66ec88fSEmmanuel Vadot
17c66ec88fSEmmanuel Vadot  "#reset-cells":
18c66ec88fSEmmanuel Vadot    const: 1
19c66ec88fSEmmanuel Vadot
20c66ec88fSEmmanuel Vadot  compatible:
21c66ec88fSEmmanuel Vadot    enum:
22c66ec88fSEmmanuel Vadot      - allwinner,sun4i-a10-ccu
23c66ec88fSEmmanuel Vadot      - allwinner,sun5i-a10s-ccu
24c66ec88fSEmmanuel Vadot      - allwinner,sun5i-a13-ccu
25c66ec88fSEmmanuel Vadot      - allwinner,sun6i-a31-ccu
26c66ec88fSEmmanuel Vadot      - allwinner,sun7i-a20-ccu
27c66ec88fSEmmanuel Vadot      - allwinner,sun8i-a23-ccu
28c66ec88fSEmmanuel Vadot      - allwinner,sun8i-a33-ccu
29c66ec88fSEmmanuel Vadot      - allwinner,sun8i-a83t-ccu
30c66ec88fSEmmanuel Vadot      - allwinner,sun8i-a83t-r-ccu
31c66ec88fSEmmanuel Vadot      - allwinner,sun8i-h3-ccu
32c66ec88fSEmmanuel Vadot      - allwinner,sun8i-h3-r-ccu
33c66ec88fSEmmanuel Vadot      - allwinner,sun8i-r40-ccu
34c66ec88fSEmmanuel Vadot      - allwinner,sun8i-v3-ccu
35c66ec88fSEmmanuel Vadot      - allwinner,sun8i-v3s-ccu
36c66ec88fSEmmanuel Vadot      - allwinner,sun9i-a80-ccu
37c66ec88fSEmmanuel Vadot      - allwinner,sun50i-a64-ccu
38c66ec88fSEmmanuel Vadot      - allwinner,sun50i-a64-r-ccu
396be33864SEmmanuel Vadot      - allwinner,sun50i-a100-ccu
406be33864SEmmanuel Vadot      - allwinner,sun50i-a100-r-ccu
41c66ec88fSEmmanuel Vadot      - allwinner,sun50i-h5-ccu
42c66ec88fSEmmanuel Vadot      - allwinner,sun50i-h6-ccu
43c66ec88fSEmmanuel Vadot      - allwinner,sun50i-h6-r-ccu
44*5def4c47SEmmanuel Vadot      - allwinner,sun50i-h616-ccu
45*5def4c47SEmmanuel Vadot      - allwinner,sun50i-h616-r-ccu
46c66ec88fSEmmanuel Vadot      - allwinner,suniv-f1c100s-ccu
47c66ec88fSEmmanuel Vadot      - nextthing,gr8-ccu
48c66ec88fSEmmanuel Vadot
49c66ec88fSEmmanuel Vadot  reg:
50c66ec88fSEmmanuel Vadot    maxItems: 1
51c66ec88fSEmmanuel Vadot
52c66ec88fSEmmanuel Vadot  clocks:
53c66ec88fSEmmanuel Vadot    minItems: 2
54c66ec88fSEmmanuel Vadot    maxItems: 4
55c66ec88fSEmmanuel Vadot    items:
56c66ec88fSEmmanuel Vadot      - description: High Frequency Oscillator (usually at 24MHz)
57c66ec88fSEmmanuel Vadot      - description: Low Frequency Oscillator (usually at 32kHz)
58c66ec88fSEmmanuel Vadot      - description: Internal Oscillator
59c66ec88fSEmmanuel Vadot      - description: Peripherals PLL
60c66ec88fSEmmanuel Vadot
61c66ec88fSEmmanuel Vadot  clock-names:
62c66ec88fSEmmanuel Vadot    minItems: 2
63c66ec88fSEmmanuel Vadot    maxItems: 4
64c66ec88fSEmmanuel Vadot    items:
65c66ec88fSEmmanuel Vadot      - const: hosc
66c66ec88fSEmmanuel Vadot      - const: losc
67c66ec88fSEmmanuel Vadot      - const: iosc
68c66ec88fSEmmanuel Vadot      - const: pll-periph
69c66ec88fSEmmanuel Vadot
70c66ec88fSEmmanuel Vadotrequired:
71c66ec88fSEmmanuel Vadot  - "#clock-cells"
72c66ec88fSEmmanuel Vadot  - "#reset-cells"
73c66ec88fSEmmanuel Vadot  - compatible
74c66ec88fSEmmanuel Vadot  - reg
75c66ec88fSEmmanuel Vadot  - clocks
76c66ec88fSEmmanuel Vadot  - clock-names
77c66ec88fSEmmanuel Vadot
78c66ec88fSEmmanuel Vadotif:
79c66ec88fSEmmanuel Vadot  properties:
80c66ec88fSEmmanuel Vadot    compatible:
81c66ec88fSEmmanuel Vadot      enum:
82c66ec88fSEmmanuel Vadot        - allwinner,sun8i-a83t-r-ccu
83c66ec88fSEmmanuel Vadot        - allwinner,sun8i-h3-r-ccu
84c66ec88fSEmmanuel Vadot        - allwinner,sun50i-a64-r-ccu
856be33864SEmmanuel Vadot        - allwinner,sun50i-a100-r-ccu
86c66ec88fSEmmanuel Vadot        - allwinner,sun50i-h6-r-ccu
87*5def4c47SEmmanuel Vadot        - allwinner,sun50i-h616-r-ccu
88c66ec88fSEmmanuel Vadot
89c66ec88fSEmmanuel Vadotthen:
90c66ec88fSEmmanuel Vadot  properties:
91c66ec88fSEmmanuel Vadot    clocks:
92c66ec88fSEmmanuel Vadot      minItems: 4
93c66ec88fSEmmanuel Vadot      maxItems: 4
94c66ec88fSEmmanuel Vadot
95c66ec88fSEmmanuel Vadot    clock-names:
96c66ec88fSEmmanuel Vadot      minItems: 4
97c66ec88fSEmmanuel Vadot      maxItems: 4
98c66ec88fSEmmanuel Vadot
99c66ec88fSEmmanuel Vadotelse:
100c66ec88fSEmmanuel Vadot  if:
101c66ec88fSEmmanuel Vadot    properties:
102c66ec88fSEmmanuel Vadot      compatible:
1036be33864SEmmanuel Vadot        enum:
1046be33864SEmmanuel Vadot          - allwinner,sun50i-a100-ccu
1056be33864SEmmanuel Vadot          - allwinner,sun50i-h6-ccu
106*5def4c47SEmmanuel Vadot          - allwinner,sun50i-h616-ccu
107c66ec88fSEmmanuel Vadot
108c66ec88fSEmmanuel Vadot  then:
109c66ec88fSEmmanuel Vadot    properties:
110c66ec88fSEmmanuel Vadot      clocks:
111c66ec88fSEmmanuel Vadot        minItems: 3
112c66ec88fSEmmanuel Vadot        maxItems: 3
113c66ec88fSEmmanuel Vadot
114c66ec88fSEmmanuel Vadot      clock-names:
115c66ec88fSEmmanuel Vadot        minItems: 3
116c66ec88fSEmmanuel Vadot        maxItems: 3
117c66ec88fSEmmanuel Vadot
118c66ec88fSEmmanuel Vadot  else:
119c66ec88fSEmmanuel Vadot    properties:
120c66ec88fSEmmanuel Vadot      clocks:
121c66ec88fSEmmanuel Vadot        minItems: 2
122c66ec88fSEmmanuel Vadot        maxItems: 2
123c66ec88fSEmmanuel Vadot
124c66ec88fSEmmanuel Vadot      clock-names:
125c66ec88fSEmmanuel Vadot        minItems: 2
126c66ec88fSEmmanuel Vadot        maxItems: 2
127c66ec88fSEmmanuel Vadot
128c66ec88fSEmmanuel VadotadditionalProperties: false
129c66ec88fSEmmanuel Vadot
130c66ec88fSEmmanuel Vadotexamples:
131c66ec88fSEmmanuel Vadot  - |
132c66ec88fSEmmanuel Vadot    ccu: clock@1c20000 {
133c66ec88fSEmmanuel Vadot        compatible = "allwinner,sun8i-h3-ccu";
134c66ec88fSEmmanuel Vadot        reg = <0x01c20000 0x400>;
135c66ec88fSEmmanuel Vadot        clocks = <&osc24M>, <&osc32k>;
136c66ec88fSEmmanuel Vadot        clock-names = "hosc", "losc";
137c66ec88fSEmmanuel Vadot        #clock-cells = <1>;
138c66ec88fSEmmanuel Vadot        #reset-cells = <1>;
139c66ec88fSEmmanuel Vadot    };
140c66ec88fSEmmanuel Vadot
141c66ec88fSEmmanuel Vadot  - |
142c66ec88fSEmmanuel Vadot    r_ccu: clock@1f01400 {
143c66ec88fSEmmanuel Vadot        compatible = "allwinner,sun50i-a64-r-ccu";
144c66ec88fSEmmanuel Vadot        reg = <0x01f01400 0x100>;
145c66ec88fSEmmanuel Vadot        clocks = <&osc24M>, <&osc32k>, <&iosc>, <&ccu 11>;
146c66ec88fSEmmanuel Vadot        clock-names = "hosc", "losc", "iosc", "pll-periph";
147c66ec88fSEmmanuel Vadot        #clock-cells = <1>;
148c66ec88fSEmmanuel Vadot        #reset-cells = <1>;
149c66ec88fSEmmanuel Vadot    };
150c66ec88fSEmmanuel Vadot
151c66ec88fSEmmanuel Vadot...
152