Linux Audio

Check our new training course

Loading...
v4.17
  1/*
  2 * Device Tree Source for Renesas r8a7779
  3 *
  4 * Copyright (C) 2013 Renesas Solutions Corp.
  5 * Copyright (C) 2013 Simon Horman
  6 *
  7 * This file is licensed under the terms of the GNU General Public License
  8 * version 2.  This program is licensed "as is" without any warranty of any
  9 * kind, whether express or implied.
 10 */
 11
 12#include <dt-bindings/clock/r8a7779-clock.h>
 13#include <dt-bindings/interrupt-controller/arm-gic.h>
 14#include <dt-bindings/interrupt-controller/irq.h>
 15#include <dt-bindings/power/r8a7779-sysc.h>
 16
 17/ {
 18	compatible = "renesas,r8a7779";
 19	interrupt-parent = <&gic>;
 20	#address-cells = <1>;
 21	#size-cells = <1>;
 22
 23	cpus {
 24		#address-cells = <1>;
 25		#size-cells = <0>;
 26
 27		cpu@0 {
 28			device_type = "cpu";
 29			compatible = "arm,cortex-a9";
 30			reg = <0>;
 31			clock-frequency = <1000000000>;
 32			clocks = <&cpg_clocks R8A7779_CLK_Z>;
 33		};
 34		cpu@1 {
 35			device_type = "cpu";
 36			compatible = "arm,cortex-a9";
 37			reg = <1>;
 38			clock-frequency = <1000000000>;
 39			clocks = <&cpg_clocks R8A7779_CLK_Z>;
 40			power-domains = <&sysc R8A7779_PD_ARM1>;
 41		};
 42		cpu@2 {
 43			device_type = "cpu";
 44			compatible = "arm,cortex-a9";
 45			reg = <2>;
 46			clock-frequency = <1000000000>;
 47			clocks = <&cpg_clocks R8A7779_CLK_Z>;
 48			power-domains = <&sysc R8A7779_PD_ARM2>;
 49		};
 50		cpu@3 {
 51			device_type = "cpu";
 52			compatible = "arm,cortex-a9";
 53			reg = <3>;
 54			clock-frequency = <1000000000>;
 55			clocks = <&cpg_clocks R8A7779_CLK_Z>;
 56			power-domains = <&sysc R8A7779_PD_ARM3>;
 57		};
 58	};
 59
 60	aliases {
 61		spi0 = &hspi0;
 62		spi1 = &hspi1;
 63		spi2 = &hspi2;
 64	};
 65
 66	gic: interrupt-controller@f0001000 {
 67		compatible = "arm,cortex-a9-gic";
 68		#interrupt-cells = <3>;
 69		interrupt-controller;
 70		reg = <0xf0001000 0x1000>,
 71		      <0xf0000100 0x100>;
 72	};
 73
 74	timer@f0000600 {
 75		compatible = "arm,cortex-a9-twd-timer";
 76		reg = <0xf0000600 0x20>;
 77		interrupts = <GIC_PPI 13
 78			(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>;
 79		clocks = <&cpg_clocks R8A7779_CLK_ZS>;
 80	};
 81
 82	gpio0: gpio@ffc40000 {
 83		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
 84		reg = <0xffc40000 0x2c>;
 85		interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
 86		#gpio-cells = <2>;
 87		gpio-controller;
 88		gpio-ranges = <&pfc 0 0 32>;
 89		#interrupt-cells = <2>;
 90		interrupt-controller;
 91	};
 92
 93	gpio1: gpio@ffc41000 {
 94		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
 95		reg = <0xffc41000 0x2c>;
 96		interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
 97		#gpio-cells = <2>;
 98		gpio-controller;
 99		gpio-ranges = <&pfc 0 32 32>;
100		#interrupt-cells = <2>;
101		interrupt-controller;
102	};
103
104	gpio2: gpio@ffc42000 {
105		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
106		reg = <0xffc42000 0x2c>;
107		interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
108		#gpio-cells = <2>;
109		gpio-controller;
110		gpio-ranges = <&pfc 0 64 32>;
111		#interrupt-cells = <2>;
112		interrupt-controller;
113	};
114
115	gpio3: gpio@ffc43000 {
116		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
117		reg = <0xffc43000 0x2c>;
118		interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
119		#gpio-cells = <2>;
120		gpio-controller;
121		gpio-ranges = <&pfc 0 96 32>;
122		#interrupt-cells = <2>;
123		interrupt-controller;
124	};
125
126	gpio4: gpio@ffc44000 {
127		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
128		reg = <0xffc44000 0x2c>;
129		interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
130		#gpio-cells = <2>;
131		gpio-controller;
132		gpio-ranges = <&pfc 0 128 32>;
133		#interrupt-cells = <2>;
134		interrupt-controller;
135	};
136
137	gpio5: gpio@ffc45000 {
138		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
139		reg = <0xffc45000 0x2c>;
140		interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
141		#gpio-cells = <2>;
142		gpio-controller;
143		gpio-ranges = <&pfc 0 160 32>;
144		#interrupt-cells = <2>;
145		interrupt-controller;
146	};
147
148	gpio6: gpio@ffc46000 {
149		compatible = "renesas,gpio-r8a7779", "renesas,rcar-gen1-gpio";
150		reg = <0xffc46000 0x2c>;
151		interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
152		#gpio-cells = <2>;
153		gpio-controller;
154		gpio-ranges = <&pfc 0 192 9>;
155		#interrupt-cells = <2>;
156		interrupt-controller;
157	};
158
159	irqpin0: interrupt-controller@fe78001c {
160		compatible = "renesas,intc-irqpin-r8a7779", "renesas,intc-irqpin";
161		#interrupt-cells = <2>;
162		status = "disabled";
163		interrupt-controller;
164		reg = <0xfe78001c 4>,
165			<0xfe780010 4>,
166			<0xfe780024 4>,
167			<0xfe780044 4>,
168			<0xfe780064 4>,
169			<0xfe780000 4>;
170		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH
171			      GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH
172			      GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH
173			      GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
174		sense-bitfield-width = <2>;
175	};
176
177	i2c0: i2c@ffc70000 {
178		#address-cells = <1>;
179		#size-cells = <0>;
180		compatible = "renesas,i2c-r8a7779", "renesas,rcar-gen1-i2c";
181		reg = <0xffc70000 0x1000>;
182		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
183		clocks = <&mstp0_clks R8A7779_CLK_I2C0>;
184		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
185		status = "disabled";
186	};
187
188	i2c1: i2c@ffc71000 {
189		#address-cells = <1>;
190		#size-cells = <0>;
191		compatible = "renesas,i2c-r8a7779", "renesas,rcar-gen1-i2c";
192		reg = <0xffc71000 0x1000>;
193		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
194		clocks = <&mstp0_clks R8A7779_CLK_I2C1>;
195		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
196		status = "disabled";
197	};
198
199	i2c2: i2c@ffc72000 {
200		#address-cells = <1>;
201		#size-cells = <0>;
202		compatible = "renesas,i2c-r8a7779", "renesas,rcar-gen1-i2c";
203		reg = <0xffc72000 0x1000>;
204		interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
205		clocks = <&mstp0_clks R8A7779_CLK_I2C2>;
206		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
207		status = "disabled";
208	};
209
210	i2c3: i2c@ffc73000 {
211		#address-cells = <1>;
212		#size-cells = <0>;
213		compatible = "renesas,i2c-r8a7779", "renesas,rcar-gen1-i2c";
214		reg = <0xffc73000 0x1000>;
215		interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
216		clocks = <&mstp0_clks R8A7779_CLK_I2C3>;
217		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
218		status = "disabled";
219	};
220
221	scif0: serial@ffe40000 {
222		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
223			     "renesas,scif";
224		reg = <0xffe40000 0x100>;
225		interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
226		clocks = <&mstp0_clks R8A7779_CLK_SCIF0>,
227			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
228		clock-names = "fck", "brg_int", "scif_clk";
229		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
230		status = "disabled";
231	};
232
233	scif1: serial@ffe41000 {
234		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
235			     "renesas,scif";
236		reg = <0xffe41000 0x100>;
237		interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
238		clocks = <&mstp0_clks R8A7779_CLK_SCIF1>,
239			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
240		clock-names = "fck", "brg_int", "scif_clk";
241		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
242		status = "disabled";
243	};
244
245	scif2: serial@ffe42000 {
246		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
247			     "renesas,scif";
248		reg = <0xffe42000 0x100>;
249		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
250		clocks = <&mstp0_clks R8A7779_CLK_SCIF2>,
251			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
252		clock-names = "fck", "brg_int", "scif_clk";
253		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
254		status = "disabled";
255	};
256
257	scif3: serial@ffe43000 {
258		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
259			     "renesas,scif";
260		reg = <0xffe43000 0x100>;
261		interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
262		clocks = <&mstp0_clks R8A7779_CLK_SCIF3>,
263			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
264		clock-names = "fck", "brg_int", "scif_clk";
265		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
266		status = "disabled";
267	};
268
269	scif4: serial@ffe44000 {
270		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
271			     "renesas,scif";
272		reg = <0xffe44000 0x100>;
273		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
274		clocks = <&mstp0_clks R8A7779_CLK_SCIF4>,
275			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
276		clock-names = "fck", "brg_int", "scif_clk";
277		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
278		status = "disabled";
279	};
280
281	scif5: serial@ffe45000 {
282		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
283			     "renesas,scif";
284		reg = <0xffe45000 0x100>;
285		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
286		clocks = <&mstp0_clks R8A7779_CLK_SCIF5>,
287			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
288		clock-names = "fck", "brg_int", "scif_clk";
289		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
290		status = "disabled";
291	};
292
293	pfc: pin-controller@fffc0000 {
294		compatible = "renesas,pfc-r8a7779";
295		reg = <0xfffc0000 0x23c>;
296	};
297
298	thermal@ffc48000 {
299		compatible = "renesas,thermal-r8a7779", "renesas,rcar-thermal";
300		reg = <0xffc48000 0x38>;
301	};
302
303	tmu0: timer@ffd80000 {
304		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
305		reg = <0xffd80000 0x30>;
306		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
307			     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
308			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
309		clocks = <&mstp0_clks R8A7779_CLK_TMU0>;
310		clock-names = "fck";
311		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
312
313		#renesas,channels = <3>;
314
315		status = "disabled";
316	};
317
318	tmu1: timer@ffd81000 {
319		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
320		reg = <0xffd81000 0x30>;
321		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
322			     <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
323			     <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
324		clocks = <&mstp0_clks R8A7779_CLK_TMU1>;
325		clock-names = "fck";
326		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
327
328		#renesas,channels = <3>;
329
330		status = "disabled";
331	};
332
333	tmu2: timer@ffd82000 {
334		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
335		reg = <0xffd82000 0x30>;
336		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
337			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
338			     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
339		clocks = <&mstp0_clks R8A7779_CLK_TMU2>;
340		clock-names = "fck";
341		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
342
343		#renesas,channels = <3>;
344
345		status = "disabled";
346	};
347
348	sata: sata@fc600000 {
349		compatible = "renesas,sata-r8a7779", "renesas,rcar-sata";
350		reg = <0xfc600000 0x2000>;
351		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
352		clocks = <&mstp1_clks R8A7779_CLK_SATA>;
353		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
354		status = "disabled";
355	};
356
357	sdhi0: sd@ffe4c000 {
358		compatible = "renesas,sdhi-r8a7779",
359			     "renesas,rcar-gen1-sdhi";
360		reg = <0xffe4c000 0x100>;
361		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
362		clocks = <&mstp3_clks R8A7779_CLK_SDHI0>;
363		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
364		status = "disabled";
365	};
366
367	sdhi1: sd@ffe4d000 {
368		compatible = "renesas,sdhi-r8a7779",
369			     "renesas,rcar-gen1-sdhi";
370		reg = <0xffe4d000 0x100>;
371		interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
372		clocks = <&mstp3_clks R8A7779_CLK_SDHI1>;
373		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
374		status = "disabled";
375	};
376
377	sdhi2: sd@ffe4e000 {
378		compatible = "renesas,sdhi-r8a7779",
379			     "renesas,rcar-gen1-sdhi";
380		reg = <0xffe4e000 0x100>;
381		interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
382		clocks = <&mstp3_clks R8A7779_CLK_SDHI2>;
383		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
384		status = "disabled";
385	};
386
387	sdhi3: sd@ffe4f000 {
388		compatible = "renesas,sdhi-r8a7779",
389			     "renesas,rcar-gen1-sdhi";
390		reg = <0xffe4f000 0x100>;
391		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
392		clocks = <&mstp3_clks R8A7779_CLK_SDHI3>;
393		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
394		status = "disabled";
395	};
396
397	hspi0: spi@fffc7000 {
398		compatible = "renesas,hspi-r8a7779", "renesas,hspi";
399		reg = <0xfffc7000 0x18>;
400		interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
401		#address-cells = <1>;
402		#size-cells = <0>;
403		clocks = <&mstp0_clks R8A7779_CLK_HSPI>;
404		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
405		status = "disabled";
406	};
407
408	hspi1: spi@fffc8000 {
409		compatible = "renesas,hspi-r8a7779", "renesas,hspi";
410		reg = <0xfffc8000 0x18>;
411		interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
412		#address-cells = <1>;
413		#size-cells = <0>;
414		clocks = <&mstp0_clks R8A7779_CLK_HSPI>;
415		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
416		status = "disabled";
417	};
418
419	hspi2: spi@fffc6000 {
420		compatible = "renesas,hspi-r8a7779", "renesas,hspi";
421		reg = <0xfffc6000 0x18>;
422		interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
423		#address-cells = <1>;
424		#size-cells = <0>;
425		clocks = <&mstp0_clks R8A7779_CLK_HSPI>;
426		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
427		status = "disabled";
428	};
429
430	du: display@fff80000 {
431		compatible = "renesas,du-r8a7779";
432		reg = <0xfff80000 0x40000>;
433		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
434		clocks = <&mstp1_clks R8A7779_CLK_DU>;
435		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
436		status = "disabled";
437
438		ports {
439			#address-cells = <1>;
440			#size-cells = <0>;
441
442			port@0 {
443				reg = <0>;
444				du_out_rgb0: endpoint {
445				};
446			};
447			port@1 {
448				reg = <1>;
449				du_out_rgb1: endpoint {
450				};
451			};
452		};
453	};
454
455	clocks {
456		#address-cells = <1>;
457		#size-cells = <1>;
458		ranges;
459
460		/* External root clock */
461		extal_clk: extal {
462			compatible = "fixed-clock";
463			#clock-cells = <0>;
464			/* This value must be overriden by the board. */
465			clock-frequency = <0>;
466		};
467
468		/* External SCIF clock */
469		scif_clk: scif {
470			compatible = "fixed-clock";
471			#clock-cells = <0>;
472			/* This value must be overridden by the board. */
473			clock-frequency = <0>;
474		};
475
476		/* Special CPG clocks */
477		cpg_clocks: clocks@ffc80000 {
478			compatible = "renesas,r8a7779-cpg-clocks";
479			reg = <0xffc80000 0x30>;
480			clocks = <&extal_clk>;
481			#clock-cells = <1>;
482			clock-output-names = "plla", "z", "zs", "s",
483					     "s1", "p", "b", "out";
484			#power-domain-cells = <0>;
485		};
486
487		/* Fixed factor clocks */
488		i_clk: i {
489			compatible = "fixed-factor-clock";
490			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
491			#clock-cells = <0>;
492			clock-div = <2>;
493			clock-mult = <1>;
494		};
495		s3_clk: s3 {
496			compatible = "fixed-factor-clock";
497			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
498			#clock-cells = <0>;
499			clock-div = <8>;
500			clock-mult = <1>;
501		};
502		s4_clk: s4 {
503			compatible = "fixed-factor-clock";
504			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
505			#clock-cells = <0>;
506			clock-div = <16>;
507			clock-mult = <1>;
508		};
509		g_clk: g {
510			compatible = "fixed-factor-clock";
511			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
512			#clock-cells = <0>;
513			clock-div = <24>;
514			clock-mult = <1>;
515		};
516
517		/* Gate clocks */
518		mstp0_clks: clocks@ffc80030 {
519			compatible = "renesas,r8a7779-mstp-clocks",
520				     "renesas,cpg-mstp-clocks";
521			reg = <0xffc80030 4>;
522			clocks = <&cpg_clocks R8A7779_CLK_S>,
523				 <&cpg_clocks R8A7779_CLK_P>,
524				 <&cpg_clocks R8A7779_CLK_P>,
525				 <&cpg_clocks R8A7779_CLK_P>,
526				 <&cpg_clocks R8A7779_CLK_S>,
527				 <&cpg_clocks R8A7779_CLK_S>,
528				 <&cpg_clocks R8A7779_CLK_P>,
529				 <&cpg_clocks R8A7779_CLK_P>,
530				 <&cpg_clocks R8A7779_CLK_P>,
531				 <&cpg_clocks R8A7779_CLK_P>,
532				 <&cpg_clocks R8A7779_CLK_P>,
533				 <&cpg_clocks R8A7779_CLK_P>,
534				 <&cpg_clocks R8A7779_CLK_P>,
535				 <&cpg_clocks R8A7779_CLK_P>,
536				 <&cpg_clocks R8A7779_CLK_P>,
537				 <&cpg_clocks R8A7779_CLK_P>;
538			#clock-cells = <1>;
539			clock-indices = <
540				R8A7779_CLK_HSPI R8A7779_CLK_TMU2
541				R8A7779_CLK_TMU1 R8A7779_CLK_TMU0
542				R8A7779_CLK_HSCIF1 R8A7779_CLK_HSCIF0
543				R8A7779_CLK_SCIF5 R8A7779_CLK_SCIF4
544				R8A7779_CLK_SCIF3 R8A7779_CLK_SCIF2
545				R8A7779_CLK_SCIF1 R8A7779_CLK_SCIF0
546				R8A7779_CLK_I2C3 R8A7779_CLK_I2C2
547				R8A7779_CLK_I2C1 R8A7779_CLK_I2C0
548			>;
549			clock-output-names =
550				"hspi", "tmu2", "tmu1", "tmu0", "hscif1",
551				"hscif0", "scif5", "scif4", "scif3", "scif2",
552				"scif1", "scif0", "i2c3", "i2c2", "i2c1",
553				"i2c0";
554		};
555		mstp1_clks: clocks@ffc80034 {
556			compatible = "renesas,r8a7779-mstp-clocks",
557				     "renesas,cpg-mstp-clocks";
558			reg = <0xffc80034 4>, <0xffc80044 4>;
559			clocks = <&cpg_clocks R8A7779_CLK_P>,
560				 <&cpg_clocks R8A7779_CLK_P>,
561				 <&cpg_clocks R8A7779_CLK_S>,
562				 <&cpg_clocks R8A7779_CLK_S>,
563				 <&cpg_clocks R8A7779_CLK_S>,
564				 <&cpg_clocks R8A7779_CLK_S>,
565				 <&cpg_clocks R8A7779_CLK_P>,
566				 <&cpg_clocks R8A7779_CLK_P>,
567				 <&cpg_clocks R8A7779_CLK_P>,
568				 <&cpg_clocks R8A7779_CLK_S>;
569			#clock-cells = <1>;
570			clock-indices = <
571				R8A7779_CLK_USB01 R8A7779_CLK_USB2
572				R8A7779_CLK_DU R8A7779_CLK_VIN2
573				R8A7779_CLK_VIN1 R8A7779_CLK_VIN0
574				R8A7779_CLK_ETHER R8A7779_CLK_SATA
575				R8A7779_CLK_PCIE R8A7779_CLK_VIN3
576			>;
577			clock-output-names =
578				"usb01", "usb2",
579				"du", "vin2",
580				"vin1", "vin0",
581				"ether", "sata",
582				"pcie", "vin3";
583		};
584		mstp3_clks: clocks@ffc8003c {
585			compatible = "renesas,r8a7779-mstp-clocks",
586				     "renesas,cpg-mstp-clocks";
587			reg = <0xffc8003c 4>;
588			clocks = <&s4_clk>, <&s4_clk>, <&s4_clk>, <&s4_clk>,
589				 <&s4_clk>, <&s4_clk>;
590			#clock-cells = <1>;
591			clock-indices = <
592				R8A7779_CLK_SDHI3 R8A7779_CLK_SDHI2
593				R8A7779_CLK_SDHI1 R8A7779_CLK_SDHI0
594				R8A7779_CLK_MMC1 R8A7779_CLK_MMC0
595			>;
596			clock-output-names =
597				"sdhi3", "sdhi2", "sdhi1", "sdhi0",
598				"mmc1", "mmc0";
599		};
600	};
601
602	prr: chipid@ff000044 {
603		compatible = "renesas,prr";
604		reg = <0xff000044 4>;
605	};
606
607	rst: reset-controller@ffcc0000 {
608		compatible = "renesas,r8a7779-reset-wdt";
609		reg = <0xffcc0000 0x48>;
610	};
611
612	sysc: system-controller@ffd85000 {
613		compatible = "renesas,r8a7779-sysc";
614		reg = <0xffd85000 0x0200>;
615		#power-domain-cells = <1>;
616	};
617};
v4.10.11
  1/*
  2 * Device Tree Source for Renesas r8a7779
  3 *
  4 * Copyright (C) 2013 Renesas Solutions Corp.
  5 * Copyright (C) 2013 Simon Horman
  6 *
  7 * This file is licensed under the terms of the GNU General Public License
  8 * version 2.  This program is licensed "as is" without any warranty of any
  9 * kind, whether express or implied.
 10 */
 11
 12#include <dt-bindings/clock/r8a7779-clock.h>
 13#include <dt-bindings/interrupt-controller/arm-gic.h>
 14#include <dt-bindings/interrupt-controller/irq.h>
 15#include <dt-bindings/power/r8a7779-sysc.h>
 16
 17/ {
 18	compatible = "renesas,r8a7779";
 19	interrupt-parent = <&gic>;
 20	#address-cells = <1>;
 21	#size-cells = <1>;
 22
 23	cpus {
 24		#address-cells = <1>;
 25		#size-cells = <0>;
 26
 27		cpu@0 {
 28			device_type = "cpu";
 29			compatible = "arm,cortex-a9";
 30			reg = <0>;
 31			clock-frequency = <1000000000>;
 
 32		};
 33		cpu@1 {
 34			device_type = "cpu";
 35			compatible = "arm,cortex-a9";
 36			reg = <1>;
 37			clock-frequency = <1000000000>;
 
 38			power-domains = <&sysc R8A7779_PD_ARM1>;
 39		};
 40		cpu@2 {
 41			device_type = "cpu";
 42			compatible = "arm,cortex-a9";
 43			reg = <2>;
 44			clock-frequency = <1000000000>;
 
 45			power-domains = <&sysc R8A7779_PD_ARM2>;
 46		};
 47		cpu@3 {
 48			device_type = "cpu";
 49			compatible = "arm,cortex-a9";
 50			reg = <3>;
 51			clock-frequency = <1000000000>;
 
 52			power-domains = <&sysc R8A7779_PD_ARM3>;
 53		};
 54	};
 55
 56	aliases {
 57		spi0 = &hspi0;
 58		spi1 = &hspi1;
 59		spi2 = &hspi2;
 60	};
 61
 62	gic: interrupt-controller@f0001000 {
 63		compatible = "arm,cortex-a9-gic";
 64		#interrupt-cells = <3>;
 65		interrupt-controller;
 66		reg = <0xf0001000 0x1000>,
 67		      <0xf0000100 0x100>;
 68	};
 69
 70	timer@f0000600 {
 71		compatible = "arm,cortex-a9-twd-timer";
 72		reg = <0xf0000600 0x20>;
 73		interrupts = <GIC_PPI 13
 74			(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>;
 75		clocks = <&cpg_clocks R8A7779_CLK_ZS>;
 76	};
 77
 78	gpio0: gpio@ffc40000 {
 79		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
 80		reg = <0xffc40000 0x2c>;
 81		interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
 82		#gpio-cells = <2>;
 83		gpio-controller;
 84		gpio-ranges = <&pfc 0 0 32>;
 85		#interrupt-cells = <2>;
 86		interrupt-controller;
 87	};
 88
 89	gpio1: gpio@ffc41000 {
 90		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
 91		reg = <0xffc41000 0x2c>;
 92		interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
 93		#gpio-cells = <2>;
 94		gpio-controller;
 95		gpio-ranges = <&pfc 0 32 32>;
 96		#interrupt-cells = <2>;
 97		interrupt-controller;
 98	};
 99
100	gpio2: gpio@ffc42000 {
101		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
102		reg = <0xffc42000 0x2c>;
103		interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
104		#gpio-cells = <2>;
105		gpio-controller;
106		gpio-ranges = <&pfc 0 64 32>;
107		#interrupt-cells = <2>;
108		interrupt-controller;
109	};
110
111	gpio3: gpio@ffc43000 {
112		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
113		reg = <0xffc43000 0x2c>;
114		interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
115		#gpio-cells = <2>;
116		gpio-controller;
117		gpio-ranges = <&pfc 0 96 32>;
118		#interrupt-cells = <2>;
119		interrupt-controller;
120	};
121
122	gpio4: gpio@ffc44000 {
123		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
124		reg = <0xffc44000 0x2c>;
125		interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
126		#gpio-cells = <2>;
127		gpio-controller;
128		gpio-ranges = <&pfc 0 128 32>;
129		#interrupt-cells = <2>;
130		interrupt-controller;
131	};
132
133	gpio5: gpio@ffc45000 {
134		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
135		reg = <0xffc45000 0x2c>;
136		interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
137		#gpio-cells = <2>;
138		gpio-controller;
139		gpio-ranges = <&pfc 0 160 32>;
140		#interrupt-cells = <2>;
141		interrupt-controller;
142	};
143
144	gpio6: gpio@ffc46000 {
145		compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar";
146		reg = <0xffc46000 0x2c>;
147		interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
148		#gpio-cells = <2>;
149		gpio-controller;
150		gpio-ranges = <&pfc 0 192 9>;
151		#interrupt-cells = <2>;
152		interrupt-controller;
153	};
154
155	irqpin0: interrupt-controller@fe78001c {
156		compatible = "renesas,intc-irqpin-r8a7779", "renesas,intc-irqpin";
157		#interrupt-cells = <2>;
158		status = "disabled";
159		interrupt-controller;
160		reg = <0xfe78001c 4>,
161			<0xfe780010 4>,
162			<0xfe780024 4>,
163			<0xfe780044 4>,
164			<0xfe780064 4>,
165			<0xfe780000 4>;
166		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH
167			      GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH
168			      GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH
169			      GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
170		sense-bitfield-width = <2>;
171	};
172
173	i2c0: i2c@ffc70000 {
174		#address-cells = <1>;
175		#size-cells = <0>;
176		compatible = "renesas,i2c-r8a7779";
177		reg = <0xffc70000 0x1000>;
178		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
179		clocks = <&mstp0_clks R8A7779_CLK_I2C0>;
180		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
181		status = "disabled";
182	};
183
184	i2c1: i2c@ffc71000 {
185		#address-cells = <1>;
186		#size-cells = <0>;
187		compatible = "renesas,i2c-r8a7779";
188		reg = <0xffc71000 0x1000>;
189		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
190		clocks = <&mstp0_clks R8A7779_CLK_I2C1>;
191		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
192		status = "disabled";
193	};
194
195	i2c2: i2c@ffc72000 {
196		#address-cells = <1>;
197		#size-cells = <0>;
198		compatible = "renesas,i2c-r8a7779";
199		reg = <0xffc72000 0x1000>;
200		interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
201		clocks = <&mstp0_clks R8A7779_CLK_I2C2>;
202		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
203		status = "disabled";
204	};
205
206	i2c3: i2c@ffc73000 {
207		#address-cells = <1>;
208		#size-cells = <0>;
209		compatible = "renesas,i2c-r8a7779";
210		reg = <0xffc73000 0x1000>;
211		interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
212		clocks = <&mstp0_clks R8A7779_CLK_I2C3>;
213		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
214		status = "disabled";
215	};
216
217	scif0: serial@ffe40000 {
218		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
219			     "renesas,scif";
220		reg = <0xffe40000 0x100>;
221		interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
222		clocks = <&mstp0_clks R8A7779_CLK_SCIF0>,
223			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
224		clock-names = "fck", "brg_int", "scif_clk";
225		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
226		status = "disabled";
227	};
228
229	scif1: serial@ffe41000 {
230		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
231			     "renesas,scif";
232		reg = <0xffe41000 0x100>;
233		interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
234		clocks = <&mstp0_clks R8A7779_CLK_SCIF1>,
235			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
236		clock-names = "fck", "brg_int", "scif_clk";
237		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
238		status = "disabled";
239	};
240
241	scif2: serial@ffe42000 {
242		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
243			     "renesas,scif";
244		reg = <0xffe42000 0x100>;
245		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
246		clocks = <&mstp0_clks R8A7779_CLK_SCIF2>,
247			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
248		clock-names = "fck", "brg_int", "scif_clk";
249		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
250		status = "disabled";
251	};
252
253	scif3: serial@ffe43000 {
254		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
255			     "renesas,scif";
256		reg = <0xffe43000 0x100>;
257		interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
258		clocks = <&mstp0_clks R8A7779_CLK_SCIF3>,
259			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
260		clock-names = "fck", "brg_int", "scif_clk";
261		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
262		status = "disabled";
263	};
264
265	scif4: serial@ffe44000 {
266		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
267			     "renesas,scif";
268		reg = <0xffe44000 0x100>;
269		interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
270		clocks = <&mstp0_clks R8A7779_CLK_SCIF4>,
271			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
272		clock-names = "fck", "brg_int", "scif_clk";
273		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
274		status = "disabled";
275	};
276
277	scif5: serial@ffe45000 {
278		compatible = "renesas,scif-r8a7779", "renesas,rcar-gen1-scif",
279			     "renesas,scif";
280		reg = <0xffe45000 0x100>;
281		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
282		clocks = <&mstp0_clks R8A7779_CLK_SCIF5>,
283			 <&cpg_clocks R8A7779_CLK_S1>, <&scif_clk>;
284		clock-names = "fck", "brg_int", "scif_clk";
285		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
286		status = "disabled";
287	};
288
289	pfc: pfc@fffc0000 {
290		compatible = "renesas,pfc-r8a7779";
291		reg = <0xfffc0000 0x23c>;
292	};
293
294	thermal@ffc48000 {
295		compatible = "renesas,thermal-r8a7779", "renesas,rcar-thermal";
296		reg = <0xffc48000 0x38>;
297	};
298
299	tmu0: timer@ffd80000 {
300		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
301		reg = <0xffd80000 0x30>;
302		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
303			     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
304			     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
305		clocks = <&mstp0_clks R8A7779_CLK_TMU0>;
306		clock-names = "fck";
307		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
308
309		#renesas,channels = <3>;
310
311		status = "disabled";
312	};
313
314	tmu1: timer@ffd81000 {
315		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
316		reg = <0xffd81000 0x30>;
317		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
318			     <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
319			     <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
320		clocks = <&mstp0_clks R8A7779_CLK_TMU1>;
321		clock-names = "fck";
322		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
323
324		#renesas,channels = <3>;
325
326		status = "disabled";
327	};
328
329	tmu2: timer@ffd82000 {
330		compatible = "renesas,tmu-r8a7779", "renesas,tmu";
331		reg = <0xffd82000 0x30>;
332		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
333			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
334			     <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
335		clocks = <&mstp0_clks R8A7779_CLK_TMU2>;
336		clock-names = "fck";
337		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
338
339		#renesas,channels = <3>;
340
341		status = "disabled";
342	};
343
344	sata: sata@fc600000 {
345		compatible = "renesas,sata-r8a7779", "renesas,rcar-sata";
346		reg = <0xfc600000 0x2000>;
347		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
348		clocks = <&mstp1_clks R8A7779_CLK_SATA>;
349		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
 
350	};
351
352	sdhi0: sd@ffe4c000 {
353		compatible = "renesas,sdhi-r8a7779";
 
354		reg = <0xffe4c000 0x100>;
355		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
356		clocks = <&mstp3_clks R8A7779_CLK_SDHI0>;
357		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
358		status = "disabled";
359	};
360
361	sdhi1: sd@ffe4d000 {
362		compatible = "renesas,sdhi-r8a7779";
 
363		reg = <0xffe4d000 0x100>;
364		interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
365		clocks = <&mstp3_clks R8A7779_CLK_SDHI1>;
366		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
367		status = "disabled";
368	};
369
370	sdhi2: sd@ffe4e000 {
371		compatible = "renesas,sdhi-r8a7779";
 
372		reg = <0xffe4e000 0x100>;
373		interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
374		clocks = <&mstp3_clks R8A7779_CLK_SDHI2>;
375		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
376		status = "disabled";
377	};
378
379	sdhi3: sd@ffe4f000 {
380		compatible = "renesas,sdhi-r8a7779";
 
381		reg = <0xffe4f000 0x100>;
382		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
383		clocks = <&mstp3_clks R8A7779_CLK_SDHI3>;
384		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
385		status = "disabled";
386	};
387
388	hspi0: spi@fffc7000 {
389		compatible = "renesas,hspi-r8a7779", "renesas,hspi";
390		reg = <0xfffc7000 0x18>;
391		interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
392		#address-cells = <1>;
393		#size-cells = <0>;
394		clocks = <&mstp0_clks R8A7779_CLK_HSPI>;
395		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
396		status = "disabled";
397	};
398
399	hspi1: spi@fffc8000 {
400		compatible = "renesas,hspi-r8a7779", "renesas,hspi";
401		reg = <0xfffc8000 0x18>;
402		interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
403		#address-cells = <1>;
404		#size-cells = <0>;
405		clocks = <&mstp0_clks R8A7779_CLK_HSPI>;
406		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
407		status = "disabled";
408	};
409
410	hspi2: spi@fffc6000 {
411		compatible = "renesas,hspi-r8a7779", "renesas,hspi";
412		reg = <0xfffc6000 0x18>;
413		interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
414		#address-cells = <1>;
415		#size-cells = <0>;
416		clocks = <&mstp0_clks R8A7779_CLK_HSPI>;
417		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
418		status = "disabled";
419	};
420
421	du: display@fff80000 {
422		compatible = "renesas,du-r8a7779";
423		reg = <0xfff80000 0x40000>;
424		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
425		clocks = <&mstp1_clks R8A7779_CLK_DU>;
426		power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
427		status = "disabled";
428
429		ports {
430			#address-cells = <1>;
431			#size-cells = <0>;
432
433			port@0 {
434				reg = <0>;
435				du_out_rgb0: endpoint {
436				};
437			};
438			port@1 {
439				reg = <1>;
440				du_out_rgb1: endpoint {
441				};
442			};
443		};
444	};
445
446	clocks {
447		#address-cells = <1>;
448		#size-cells = <1>;
449		ranges;
450
451		/* External root clock */
452		extal_clk: extal {
453			compatible = "fixed-clock";
454			#clock-cells = <0>;
455			/* This value must be overriden by the board. */
456			clock-frequency = <0>;
457		};
458
459		/* External SCIF clock */
460		scif_clk: scif {
461			compatible = "fixed-clock";
462			#clock-cells = <0>;
463			/* This value must be overridden by the board. */
464			clock-frequency = <0>;
465		};
466
467		/* Special CPG clocks */
468		cpg_clocks: clocks@ffc80000 {
469			compatible = "renesas,r8a7779-cpg-clocks";
470			reg = <0xffc80000 0x30>;
471			clocks = <&extal_clk>;
472			#clock-cells = <1>;
473			clock-output-names = "plla", "z", "zs", "s",
474					     "s1", "p", "b", "out";
475			#power-domain-cells = <0>;
476		};
477
478		/* Fixed factor clocks */
479		i_clk: i {
480			compatible = "fixed-factor-clock";
481			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
482			#clock-cells = <0>;
483			clock-div = <2>;
484			clock-mult = <1>;
485		};
486		s3_clk: s3 {
487			compatible = "fixed-factor-clock";
488			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
489			#clock-cells = <0>;
490			clock-div = <8>;
491			clock-mult = <1>;
492		};
493		s4_clk: s4 {
494			compatible = "fixed-factor-clock";
495			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
496			#clock-cells = <0>;
497			clock-div = <16>;
498			clock-mult = <1>;
499		};
500		g_clk: g {
501			compatible = "fixed-factor-clock";
502			clocks = <&cpg_clocks R8A7779_CLK_PLLA>;
503			#clock-cells = <0>;
504			clock-div = <24>;
505			clock-mult = <1>;
506		};
507
508		/* Gate clocks */
509		mstp0_clks: clocks@ffc80030 {
510			compatible = "renesas,r8a7779-mstp-clocks",
511				     "renesas,cpg-mstp-clocks";
512			reg = <0xffc80030 4>;
513			clocks = <&cpg_clocks R8A7779_CLK_S>,
514				 <&cpg_clocks R8A7779_CLK_P>,
515				 <&cpg_clocks R8A7779_CLK_P>,
516				 <&cpg_clocks R8A7779_CLK_P>,
517				 <&cpg_clocks R8A7779_CLK_S>,
518				 <&cpg_clocks R8A7779_CLK_S>,
519				 <&cpg_clocks R8A7779_CLK_P>,
520				 <&cpg_clocks R8A7779_CLK_P>,
521				 <&cpg_clocks R8A7779_CLK_P>,
522				 <&cpg_clocks R8A7779_CLK_P>,
523				 <&cpg_clocks R8A7779_CLK_P>,
524				 <&cpg_clocks R8A7779_CLK_P>,
525				 <&cpg_clocks R8A7779_CLK_P>,
526				 <&cpg_clocks R8A7779_CLK_P>,
527				 <&cpg_clocks R8A7779_CLK_P>,
528				 <&cpg_clocks R8A7779_CLK_P>;
529			#clock-cells = <1>;
530			clock-indices = <
531				R8A7779_CLK_HSPI R8A7779_CLK_TMU2
532				R8A7779_CLK_TMU1 R8A7779_CLK_TMU0
533				R8A7779_CLK_HSCIF1 R8A7779_CLK_HSCIF0
534				R8A7779_CLK_SCIF5 R8A7779_CLK_SCIF4
535				R8A7779_CLK_SCIF3 R8A7779_CLK_SCIF2
536				R8A7779_CLK_SCIF1 R8A7779_CLK_SCIF0
537				R8A7779_CLK_I2C3 R8A7779_CLK_I2C2
538				R8A7779_CLK_I2C1 R8A7779_CLK_I2C0
539			>;
540			clock-output-names =
541				"hspi", "tmu2", "tmu1", "tmu0", "hscif1",
542				"hscif0", "scif5", "scif4", "scif3", "scif2",
543				"scif1", "scif0", "i2c3", "i2c2", "i2c1",
544				"i2c0";
545		};
546		mstp1_clks: clocks@ffc80034 {
547			compatible = "renesas,r8a7779-mstp-clocks",
548				     "renesas,cpg-mstp-clocks";
549			reg = <0xffc80034 4>, <0xffc80044 4>;
550			clocks = <&cpg_clocks R8A7779_CLK_P>,
551				 <&cpg_clocks R8A7779_CLK_P>,
552				 <&cpg_clocks R8A7779_CLK_S>,
553				 <&cpg_clocks R8A7779_CLK_S>,
554				 <&cpg_clocks R8A7779_CLK_S>,
555				 <&cpg_clocks R8A7779_CLK_S>,
556				 <&cpg_clocks R8A7779_CLK_P>,
557				 <&cpg_clocks R8A7779_CLK_P>,
558				 <&cpg_clocks R8A7779_CLK_P>,
559				 <&cpg_clocks R8A7779_CLK_S>;
560			#clock-cells = <1>;
561			clock-indices = <
562				R8A7779_CLK_USB01 R8A7779_CLK_USB2
563				R8A7779_CLK_DU R8A7779_CLK_VIN2
564				R8A7779_CLK_VIN1 R8A7779_CLK_VIN0
565				R8A7779_CLK_ETHER R8A7779_CLK_SATA
566				R8A7779_CLK_PCIE R8A7779_CLK_VIN3
567			>;
568			clock-output-names =
569				"usb01", "usb2",
570				"du", "vin2",
571				"vin1", "vin0",
572				"ether", "sata",
573				"pcie", "vin3";
574		};
575		mstp3_clks: clocks@ffc8003c {
576			compatible = "renesas,r8a7779-mstp-clocks",
577				     "renesas,cpg-mstp-clocks";
578			reg = <0xffc8003c 4>;
579			clocks = <&s4_clk>, <&s4_clk>, <&s4_clk>, <&s4_clk>,
580				 <&s4_clk>, <&s4_clk>;
581			#clock-cells = <1>;
582			clock-indices = <
583				R8A7779_CLK_SDHI3 R8A7779_CLK_SDHI2
584				R8A7779_CLK_SDHI1 R8A7779_CLK_SDHI0
585				R8A7779_CLK_MMC1 R8A7779_CLK_MMC0
586			>;
587			clock-output-names =
588				"sdhi3", "sdhi2", "sdhi1", "sdhi0",
589				"mmc1", "mmc0";
590		};
591	};
592
593	prr: chipid@ff000044 {
594		compatible = "renesas,prr";
595		reg = <0xff000044 4>;
596	};
597
598	rst: reset-controller@ffcc0000 {
599		compatible = "renesas,r8a7779-reset-wdt";
600		reg = <0xffcc0000 0x48>;
601	};
602
603	sysc: system-controller@ffd85000 {
604		compatible = "renesas,r8a7779-sysc";
605		reg = <0xffd85000 0x0200>;
606		#power-domain-cells = <1>;
607	};
608};