aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts/r8a7790.dtsi
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-23 21:45:38 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-23 21:45:38 -0500
commit9b6d351a75dae25430383b29a3764ae7921f6c47 (patch)
tree605b1ec9f90138553cb7efedf9dbb3df93bef3a8 /arch/arm/boot/dts/r8a7790.dtsi
parentdfd10e7ae60c6c1b24b5d601744b4fd1ecab2f31 (diff)
parent310c85476d5047f5ace4d1c527e1bbbc0c7ad672 (diff)
Merge tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC DT updates from Olof Johansson: "DT and DT-conversion-related changes for various ARM platforms. Most of these are to enable various devices on various boards, etc, and not necessarily worth enumerating. New boards and systems continue to come in as new devicetree files that don't require corresponding C changes any more, which is indicating that the system is starting to work fairly well. A few things worth pointing out: * ST Ericsson ux500 platforms have made the major push to move over to fully support the platform with DT * Renesas platforms continue their conversion over from legacy platform devices to DT-based for hardware description" * tag 'dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (327 commits) ARM: dts: SiRF: add pin group for USP0 with only RX or TX frame sync ARM: dts: SiRF: add lost usp1_uart_nostreamctrl pin group for atlas6 ARM: dts: sirf: add lost minigpsrtc device node ARM: dts: sirf: add clock, frequence-voltage table for CPU0 ARM: dts: sirf: add lost bus_width, clock and status for sdhci ARM: dts: sirf: add lost clocks for cphifbg ARM: dts: socfpga: add pl330 clock ARM: dts: socfpga: update L2 tag and data latency arm: sun7i: cubietruck: Enable the i2c controllers ARM: dts: add support for EXYNOS4412 based TINY4412 board ARM: dts: Add initial support for Arndale Octa board ARM: bcm2835: add USB controller to device tree ARM: dts: MSM8974: Add MMIO architected timer node ARM: dts: MSM8974: Add restart node ARM: dts: sun7i: external clock outputs ARM: dts: sun7i: Change 32768 Hz oscillator node name to clk@N style ARM: dts: sun7i: Add pin muxing options for clock outputs ARM: dts: sun7i: Add rtp controller node ARM: dts: sun5i: Add rtp controller node ARM: dts: sun4i: Add rtp controller node ...
Diffstat (limited to 'arch/arm/boot/dts/r8a7790.dtsi')
-rw-r--r--arch/arm/boot/dts/r8a7790.dtsi413
1 files changed, 383 insertions, 30 deletions
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi
index 9987dd0e9c59..f48487c2a970 100644
--- a/arch/arm/boot/dts/r8a7790.dtsi
+++ b/arch/arm/boot/dts/r8a7790.dtsi
@@ -8,6 +8,10 @@
8 * kind, whether express or implied. 8 * kind, whether express or implied.
9 */ 9 */
10 10
11#include <dt-bindings/clock/r8a7790-clock.h>
12#include <dt-bindings/interrupt-controller/arm-gic.h>
13#include <dt-bindings/interrupt-controller/irq.h>
14
11/ { 15/ {
12 compatible = "renesas,r8a7790"; 16 compatible = "renesas,r8a7790";
13 interrupt-parent = <&gic>; 17 interrupt-parent = <&gic>;
@@ -84,14 +88,14 @@
84 <0 0xf1002000 0 0x1000>, 88 <0 0xf1002000 0 0x1000>,
85 <0 0xf1004000 0 0x2000>, 89 <0 0xf1004000 0 0x2000>,
86 <0 0xf1006000 0 0x2000>; 90 <0 0xf1006000 0 0x2000>;
87 interrupts = <1 9 0xf04>; 91 interrupts = <1 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
88 }; 92 };
89 93
90 gpio0: gpio@e6050000 { 94 gpio0: gpio@e6050000 {
91 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; 95 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar";
92 reg = <0 0xe6050000 0 0x50>; 96 reg = <0 0xe6050000 0 0x50>;
93 interrupt-parent = <&gic>; 97 interrupt-parent = <&gic>;
94 interrupts = <0 4 0x4>; 98 interrupts = <0 4 IRQ_TYPE_LEVEL_HIGH>;
95 #gpio-cells = <2>; 99 #gpio-cells = <2>;
96 gpio-controller; 100 gpio-controller;
97 gpio-ranges = <&pfc 0 0 32>; 101 gpio-ranges = <&pfc 0 0 32>;
@@ -103,7 +107,7 @@
103 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; 107 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar";
104 reg = <0 0xe6051000 0 0x50>; 108 reg = <0 0xe6051000 0 0x50>;
105 interrupt-parent = <&gic>; 109 interrupt-parent = <&gic>;
106 interrupts = <0 5 0x4>; 110 interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>;
107 #gpio-cells = <2>; 111 #gpio-cells = <2>;
108 gpio-controller; 112 gpio-controller;
109 gpio-ranges = <&pfc 0 32 32>; 113 gpio-ranges = <&pfc 0 32 32>;
@@ -115,7 +119,7 @@
115 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; 119 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar";
116 reg = <0 0xe6052000 0 0x50>; 120 reg = <0 0xe6052000 0 0x50>;
117 interrupt-parent = <&gic>; 121 interrupt-parent = <&gic>;
118 interrupts = <0 6 0x4>; 122 interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>;
119 #gpio-cells = <2>; 123 #gpio-cells = <2>;
120 gpio-controller; 124 gpio-controller;
121 gpio-ranges = <&pfc 0 64 32>; 125 gpio-ranges = <&pfc 0 64 32>;
@@ -127,7 +131,7 @@
127 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; 131 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar";
128 reg = <0 0xe6053000 0 0x50>; 132 reg = <0 0xe6053000 0 0x50>;
129 interrupt-parent = <&gic>; 133 interrupt-parent = <&gic>;
130 interrupts = <0 7 0x4>; 134 interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>;
131 #gpio-cells = <2>; 135 #gpio-cells = <2>;
132 gpio-controller; 136 gpio-controller;
133 gpio-ranges = <&pfc 0 96 32>; 137 gpio-ranges = <&pfc 0 96 32>;
@@ -139,7 +143,7 @@
139 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; 143 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar";
140 reg = <0 0xe6054000 0 0x50>; 144 reg = <0 0xe6054000 0 0x50>;
141 interrupt-parent = <&gic>; 145 interrupt-parent = <&gic>;
142 interrupts = <0 8 0x4>; 146 interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>;
143 #gpio-cells = <2>; 147 #gpio-cells = <2>;
144 gpio-controller; 148 gpio-controller;
145 gpio-ranges = <&pfc 0 128 32>; 149 gpio-ranges = <&pfc 0 128 32>;
@@ -151,7 +155,7 @@
151 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; 155 compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar";
152 reg = <0 0xe6055000 0 0x50>; 156 reg = <0 0xe6055000 0 0x50>;
153 interrupt-parent = <&gic>; 157 interrupt-parent = <&gic>;
154 interrupts = <0 9 0x4>; 158 interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>;
155 #gpio-cells = <2>; 159 #gpio-cells = <2>;
156 gpio-controller; 160 gpio-controller;
157 gpio-ranges = <&pfc 0 160 32>; 161 gpio-ranges = <&pfc 0 160 32>;
@@ -159,21 +163,31 @@
159 interrupt-controller; 163 interrupt-controller;
160 }; 164 };
161 165
166 thermal@e61f0000 {
167 compatible = "renesas,thermal-r8a7790", "renesas,rcar-thermal";
168 reg = <0 0xe61f0000 0 0x14>, <0 0xe61f0100 0 0x38>;
169 interrupt-parent = <&gic>;
170 interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>;
171 };
172
162 timer { 173 timer {
163 compatible = "arm,armv7-timer"; 174 compatible = "arm,armv7-timer";
164 interrupts = <1 13 0xf08>, 175 interrupts = <1 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
165 <1 14 0xf08>, 176 <1 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
166 <1 11 0xf08>, 177 <1 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
167 <1 10 0xf08>; 178 <1 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
168 }; 179 };
169 180
170 irqc0: interrupt-controller@e61c0000 { 181 irqc0: interrupt-controller@e61c0000 {
171 compatible = "renesas,irqc"; 182 compatible = "renesas,irqc-r8a7790", "renesas,irqc";
172 #interrupt-cells = <2>; 183 #interrupt-cells = <2>;
173 interrupt-controller; 184 interrupt-controller;
174 reg = <0 0xe61c0000 0 0x200>; 185 reg = <0 0xe61c0000 0 0x200>;
175 interrupt-parent = <&gic>; 186 interrupt-parent = <&gic>;
176 interrupts = <0 0 4>, <0 1 4>, <0 2 4>, <0 3 4>; 187 interrupts = <0 0 IRQ_TYPE_LEVEL_HIGH>,
188 <0 1 IRQ_TYPE_LEVEL_HIGH>,
189 <0 2 IRQ_TYPE_LEVEL_HIGH>,
190 <0 3 IRQ_TYPE_LEVEL_HIGH>;
177 }; 191 };
178 192
179 i2c0: i2c@e6508000 { 193 i2c0: i2c@e6508000 {
@@ -182,7 +196,8 @@
182 compatible = "renesas,i2c-r8a7790"; 196 compatible = "renesas,i2c-r8a7790";
183 reg = <0 0xe6508000 0 0x40>; 197 reg = <0 0xe6508000 0 0x40>;
184 interrupt-parent = <&gic>; 198 interrupt-parent = <&gic>;
185 interrupts = <0 287 0x4>; 199 interrupts = <0 287 IRQ_TYPE_LEVEL_HIGH>;
200 clocks = <&mstp3_clks R8A7790_CLK_I2C0>;
186 status = "disabled"; 201 status = "disabled";
187 }; 202 };
188 203
@@ -192,7 +207,8 @@
192 compatible = "renesas,i2c-r8a7790"; 207 compatible = "renesas,i2c-r8a7790";
193 reg = <0 0xe6518000 0 0x40>; 208 reg = <0 0xe6518000 0 0x40>;
194 interrupt-parent = <&gic>; 209 interrupt-parent = <&gic>;
195 interrupts = <0 288 0x4>; 210 interrupts = <0 288 IRQ_TYPE_LEVEL_HIGH>;
211 clocks = <&mstp3_clks R8A7790_CLK_I2C1>;
196 status = "disabled"; 212 status = "disabled";
197 }; 213 };
198 214
@@ -202,7 +218,8 @@
202 compatible = "renesas,i2c-r8a7790"; 218 compatible = "renesas,i2c-r8a7790";
203 reg = <0 0xe6530000 0 0x40>; 219 reg = <0 0xe6530000 0 0x40>;
204 interrupt-parent = <&gic>; 220 interrupt-parent = <&gic>;
205 interrupts = <0 286 0x4>; 221 interrupts = <0 286 IRQ_TYPE_LEVEL_HIGH>;
222 clocks = <&mstp3_clks R8A7790_CLK_I2C2>;
206 status = "disabled"; 223 status = "disabled";
207 }; 224 };
208 225
@@ -212,24 +229,27 @@
212 compatible = "renesas,i2c-r8a7790"; 229 compatible = "renesas,i2c-r8a7790";
213 reg = <0 0xe6540000 0 0x40>; 230 reg = <0 0xe6540000 0 0x40>;
214 interrupt-parent = <&gic>; 231 interrupt-parent = <&gic>;
215 interrupts = <0 290 0x4>; 232 interrupts = <0 290 IRQ_TYPE_LEVEL_HIGH>;
233 clocks = <&mstp3_clks R8A7790_CLK_I2C3>;
216 status = "disabled"; 234 status = "disabled";
217 }; 235 };
218 236
219 mmcif0: mmcif@ee200000 { 237 mmcif0: mmcif@ee200000 {
220 compatible = "renesas,sh-mmcif"; 238 compatible = "renesas,mmcif-r8a7790", "renesas,sh-mmcif";
221 reg = <0 0xee200000 0 0x80>; 239 reg = <0 0xee200000 0 0x80>;
222 interrupt-parent = <&gic>; 240 interrupt-parent = <&gic>;
223 interrupts = <0 169 0x4>; 241 interrupts = <0 169 IRQ_TYPE_LEVEL_HIGH>;
242 clocks = <&mstp3_clks R8A7790_CLK_MMCIF0>;
224 reg-io-width = <4>; 243 reg-io-width = <4>;
225 status = "disabled"; 244 status = "disabled";
226 }; 245 };
227 246
228 mmcif1: mmcif@ee220000 { 247 mmcif1: mmc@ee220000 {
229 compatible = "renesas,sh-mmcif"; 248 compatible = "renesas,mmcif-r8a7790", "renesas,sh-mmcif";
230 reg = <0 0xee220000 0 0x80>; 249 reg = <0 0xee220000 0 0x80>;
231 interrupt-parent = <&gic>; 250 interrupt-parent = <&gic>;
232 interrupts = <0 170 0x4>; 251 interrupts = <0 170 IRQ_TYPE_LEVEL_HIGH>;
252 clocks = <&mstp3_clks R8A7790_CLK_MMCIF1>;
233 reg-io-width = <4>; 253 reg-io-width = <4>;
234 status = "disabled"; 254 status = "disabled";
235 }; 255 };
@@ -239,39 +259,372 @@
239 reg = <0 0xe6060000 0 0x250>; 259 reg = <0 0xe6060000 0 0x250>;
240 }; 260 };
241 261
242 sdhi0: sdhi@ee100000 { 262 sdhi0: sd@ee100000 {
243 compatible = "renesas,sdhi-r8a7790"; 263 compatible = "renesas,sdhi-r8a7790";
244 reg = <0 0xee100000 0 0x200>; 264 reg = <0 0xee100000 0 0x200>;
245 interrupt-parent = <&gic>; 265 interrupt-parent = <&gic>;
246 interrupts = <0 165 4>; 266 interrupts = <0 165 IRQ_TYPE_LEVEL_HIGH>;
267 clocks = <&mstp3_clks R8A7790_CLK_SDHI0>;
247 cap-sd-highspeed; 268 cap-sd-highspeed;
248 status = "disabled"; 269 status = "disabled";
249 }; 270 };
250 271
251 sdhi1: sdhi@ee120000 { 272 sdhi1: sd@ee120000 {
252 compatible = "renesas,sdhi-r8a7790"; 273 compatible = "renesas,sdhi-r8a7790";
253 reg = <0 0xee120000 0 0x200>; 274 reg = <0 0xee120000 0 0x200>;
254 interrupt-parent = <&gic>; 275 interrupt-parent = <&gic>;
255 interrupts = <0 166 4>; 276 interrupts = <0 166 IRQ_TYPE_LEVEL_HIGH>;
277 clocks = <&mstp3_clks R8A7790_CLK_SDHI1>;
256 cap-sd-highspeed; 278 cap-sd-highspeed;
257 status = "disabled"; 279 status = "disabled";
258 }; 280 };
259 281
260 sdhi2: sdhi@ee140000 { 282 sdhi2: sd@ee140000 {
261 compatible = "renesas,sdhi-r8a7790"; 283 compatible = "renesas,sdhi-r8a7790";
262 reg = <0 0xee140000 0 0x100>; 284 reg = <0 0xee140000 0 0x100>;
263 interrupt-parent = <&gic>; 285 interrupt-parent = <&gic>;
264 interrupts = <0 167 4>; 286 interrupts = <0 167 IRQ_TYPE_LEVEL_HIGH>;
287 clocks = <&mstp3_clks R8A7790_CLK_SDHI2>;
265 cap-sd-highspeed; 288 cap-sd-highspeed;
266 status = "disabled"; 289 status = "disabled";
267 }; 290 };
268 291
269 sdhi3: sdhi@ee160000 { 292 sdhi3: sd@ee160000 {
270 compatible = "renesas,sdhi-r8a7790"; 293 compatible = "renesas,sdhi-r8a7790";
271 reg = <0 0xee160000 0 0x100>; 294 reg = <0 0xee160000 0 0x100>;
272 interrupt-parent = <&gic>; 295 interrupt-parent = <&gic>;
273 interrupts = <0 168 4>; 296 interrupts = <0 168 IRQ_TYPE_LEVEL_HIGH>;
297 clocks = <&mstp3_clks R8A7790_CLK_SDHI3>;
274 cap-sd-highspeed; 298 cap-sd-highspeed;
275 status = "disabled"; 299 status = "disabled";
276 }; 300 };
301
302 clocks {
303 #address-cells = <2>;
304 #size-cells = <2>;
305 ranges;
306
307 /* External root clock */
308 extal_clk: extal_clk {
309 compatible = "fixed-clock";
310 #clock-cells = <0>;
311 /* This value must be overriden by the board. */
312 clock-frequency = <0>;
313 clock-output-names = "extal";
314 };
315
316 /* Special CPG clocks */
317 cpg_clocks: cpg_clocks@e6150000 {
318 compatible = "renesas,r8a7790-cpg-clocks",
319 "renesas,rcar-gen2-cpg-clocks";
320 reg = <0 0xe6150000 0 0x1000>;
321 clocks = <&extal_clk>;
322 #clock-cells = <1>;
323 clock-output-names = "main", "pll0", "pll1", "pll3",
324 "lb", "qspi", "sdh", "sd0", "sd1",
325 "z";
326 };
327
328 /* Variable factor clocks */
329 sd2_clk: sd2_clk@e6150078 {
330 compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
331 reg = <0 0xe6150078 0 4>;
332 clocks = <&pll1_div2_clk>;
333 #clock-cells = <0>;
334 clock-output-names = "sd2";
335 };
336 sd3_clk: sd3_clk@e615007c {
337 compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
338 reg = <0 0xe615007c 0 4>;
339 clocks = <&pll1_div2_clk>;
340 #clock-cells = <0>;
341 clock-output-names = "sd3";
342 };
343 mmc0_clk: mmc0_clk@e6150240 {
344 compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
345 reg = <0 0xe6150240 0 4>;
346 clocks = <&pll1_div2_clk>;
347 #clock-cells = <0>;
348 clock-output-names = "mmc0";
349 };
350 mmc1_clk: mmc1_clk@e6150244 {
351 compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
352 reg = <0 0xe6150244 0 4>;
353 clocks = <&pll1_div2_clk>;
354 #clock-cells = <0>;
355 clock-output-names = "mmc1";
356 };
357 ssp_clk: ssp_clk@e6150248 {
358 compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
359 reg = <0 0xe6150248 0 4>;
360 clocks = <&pll1_div2_clk>;
361 #clock-cells = <0>;
362 clock-output-names = "ssp";
363 };
364 ssprs_clk: ssprs_clk@e615024c {
365 compatible = "renesas,r8a7790-div6-clock", "renesas,cpg-div6-clock";
366 reg = <0 0xe615024c 0 4>;
367 clocks = <&pll1_div2_clk>;
368 #clock-cells = <0>;
369 clock-output-names = "ssprs";
370 };
371
372 /* Fixed factor clocks */
373 pll1_div2_clk: pll1_div2_clk {
374 compatible = "fixed-factor-clock";
375 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
376 #clock-cells = <0>;
377 clock-div = <2>;
378 clock-mult = <1>;
379 clock-output-names = "pll1_div2";
380 };
381 z2_clk: z2_clk {
382 compatible = "fixed-factor-clock";
383 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
384 #clock-cells = <0>;
385 clock-div = <2>;
386 clock-mult = <1>;
387 clock-output-names = "z2";
388 };
389 zg_clk: zg_clk {
390 compatible = "fixed-factor-clock";
391 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
392 #clock-cells = <0>;
393 clock-div = <3>;
394 clock-mult = <1>;
395 clock-output-names = "zg";
396 };
397 zx_clk: zx_clk {
398 compatible = "fixed-factor-clock";
399 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
400 #clock-cells = <0>;
401 clock-div = <3>;
402 clock-mult = <1>;
403 clock-output-names = "zx";
404 };
405 zs_clk: zs_clk {
406 compatible = "fixed-factor-clock";
407 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
408 #clock-cells = <0>;
409 clock-div = <6>;
410 clock-mult = <1>;
411 clock-output-names = "zs";
412 };
413 hp_clk: hp_clk {
414 compatible = "fixed-factor-clock";
415 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
416 #clock-cells = <0>;
417 clock-div = <12>;
418 clock-mult = <1>;
419 clock-output-names = "hp";
420 };
421 i_clk: i_clk {
422 compatible = "fixed-factor-clock";
423 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
424 #clock-cells = <0>;
425 clock-div = <2>;
426 clock-mult = <1>;
427 clock-output-names = "i";
428 };
429 b_clk: b_clk {
430 compatible = "fixed-factor-clock";
431 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
432 #clock-cells = <0>;
433 clock-div = <12>;
434 clock-mult = <1>;
435 clock-output-names = "b";
436 };
437 p_clk: p_clk {
438 compatible = "fixed-factor-clock";
439 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
440 #clock-cells = <0>;
441 clock-div = <24>;
442 clock-mult = <1>;
443 clock-output-names = "p";
444 };
445 cl_clk: cl_clk {
446 compatible = "fixed-factor-clock";
447 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
448 #clock-cells = <0>;
449 clock-div = <48>;
450 clock-mult = <1>;
451 clock-output-names = "cl";
452 };
453 m2_clk: m2_clk {
454 compatible = "fixed-factor-clock";
455 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
456 #clock-cells = <0>;
457 clock-div = <8>;
458 clock-mult = <1>;
459 clock-output-names = "m2";
460 };
461 imp_clk: imp_clk {
462 compatible = "fixed-factor-clock";
463 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
464 #clock-cells = <0>;
465 clock-div = <4>;
466 clock-mult = <1>;
467 clock-output-names = "imp";
468 };
469 rclk_clk: rclk_clk {
470 compatible = "fixed-factor-clock";
471 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
472 #clock-cells = <0>;
473 clock-div = <(48 * 1024)>;
474 clock-mult = <1>;
475 clock-output-names = "rclk";
476 };
477 oscclk_clk: oscclk_clk {
478 compatible = "fixed-factor-clock";
479 clocks = <&cpg_clocks R8A7790_CLK_PLL1>;
480 #clock-cells = <0>;
481 clock-div = <(12 * 1024)>;
482 clock-mult = <1>;
483 clock-output-names = "oscclk";
484 };
485 zb3_clk: zb3_clk {
486 compatible = "fixed-factor-clock";
487 clocks = <&cpg_clocks R8A7790_CLK_PLL3>;
488 #clock-cells = <0>;
489 clock-div = <4>;
490 clock-mult = <1>;
491 clock-output-names = "zb3";
492 };
493 zb3d2_clk: zb3d2_clk {
494 compatible = "fixed-factor-clock";
495 clocks = <&cpg_clocks R8A7790_CLK_PLL3>;
496 #clock-cells = <0>;
497 clock-div = <8>;
498 clock-mult = <1>;
499 clock-output-names = "zb3d2";
500 };
501 ddr_clk: ddr_clk {
502 compatible = "fixed-factor-clock";
503 clocks = <&cpg_clocks R8A7790_CLK_PLL3>;
504 #clock-cells = <0>;
505 clock-div = <8>;
506 clock-mult = <1>;
507 clock-output-names = "ddr";
508 };
509 mp_clk: mp_clk {
510 compatible = "fixed-factor-clock";
511 clocks = <&pll1_div2_clk>;
512 #clock-cells = <0>;
513 clock-div = <15>;
514 clock-mult = <1>;
515 clock-output-names = "mp";
516 };
517 cp_clk: cp_clk {
518 compatible = "fixed-factor-clock";
519 clocks = <&extal_clk>;
520 #clock-cells = <0>;
521 clock-div = <2>;
522 clock-mult = <1>;
523 clock-output-names = "cp";
524 };
525
526 /* Gate clocks */
527 mstp0_clks: mstp0_clks@e6150130 {
528 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
529 reg = <0 0xe6150130 0 4>, <0 0xe6150030 0 4>;
530 clocks = <&mp_clk>;
531 #clock-cells = <1>;
532 renesas,clock-indices = <R8A7790_CLK_MSIOF0>;
533 clock-output-names = "msiof0";
534 };
535 mstp1_clks: mstp1_clks@e6150134 {
536 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
537 reg = <0 0xe6150134 0 4>, <0 0xe6150038 0 4>;
538 clocks = <&p_clk>, <&p_clk>, <&p_clk>, <&rclk_clk>,
539 <&cp_clk>, <&zs_clk>, <&zs_clk>, <&zs_clk>,
540 <&zs_clk>;
541 #clock-cells = <1>;
542 renesas,clock-indices = <
543 R8A7790_CLK_TMU1 R8A7790_CLK_TMU3 R8A7790_CLK_TMU2
544 R8A7790_CLK_CMT0 R8A7790_CLK_TMU0 R8A7790_CLK_VSP1_DU1
545 R8A7790_CLK_VSP1_DU0 R8A7790_CLK_VSP1_RT R8A7790_CLK_VSP1_SY
546 >;
547 clock-output-names =
548 "tmu1", "tmu3", "tmu2", "cmt0", "tmu0", "vsp1-du1",
549 "vsp1-du0", "vsp1-rt", "vsp1-sy";
550 };
551 mstp2_clks: mstp2_clks@e6150138 {
552 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
553 reg = <0 0xe6150138 0 4>, <0 0xe6150040 0 4>;
554 clocks = <&mp_clk>, <&mp_clk>, <&mp_clk>, <&mp_clk>, <&mp_clk>,
555 <&mp_clk>, <&mp_clk>, <&mp_clk>, <&mp_clk>;
556 #clock-cells = <1>;
557 renesas,clock-indices = <
558 R8A7790_CLK_SCIFA2 R8A7790_CLK_SCIFA1 R8A7790_CLK_SCIFA0
559 R8A7790_CLK_MSIOF2 R8A7790_CLK_SCIFB0 R8A7790_CLK_SCIFB1
560 R8A7790_CLK_MSIOF1 R8A7790_CLK_MSIOF3 R8A7790_CLK_SCIFB2
561 >;
562 clock-output-names =
563 "scifa2", "scifa1", "scifa0", "msiof2", "scifb0",
564 "scifb1", "msiof1", "msiof3", "scifb2";
565 };
566 mstp3_clks: mstp3_clks@e615013c {
567 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
568 reg = <0 0xe615013c 0 4>, <0 0xe6150048 0 4>;
569 clocks = <&cp_clk>, <&mmc1_clk>, <&sd3_clk>, <&sd2_clk>,
570 <&cpg_clocks R8A7790_CLK_SD1>, <&cpg_clocks R8A7790_CLK_SD0>,
571 <&mmc0_clk>, <&rclk_clk>;
572 #clock-cells = <1>;
573 renesas,clock-indices = <
574 R8A7790_CLK_TPU0 R8A7790_CLK_MMCIF1 R8A7790_CLK_SDHI3
575 R8A7790_CLK_SDHI2 R8A7790_CLK_SDHI1 R8A7790_CLK_SDHI0
576 R8A7790_CLK_MMCIF0 R8A7790_CLK_CMT1
577 >;
578 clock-output-names =
579 "tpu0", "mmcif1", "sdhi3", "sdhi2",
580 "sdhi1", "sdhi0", "mmcif0", "cmt1";
581 };
582 mstp5_clks: mstp5_clks@e6150144 {
583 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
584 reg = <0 0xe6150144 0 4>, <0 0xe615003c 0 4>;
585 clocks = <&extal_clk>, <&p_clk>;
586 #clock-cells = <1>;
587 renesas,clock-indices = <R8A7790_CLK_THERMAL R8A7790_CLK_PWM>;
588 clock-output-names = "thermal", "pwm";
589 };
590 mstp7_clks: mstp7_clks@e615014c {
591 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
592 reg = <0 0xe615014c 0 4>, <0 0xe61501c4 0 4>;
593 clocks = <&mp_clk>, <&mp_clk>, <&zs_clk>, <&zs_clk>, <&p_clk>,
594 <&p_clk>, <&zx_clk>, <&zx_clk>, <&zx_clk>, <&zx_clk>,
595 <&zx_clk>;
596 #clock-cells = <1>;
597 renesas,clock-indices = <
598 R8A7790_CLK_EHCI R8A7790_CLK_HSUSB R8A7790_CLK_HSCIF1
599 R8A7790_CLK_HSCIF0 R8A7790_CLK_SCIF1 R8A7790_CLK_SCIF0
600 R8A7790_CLK_DU2 R8A7790_CLK_DU1 R8A7790_CLK_DU0
601 R8A7790_CLK_LVDS1 R8A7790_CLK_LVDS0
602 >;
603 clock-output-names =
604 "ehci", "hsusb", "hscif1", "hscif0", "scif1",
605 "scif0", "du2", "du1", "du0", "lvds1", "lvds0";
606 };
607 mstp8_clks: mstp8_clks@e6150990 {
608 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
609 reg = <0 0xe6150990 0 4>, <0 0xe61509a0 0 4>;
610 clocks = <&p_clk>;
611 #clock-cells = <1>;
612 renesas,clock-indices = <R8A7790_CLK_ETHER>;
613 clock-output-names = "ether";
614 };
615 mstp9_clks: mstp9_clks@e6150994 {
616 compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks";
617 reg = <0 0xe6150994 0 4>, <0 0xe61509a4 0 4>;
618 clocks = <&p_clk>, <&p_clk>, <&cpg_clocks R8A7790_CLK_QSPI>,
619 <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>;
620 #clock-cells = <1>;
621 renesas,clock-indices = <
622 R8A7790_CLK_RCAN1 R8A7790_CLK_RCAN0 R8A7790_CLK_QSPI_MOD
623 R8A7790_CLK_I2C3 R8A7790_CLK_I2C2 R8A7790_CLK_I2C1
624 R8A7790_CLK_I2C0
625 >;
626 clock-output-names =
627 "rcan1", "rcan0", "qspi_mod", "i2c3", "i2c2", "i2c1", "i2c0";
628 };
629 };
277}; 630};