aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts/sun9i-a80.dtsi
diff options
context:
space:
mode:
authorChen-Yu Tsai <wens@csie.org>2014-10-20 10:10:30 -0400
committerMaxime Ripard <maxime.ripard@free-electrons.com>2014-10-21 15:50:39 -0400
commitac399a971d4094afaf07828c9bdf7c715ba8d167 (patch)
tree7efedc85fff22b6487f4c932eb62cd754d56388f /arch/arm/boot/dts/sun9i-a80.dtsi
parent2c4791cdfab5cd83efbe6ee1ba59c197d49fbcb8 (diff)
ARM: dts: sun9i: Add basic clocks and reset controls
Now that we have driver support for the basic clocks, add them to the dtsi and update existing peripherals. Also add reset controls to match. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Diffstat (limited to 'arch/arm/boot/dts/sun9i-a80.dtsi')
-rw-r--r--arch/arm/boot/dts/sun9i-a80.dtsi177
1 files changed, 171 insertions, 6 deletions
diff --git a/arch/arm/boot/dts/sun9i-a80.dtsi b/arch/arm/boot/dts/sun9i-a80.dtsi
index 5e2ec4b71f5b..7bcab5685d0e 100644
--- a/arch/arm/boot/dts/sun9i-a80.dtsi
+++ b/arch/arm/boot/dts/sun9i-a80.dtsi
@@ -142,6 +142,135 @@
142 clock-frequency = <32768>; 142 clock-frequency = <32768>;
143 clock-output-names = "osc32k"; 143 clock-output-names = "osc32k";
144 }; 144 };
145
146 pll4: clk@0600000c {
147 #clock-cells = <0>;
148 compatible = "allwinner,sun9i-a80-pll4-clk";
149 reg = <0x0600000c 0x4>;
150 clocks = <&osc24M>;
151 clock-output-names = "pll4";
152 };
153
154 pll12: clk@0600002c {
155 #clock-cells = <0>;
156 compatible = "allwinner,sun9i-a80-pll4-clk";
157 reg = <0x0600002c 0x4>;
158 clocks = <&osc24M>;
159 clock-output-names = "pll12";
160 };
161
162 gt_clk: clk@0600005c {
163 #clock-cells = <0>;
164 compatible = "allwinner,sun9i-a80-gt-clk";
165 reg = <0x0600005c 0x4>;
166 clocks = <&osc24M>, <&pll4>, <&pll12>, <&pll12>;
167 clock-output-names = "gt";
168 };
169
170 ahb0: clk@06000060 {
171 #clock-cells = <0>;
172 compatible = "allwinner,sun9i-a80-ahb-clk";
173 reg = <0x06000060 0x4>;
174 clocks = <&gt_clk>, <&pll4>, <&pll12>, <&pll12>;
175 clock-output-names = "ahb0";
176 };
177
178 ahb1: clk@06000064 {
179 #clock-cells = <0>;
180 compatible = "allwinner,sun9i-a80-ahb-clk";
181 reg = <0x06000064 0x4>;
182 clocks = <&gt_clk>, <&pll4>, <&pll12>, <&pll12>;
183 clock-output-names = "ahb1";
184 };
185
186 ahb2: clk@06000068 {
187 #clock-cells = <0>;
188 compatible = "allwinner,sun9i-a80-ahb-clk";
189 reg = <0x06000068 0x4>;
190 clocks = <&gt_clk>, <&pll4>, <&pll12>, <&pll12>;
191 clock-output-names = "ahb2";
192 };
193
194 apb0: clk@06000070 {
195 #clock-cells = <0>;
196 compatible = "allwinner,sun9i-a80-apb0-clk";
197 reg = <0x06000070 0x4>;
198 clocks = <&osc24M>, <&pll4>;
199 clock-output-names = "apb0";
200 };
201
202 apb1: clk@06000074 {
203 #clock-cells = <0>;
204 compatible = "allwinner,sun9i-a80-apb1-clk";
205 reg = <0x06000074 0x4>;
206 clocks = <&osc24M>, <&pll4>;
207 clock-output-names = "apb1";
208 };
209
210 cci400_clk: clk@06000078 {
211 #clock-cells = <0>;
212 compatible = "allwinner,sun9i-a80-gt-clk";
213 reg = <0x06000078 0x4>;
214 clocks = <&osc24M>, <&pll4>, <&pll12>, <&pll12>;
215 clock-output-names = "cci400";
216 };
217
218 ahb0_gates: clk@06000580 {
219 #clock-cells = <1>;
220 compatible = "allwinner,sun9i-a80-ahb0-gates-clk";
221 reg = <0x06000580 0x4>;
222 clocks = <&ahb0>;
223 clock-output-names = "ahb0_fd", "ahb0_ve", "ahb0_gpu",
224 "ahb0_ss", "ahb0_sd", "ahb0_nand1",
225 "ahb0_nand0", "ahb0_sdram",
226 "ahb0_mipi_hsi", "ahb0_sata", "ahb0_ts",
227 "ahb0_spi0","ahb0_spi1", "ahb0_spi2",
228 "ahb0_spi3";
229 };
230
231 ahb1_gates: clk@06000584 {
232 #clock-cells = <1>;
233 compatible = "allwinner,sun9i-a80-ahb1-gates-clk";
234 reg = <0x06000584 0x4>;
235 clocks = <&ahb1>;
236 clock-output-names = "ahb1_usbotg", "ahb1_usbhci",
237 "ahb1_gmac", "ahb1_msgbox",
238 "ahb1_spinlock", "ahb1_hstimer",
239 "ahb1_dma";
240 };
241
242 ahb2_gates: clk@06000588 {
243 #clock-cells = <1>;
244 compatible = "allwinner,sun9i-a80-ahb2-gates-clk";
245 reg = <0x06000588 0x4>;
246 clocks = <&ahb2>;
247 clock-output-names = "ahb2_lcd0", "ahb2_lcd1",
248 "ahb2_edp", "ahb2_csi", "ahb2_hdmi",
249 "ahb2_de", "ahb2_mp", "ahb2_mipi_dsi";
250 };
251
252 apb0_gates: clk@06000590 {
253 #clock-cells = <1>;
254 compatible = "allwinner,sun9i-a80-apb0-gates-clk";
255 reg = <0x06000590 0x4>;
256 clocks = <&apb0>;
257 clock-output-names = "apb0_spdif", "apb0_pio",
258 "apb0_ac97", "apb0_i2s0", "apb0_i2s1",
259 "apb0_lradc", "apb0_gpadc", "apb0_twd",
260 "apb0_cirtx";
261 };
262
263 apb1_gates: clk@06000594 {
264 #clock-cells = <1>;
265 compatible = "allwinner,sun9i-a80-apb1-gates-clk";
266 reg = <0x06000594 0x4>;
267 clocks = <&apb1>;
268 clock-output-names = "apb1_i2c0", "apb1_i2c1",
269 "apb1_i2c2", "apb1_i2c3", "apb1_i2c4",
270 "apb1_uart0", "apb1_uart1",
271 "apb1_uart2", "apb1_uart3",
272 "apb1_uart4", "apb1_uart5";
273 };
145 }; 274 };
146 275
147 soc { 276 soc {
@@ -165,6 +294,36 @@
165 interrupts = <1 9 0xf04>; 294 interrupts = <1 9 0xf04>;
166 }; 295 };
167 296
297 ahb0_resets: reset@060005a0 {
298 #reset-cells = <1>;
299 compatible = "allwinner,sun6i-a31-clock-reset";
300 reg = <0x060005a0 0x4>;
301 };
302
303 ahb1_resets: reset@060005a4 {
304 #reset-cells = <1>;
305 compatible = "allwinner,sun6i-a31-clock-reset";
306 reg = <0x060005a4 0x4>;
307 };
308
309 ahb2_resets: reset@060005a8 {
310 #reset-cells = <1>;
311 compatible = "allwinner,sun6i-a31-clock-reset";
312 reg = <0x060005a8 0x4>;
313 };
314
315 apb0_resets: reset@060005b0 {
316 #reset-cells = <1>;
317 compatible = "allwinner,sun6i-a31-clock-reset";
318 reg = <0x060005b0 0x4>;
319 };
320
321 apb1_resets: reset@060005b4 {
322 #reset-cells = <1>;
323 compatible = "allwinner,sun6i-a31-clock-reset";
324 reg = <0x060005b4 0x4>;
325 };
326
168 timer@06000c00 { 327 timer@06000c00 {
169 compatible = "allwinner,sun4i-a10-timer"; 328 compatible = "allwinner,sun4i-a10-timer";
170 reg = <0x06000c00 0xa0>; 329 reg = <0x06000c00 0xa0>;
@@ -184,7 +343,8 @@
184 interrupts = <0 0 4>; 343 interrupts = <0 0 4>;
185 reg-shift = <2>; 344 reg-shift = <2>;
186 reg-io-width = <4>; 345 reg-io-width = <4>;
187 clocks = <&osc24M>; 346 clocks = <&apb1_gates 16>;
347 resets = <&apb1_resets 16>;
188 status = "disabled"; 348 status = "disabled";
189 }; 349 };
190 350
@@ -194,7 +354,8 @@
194 interrupts = <0 1 4>; 354 interrupts = <0 1 4>;
195 reg-shift = <2>; 355 reg-shift = <2>;
196 reg-io-width = <4>; 356 reg-io-width = <4>;
197 clocks = <&osc24M>; 357 clocks = <&apb1_gates 17>;
358 resets = <&apb1_resets 17>;
198 status = "disabled"; 359 status = "disabled";
199 }; 360 };
200 361
@@ -204,7 +365,8 @@
204 interrupts = <0 2 4>; 365 interrupts = <0 2 4>;
205 reg-shift = <2>; 366 reg-shift = <2>;
206 reg-io-width = <4>; 367 reg-io-width = <4>;
207 clocks = <&osc24M>; 368 clocks = <&apb1_gates 18>;
369 resets = <&apb1_resets 18>;
208 status = "disabled"; 370 status = "disabled";
209 }; 371 };
210 372
@@ -214,7 +376,8 @@
214 interrupts = <0 3 4>; 376 interrupts = <0 3 4>;
215 reg-shift = <2>; 377 reg-shift = <2>;
216 reg-io-width = <4>; 378 reg-io-width = <4>;
217 clocks = <&osc24M>; 379 clocks = <&apb1_gates 19>;
380 resets = <&apb1_resets 19>;
218 status = "disabled"; 381 status = "disabled";
219 }; 382 };
220 383
@@ -224,7 +387,8 @@
224 interrupts = <0 4 4>; 387 interrupts = <0 4 4>;
225 reg-shift = <2>; 388 reg-shift = <2>;
226 reg-io-width = <4>; 389 reg-io-width = <4>;
227 clocks = <&osc24M>; 390 clocks = <&apb1_gates 20>;
391 resets = <&apb1_resets 20>;
228 status = "disabled"; 392 status = "disabled";
229 }; 393 };
230 394
@@ -234,7 +398,8 @@
234 interrupts = <0 5 4>; 398 interrupts = <0 5 4>;
235 reg-shift = <2>; 399 reg-shift = <2>;
236 reg-io-width = <4>; 400 reg-io-width = <4>;
237 clocks = <&osc24M>; 401 clocks = <&apb1_gates 21>;
402 resets = <&apb1_resets 21>;
238 status = "disabled"; 403 status = "disabled";
239 }; 404 };
240 405