aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts/sun8i-a23.dtsi
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-02-21 15:30:30 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2015-02-21 15:30:30 -0500
commit18a8d49973667aa016e68826eeb374788b7c63b0 (patch)
treed7f90fcf05087ce50ee931b596e60e4c3c082a29 /arch/arm/boot/dts/sun8i-a23.dtsi
parentc189cb8ef62832f33b6cf757350a0270532a1ad8 (diff)
parentec02ace8ca0a50eef430d3676de5c5fa978b0e29 (diff)
Merge tag 'clk-for-linus-3.20' of git://git.linaro.org/people/mike.turquette/linux
Pull clock framework updates from Mike Turquette: "The clock framework changes contain the usual driver additions, enhancements and fixes mostly for ARM32, ARM64, MIPS and Power-based devices. Additionally the framework core underwent a bit of surgery with two major changes: - The boundary between the clock core and clock providers (e.g clock drivers) is now more well defined with dedicated provider helper functions. struct clk no longer maps 1:1 with the hardware clock but is a true per-user cookie which helps us tracker users of hardware clocks and debug bad behavior. - The addition of rate constraints for clocks. Rate ranges are now supported which are analogous to the voltage ranges in the regulator framework. Unfortunately these changes to the core created some breakeage. We think we fixed it all up but for this reason there are lots of last minute commits trying to undo the damage" * tag 'clk-for-linus-3.20' of git://git.linaro.org/people/mike.turquette/linux: (113 commits) clk: Only recalculate the rate if needed Revert "clk: mxs: Fix invalid 32-bit access to frac registers" clk: qoriq: Add support for the platform PLL powerpc/corenet: Enable CLK_QORIQ clk: Replace explicit clk assignment with __clk_hw_set_clk clk: Add __clk_hw_set_clk helper function clk: Don't dereference parent clock if is NULL MIPS: Alchemy: Remove bogus args from alchemy_clk_fgcs_detr clkdev: Always allocate a struct clk and call __clk_get() w/ CCF clk: shmobile: div6: Avoid division by zero in .round_rate() clk: mxs: Fix invalid 32-bit access to frac registers clk: omap: compile legacy omap3 clocks conditionally clkdev: Export clk_register_clkdev clk: Add rate constraints to clocks clk: remove clk-private.h pci: xgene: do not use clk-private.h arm: omap2+ remove dead clock code clk: Make clk API return per-user struct clk instances clk: tegra: Define PLLD_DSI and remove dsia(b)_mux clk: tegra: Add support for the Tegra132 CAR IP block ...
Diffstat (limited to 'arch/arm/boot/dts/sun8i-a23.dtsi')
-rw-r--r--arch/arm/boot/dts/sun8i-a23.dtsi96
1 files changed, 64 insertions, 32 deletions
diff --git a/arch/arm/boot/dts/sun8i-a23.dtsi b/arch/arm/boot/dts/sun8i-a23.dtsi
index dd34527293e4..382ebd137ee4 100644
--- a/arch/arm/boot/dts/sun8i-a23.dtsi
+++ b/arch/arm/boot/dts/sun8i-a23.dtsi
@@ -119,11 +119,19 @@
119 }; 119 };
120 120
121 /* dummy clock until actually implemented */ 121 /* dummy clock until actually implemented */
122 pll6: pll6_clk { 122 pll5: pll5_clk {
123 #clock-cells = <0>; 123 #clock-cells = <0>;
124 compatible = "fixed-clock"; 124 compatible = "fixed-clock";
125 clock-frequency = <600000000>; 125 clock-frequency = <0>;
126 clock-output-names = "pll6"; 126 clock-output-names = "pll5";
127 };
128
129 pll6: clk@01c20028 {
130 #clock-cells = <1>;
131 compatible = "allwinner,sun6i-a31-pll6-clk";
132 reg = <0x01c20028 0x4>;
133 clocks = <&osc24M>;
134 clock-output-names = "pll6", "pll6x2";
127 }; 135 };
128 136
129 cpu: cpu_clk@01c20050 { 137 cpu: cpu_clk@01c20050 {
@@ -149,19 +157,11 @@
149 clock-output-names = "axi"; 157 clock-output-names = "axi";
150 }; 158 };
151 159
152 ahb1_mux: ahb1_mux_clk@01c20054 {
153 #clock-cells = <0>;
154 compatible = "allwinner,sun6i-a31-ahb1-mux-clk";
155 reg = <0x01c20054 0x4>;
156 clocks = <&osc32k>, <&osc24M>, <&axi>, <&pll6>;
157 clock-output-names = "ahb1_mux";
158 };
159
160 ahb1: ahb1_clk@01c20054 { 160 ahb1: ahb1_clk@01c20054 {
161 #clock-cells = <0>; 161 #clock-cells = <0>;
162 compatible = "allwinner,sun4i-a10-ahb-clk"; 162 compatible = "allwinner,sun6i-a31-ahb1-clk";
163 reg = <0x01c20054 0x4>; 163 reg = <0x01c20054 0x4>;
164 clocks = <&ahb1_mux>; 164 clocks = <&osc32k>, <&osc24M>, <&axi>, <&pll6 0>;
165 clock-output-names = "ahb1"; 165 clock-output-names = "ahb1";
166 }; 166 };
167 167
@@ -202,7 +202,7 @@
202 #clock-cells = <0>; 202 #clock-cells = <0>;
203 compatible = "allwinner,sun4i-a10-apb1-clk"; 203 compatible = "allwinner,sun4i-a10-apb1-clk";
204 reg = <0x01c20058 0x4>; 204 reg = <0x01c20058 0x4>;
205 clocks = <&osc32k>, <&osc24M>, <&pll6>, <&pll6>; 205 clocks = <&osc32k>, <&osc24M>, <&pll6 0>, <&pll6 0>;
206 clock-output-names = "apb2"; 206 clock-output-names = "apb2";
207 }; 207 };
208 208
@@ -218,27 +218,41 @@
218 }; 218 };
219 219
220 mmc0_clk: clk@01c20088 { 220 mmc0_clk: clk@01c20088 {
221 #clock-cells = <0>; 221 #clock-cells = <1>;
222 compatible = "allwinner,sun4i-a10-mod0-clk"; 222 compatible = "allwinner,sun4i-a10-mmc-clk";
223 reg = <0x01c20088 0x4>; 223 reg = <0x01c20088 0x4>;
224 clocks = <&osc24M>, <&pll6>; 224 clocks = <&osc24M>, <&pll6 0>;
225 clock-output-names = "mmc0"; 225 clock-output-names = "mmc0",
226 "mmc0_output",
227 "mmc0_sample";
226 }; 228 };
227 229
228 mmc1_clk: clk@01c2008c { 230 mmc1_clk: clk@01c2008c {
229 #clock-cells = <0>; 231 #clock-cells = <1>;
230 compatible = "allwinner,sun4i-a10-mod0-clk"; 232 compatible = "allwinner,sun4i-a10-mmc-clk";
231 reg = <0x01c2008c 0x4>; 233 reg = <0x01c2008c 0x4>;
232 clocks = <&osc24M>, <&pll6>; 234 clocks = <&osc24M>, <&pll6 0>;
233 clock-output-names = "mmc1"; 235 clock-output-names = "mmc1",
236 "mmc1_output",
237 "mmc1_sample";
234 }; 238 };
235 239
236 mmc2_clk: clk@01c20090 { 240 mmc2_clk: clk@01c20090 {
237 #clock-cells = <0>; 241 #clock-cells = <1>;
238 compatible = "allwinner,sun4i-a10-mod0-clk"; 242 compatible = "allwinner,sun4i-a10-mmc-clk";
239 reg = <0x01c20090 0x4>; 243 reg = <0x01c20090 0x4>;
240 clocks = <&osc24M>, <&pll6>; 244 clocks = <&osc24M>, <&pll6 0>;
241 clock-output-names = "mmc2"; 245 clock-output-names = "mmc2",
246 "mmc2_output",
247 "mmc2_sample";
248 };
249
250 mbus_clk: clk@01c2015c {
251 #clock-cells = <0>;
252 compatible = "allwinner,sun8i-a23-mbus-clk";
253 reg = <0x01c2015c 0x4>;
254 clocks = <&osc24M>, <&pll6 1>, <&pll5>;
255 clock-output-names = "mbus";
242 }; 256 };
243 }; 257 };
244 258
@@ -260,8 +274,14 @@
260 mmc0: mmc@01c0f000 { 274 mmc0: mmc@01c0f000 {
261 compatible = "allwinner,sun5i-a13-mmc"; 275 compatible = "allwinner,sun5i-a13-mmc";
262 reg = <0x01c0f000 0x1000>; 276 reg = <0x01c0f000 0x1000>;
263 clocks = <&ahb1_gates 8>, <&mmc0_clk>; 277 clocks = <&ahb1_gates 8>,
264 clock-names = "ahb", "mmc"; 278 <&mmc0_clk 0>,
279 <&mmc0_clk 1>,
280 <&mmc0_clk 2>;
281 clock-names = "ahb",
282 "mmc",
283 "output",
284 "sample";
265 resets = <&ahb1_rst 8>; 285 resets = <&ahb1_rst 8>;
266 reset-names = "ahb"; 286 reset-names = "ahb";
267 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 287 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
@@ -271,8 +291,14 @@
271 mmc1: mmc@01c10000 { 291 mmc1: mmc@01c10000 {
272 compatible = "allwinner,sun5i-a13-mmc"; 292 compatible = "allwinner,sun5i-a13-mmc";
273 reg = <0x01c10000 0x1000>; 293 reg = <0x01c10000 0x1000>;
274 clocks = <&ahb1_gates 9>, <&mmc1_clk>; 294 clocks = <&ahb1_gates 9>,
275 clock-names = "ahb", "mmc"; 295 <&mmc1_clk 0>,
296 <&mmc1_clk 1>,
297 <&mmc1_clk 2>;
298 clock-names = "ahb",
299 "mmc",
300 "output",
301 "sample";
276 resets = <&ahb1_rst 9>; 302 resets = <&ahb1_rst 9>;
277 reset-names = "ahb"; 303 reset-names = "ahb";
278 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; 304 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
@@ -282,8 +308,14 @@
282 mmc2: mmc@01c11000 { 308 mmc2: mmc@01c11000 {
283 compatible = "allwinner,sun5i-a13-mmc"; 309 compatible = "allwinner,sun5i-a13-mmc";
284 reg = <0x01c11000 0x1000>; 310 reg = <0x01c11000 0x1000>;
285 clocks = <&ahb1_gates 10>, <&mmc2_clk>; 311 clocks = <&ahb1_gates 10>,
286 clock-names = "ahb", "mmc"; 312 <&mmc2_clk 0>,
313 <&mmc2_clk 1>,
314 <&mmc2_clk 2>;
315 clock-names = "ahb",
316 "mmc",
317 "output",
318 "sample";
287 resets = <&ahb1_rst 10>; 319 resets = <&ahb1_rst 10>;
288 reset-names = "ahb"; 320 reset-names = "ahb";
289 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 321 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;