xref: /linux/scripts/dtc/include-prefixes/arm64/renesas/r9a09g057.dtsi (revision e3dc593ef3a854c8a0817b456269a806a9688277)
1// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2/*
3 * Device Tree Source for the RZ/V2H(P) SoC
4 *
5 * Copyright (C) 2024 Renesas Electronics Corp.
6 */
7
8#include <dt-bindings/clock/renesas,r9a09g057-cpg.h>
9#include <dt-bindings/interrupt-controller/arm-gic.h>
10
11/ {
12	compatible = "renesas,r9a09g057";
13	#address-cells = <2>;
14	#size-cells = <2>;
15
16	audio_extal_clk: audio-clk {
17		compatible = "fixed-clock";
18		#clock-cells = <0>;
19		/* This value must be overridden by the board */
20		clock-frequency = <0>;
21	};
22
23	cpus {
24		#address-cells = <1>;
25		#size-cells = <0>;
26
27		cpu0: cpu@0 {
28			compatible = "arm,cortex-a55";
29			reg = <0>;
30			device_type = "cpu";
31			next-level-cache = <&L3_CA55>;
32			enable-method = "psci";
33		};
34
35		cpu1: cpu@100 {
36			compatible = "arm,cortex-a55";
37			reg = <0x100>;
38			device_type = "cpu";
39			next-level-cache = <&L3_CA55>;
40			enable-method = "psci";
41		};
42
43		cpu2: cpu@200 {
44			compatible = "arm,cortex-a55";
45			reg = <0x200>;
46			device_type = "cpu";
47			next-level-cache = <&L3_CA55>;
48			enable-method = "psci";
49		};
50
51		cpu3: cpu@300 {
52			compatible = "arm,cortex-a55";
53			reg = <0x300>;
54			device_type = "cpu";
55			next-level-cache = <&L3_CA55>;
56			enable-method = "psci";
57		};
58
59		L3_CA55: cache-controller-0 {
60			compatible = "cache";
61			cache-unified;
62			cache-size = <0x100000>;
63			cache-level = <3>;
64		};
65	};
66
67	psci {
68		compatible = "arm,psci-1.0", "arm,psci-0.2";
69		method = "smc";
70	};
71
72	qextal_clk: qextal-clk {
73		compatible = "fixed-clock";
74		#clock-cells = <0>;
75		/* This value must be overridden by the board */
76		clock-frequency = <0>;
77	};
78
79	rtxin_clk: rtxin-clk {
80		compatible = "fixed-clock";
81		#clock-cells = <0>;
82		/* This value must be overridden by the board */
83		clock-frequency = <0>;
84	};
85
86	soc: soc {
87		compatible = "simple-bus";
88		interrupt-parent = <&gic>;
89		#address-cells = <2>;
90		#size-cells = <2>;
91		ranges;
92
93		pinctrl: pinctrl@10410000 {
94			compatible = "renesas,r9a09g057-pinctrl";
95			reg = <0 0x10410000 0 0x10000>;
96			clocks = <&cpg CPG_CORE R9A09G057_IOTOP_0_SHCLK>;
97			gpio-controller;
98			#gpio-cells = <2>;
99			gpio-ranges = <&pinctrl 0 0 96>;
100			#interrupt-cells = <2>;
101			interrupt-controller;
102			power-domains = <&cpg>;
103			resets = <&cpg 0xa5>, <&cpg 0xa6>;
104		};
105
106		cpg: clock-controller@10420000 {
107			compatible = "renesas,r9a09g057-cpg";
108			reg = <0 0x10420000 0 0x10000>;
109			clocks = <&audio_extal_clk>, <&rtxin_clk>, <&qextal_clk>;
110			clock-names = "audio_extal", "rtxin", "qextal";
111			#clock-cells = <2>;
112			#reset-cells = <1>;
113			#power-domain-cells = <0>;
114		};
115
116		sys: system-controller@10430000 {
117			compatible = "renesas,r9a09g057-sys";
118			reg = <0 0x10430000 0 0x10000>;
119			clocks = <&cpg CPG_CORE R9A09G057_SYS_0_PCLK>;
120			resets = <&cpg 0x30>;
121			status = "disabled";
122		};
123
124		ostm0: timer@11800000 {
125			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
126			reg = <0x0 0x11800000 0x0 0x1000>;
127			interrupts = <GIC_SPI 17 IRQ_TYPE_EDGE_RISING>;
128			clocks = <&cpg CPG_MOD 0x43>;
129			resets = <&cpg 0x6d>;
130			power-domains = <&cpg>;
131			status = "disabled";
132		};
133
134		ostm1: timer@11801000 {
135			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
136			reg = <0x0 0x11801000 0x0 0x1000>;
137			interrupts = <GIC_SPI 18 IRQ_TYPE_EDGE_RISING>;
138			clocks = <&cpg CPG_MOD 0x44>;
139			resets = <&cpg 0x6e>;
140			power-domains = <&cpg>;
141			status = "disabled";
142		};
143
144		ostm2: timer@14000000 {
145			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
146			reg = <0x0 0x14000000 0x0 0x1000>;
147			interrupts = <GIC_SPI 19 IRQ_TYPE_EDGE_RISING>;
148			clocks = <&cpg CPG_MOD 0x45>;
149			resets = <&cpg 0x6f>;
150			power-domains = <&cpg>;
151			status = "disabled";
152		};
153
154		ostm3: timer@14001000 {
155			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
156			reg = <0x0 0x14001000 0x0 0x1000>;
157			interrupts = <GIC_SPI 20 IRQ_TYPE_EDGE_RISING>;
158			clocks = <&cpg CPG_MOD 0x46>;
159			resets = <&cpg 0x70>;
160			power-domains = <&cpg>;
161			status = "disabled";
162		};
163
164		ostm4: timer@12c00000 {
165			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
166			reg = <0x0 0x12c00000 0x0 0x1000>;
167			interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
168			clocks = <&cpg CPG_MOD 0x47>;
169			resets = <&cpg 0x71>;
170			power-domains = <&cpg>;
171			status = "disabled";
172		};
173
174		ostm5: timer@12c01000 {
175			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
176			reg = <0x0 0x12c01000 0x0 0x1000>;
177			interrupts = <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>;
178			clocks = <&cpg CPG_MOD 0x48>;
179			resets = <&cpg 0x72>;
180			power-domains = <&cpg>;
181			status = "disabled";
182		};
183
184		ostm6: timer@12c02000 {
185			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
186			reg = <0x0 0x12c02000 0x0 0x1000>;
187			interrupts = <GIC_SPI 23 IRQ_TYPE_EDGE_RISING>;
188			clocks = <&cpg CPG_MOD 0x49>;
189			resets = <&cpg 0x73>;
190			power-domains = <&cpg>;
191			status = "disabled";
192		};
193
194		ostm7: timer@12c03000 {
195			compatible = "renesas,r9a09g057-ostm", "renesas,ostm";
196			reg = <0x0 0x12c03000 0x0 0x1000>;
197			interrupts = <GIC_SPI 24 IRQ_TYPE_EDGE_RISING>;
198			clocks = <&cpg CPG_MOD 0x4a>;
199			resets = <&cpg 0x74>;
200			power-domains = <&cpg>;
201			status = "disabled";
202		};
203
204		scif: serial@11c01400 {
205			compatible = "renesas,scif-r9a09g057";
206			reg = <0 0x11c01400 0 0x400>;
207			interrupts = <GIC_SPI 529 IRQ_TYPE_LEVEL_HIGH>,
208				     <GIC_SPI 532 IRQ_TYPE_LEVEL_HIGH>,
209				     <GIC_SPI 533 IRQ_TYPE_LEVEL_HIGH>,
210				     <GIC_SPI 530 IRQ_TYPE_LEVEL_HIGH>,
211				     <GIC_SPI 534 IRQ_TYPE_LEVEL_HIGH>,
212				     <GIC_SPI 531 IRQ_TYPE_LEVEL_HIGH>,
213				     <GIC_SPI 535 IRQ_TYPE_LEVEL_HIGH>,
214				     <GIC_SPI 536 IRQ_TYPE_EDGE_RISING>,
215				     <GIC_SPI 537 IRQ_TYPE_EDGE_RISING>;
216			interrupt-names = "eri", "rxi", "txi", "bri", "dri",
217					  "tei", "tei-dri", "rxi-edge", "txi-edge";
218			clocks = <&cpg CPG_MOD 0x8f>;
219			clock-names = "fck";
220			power-domains = <&cpg>;
221			resets = <&cpg 0x95>;
222			status = "disabled";
223		};
224
225		gic: interrupt-controller@14900000 {
226			compatible = "arm,gic-v3";
227			reg = <0x0 0x14900000 0 0x20000>,
228			      <0x0 0x14940000 0 0x80000>;
229			#interrupt-cells = <3>;
230			#address-cells = <0>;
231			interrupt-controller;
232			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
233		};
234	};
235
236	timer {
237		compatible = "arm,armv8-timer";
238		interrupts-extended = <&gic GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
239				      <&gic GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
240				      <&gic GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
241				      <&gic GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>,
242				      <&gic GIC_PPI 12 IRQ_TYPE_LEVEL_LOW>;
243		interrupt-names = "sec-phys", "phys", "virt", "hyp-phys", "hyp-virt";
244	};
245};
246