• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// SPDX-License-Identifier: GPL-2.0 OR MIT
2/*
3 * Copyright 2014 Carlo Caione <carlo@caione.org>
4 */
5
6#include <dt-bindings/interrupt-controller/irq.h>
7#include <dt-bindings/interrupt-controller/arm-gic.h>
8
9/ {
10	#address-cells = <1>;
11	#size-cells = <1>;
12	interrupt-parent = <&gic>;
13
14	soc {
15		compatible = "simple-bus";
16		#address-cells = <1>;
17		#size-cells = <1>;
18		ranges;
19
20		cbus: cbus@c1100000 {
21			compatible = "simple-bus";
22			reg = <0xc1100000 0x200000>;
23			#address-cells = <1>;
24			#size-cells = <1>;
25			ranges = <0x0 0xc1100000 0x200000>;
26
27			hhi: system-controller@4000 {
28				compatible = "amlogic,meson-hhi-sysctrl",
29					     "simple-mfd",
30					     "syscon";
31				reg = <0x4000 0x400>;
32			};
33
34			assist: assist@7c00 {
35				compatible = "amlogic,meson-mx-assist", "syscon";
36				reg = <0x7c00 0x200>;
37			};
38
39			hwrng: rng@8100 {
40				compatible = "amlogic,meson-rng";
41				reg = <0x8100 0x8>;
42			};
43
44			uart_A: serial@84c0 {
45				compatible = "amlogic,meson6-uart";
46				reg = <0x84c0 0x18>;
47				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
48				status = "disabled";
49			};
50
51			uart_B: serial@84dc {
52				compatible = "amlogic,meson6-uart";
53				reg = <0x84dc 0x18>;
54				interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
55				status = "disabled";
56			};
57
58			i2c_A: i2c@8500 {
59				compatible = "amlogic,meson6-i2c";
60				reg = <0x8500 0x20>;
61				interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
62				#address-cells = <1>;
63				#size-cells = <0>;
64				status = "disabled";
65			};
66
67			pwm_ab: pwm@8550 {
68				compatible = "amlogic,meson-pwm";
69				reg = <0x8550 0x10>;
70				#pwm-cells = <3>;
71				status = "disabled";
72			};
73
74			pwm_cd: pwm@8650 {
75				compatible = "amlogic,meson-pwm";
76				reg = <0x8650 0x10>;
77				#pwm-cells = <3>;
78				status = "disabled";
79			};
80
81			saradc: adc@8680 {
82				compatible = "amlogic,meson-saradc";
83				reg = <0x8680 0x34>;
84				#io-channel-cells = <1>;
85				interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>;
86				status = "disabled";
87			};
88
89			uart_C: serial@8700 {
90				compatible = "amlogic,meson6-uart";
91				reg = <0x8700 0x18>;
92				interrupts = <GIC_SPI 93 IRQ_TYPE_EDGE_RISING>;
93				status = "disabled";
94			};
95
96			i2c_B: i2c@87c0 {
97				compatible = "amlogic,meson6-i2c";
98				reg = <0x87c0 0x20>;
99				interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
100				#address-cells = <1>;
101				#size-cells = <0>;
102				status = "disabled";
103			};
104
105			usb0_phy: phy@8800 {
106				compatible = "amlogic,meson-mx-usb2-phy";
107				#phy-cells = <0>;
108				reg = <0x8800 0x20>;
109				status = "disabled";
110			};
111
112			usb1_phy: phy@8820 {
113				compatible = "amlogic,meson-mx-usb2-phy";
114				#phy-cells = <0>;
115				reg = <0x8820 0x20>;
116				status = "disabled";
117			};
118
119			sdio: mmc@8c20 {
120				compatible = "amlogic,meson-mx-sdio";
121				reg = <0x8c20 0x20>;
122				interrupts = <GIC_SPI 28 IRQ_TYPE_EDGE_RISING>;
123				#address-cells = <1>;
124				#size-cells = <0>;
125				status = "disabled";
126			};
127
128			spifc: spi@8c80 {
129				compatible = "amlogic,meson6-spifc";
130				reg = <0x8c80 0x80>;
131				#address-cells = <1>;
132				#size-cells = <0>;
133				status = "disabled";
134			};
135
136			sdhc: mmc@8e00 {
137				compatible = "amlogic,meson-mx-sdhc";
138				reg = <0x8e00 0x42>;
139				interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>;
140				status = "disabled";
141			};
142
143			gpio_intc: interrupt-controller@9880 {
144				compatible = "amlogic,meson-gpio-intc";
145				reg = <0x9880 0x10>;
146				interrupt-controller;
147				#interrupt-cells = <2>;
148				amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
149				status = "disabled";
150			};
151
152			wdt: watchdog@9900 {
153				compatible = "amlogic,meson6-wdt";
154				reg = <0x9900 0x8>;
155				interrupts = <GIC_SPI 0 IRQ_TYPE_EDGE_RISING>;
156			};
157
158			timer_abcde: timer@9940 {
159				compatible = "amlogic,meson6-timer";
160				reg = <0x9940 0x18>;
161				interrupts = <GIC_SPI 10 IRQ_TYPE_EDGE_RISING>,
162					     <GIC_SPI 11 IRQ_TYPE_EDGE_RISING>,
163					     <GIC_SPI 6 IRQ_TYPE_EDGE_RISING>,
164					     <GIC_SPI 29 IRQ_TYPE_EDGE_RISING>;
165			};
166		};
167
168		L2: cache-controller@c4200000 {
169			compatible = "arm,pl310-cache";
170			reg = <0xc4200000 0x1000>;
171			cache-unified;
172			cache-level = <2>;
173		};
174
175		periph: bus@c4300000 {
176			compatible = "simple-bus";
177			reg = <0xc4300000 0x10000>;
178			#address-cells = <1>;
179			#size-cells = <1>;
180			ranges = <0x0 0xc4300000 0x10000>;
181
182			gic: interrupt-controller@1000 {
183				compatible = "arm,cortex-a9-gic";
184				reg = <0x1000 0x1000>,
185				      <0x100 0x100>;
186				interrupt-controller;
187				#interrupt-cells = <3>;
188			};
189		};
190
191		aobus: aobus@c8100000 {
192			compatible = "simple-bus";
193			reg = <0xc8100000 0x100000>;
194			#address-cells = <1>;
195			#size-cells = <1>;
196			ranges = <0x0 0xc8100000 0x100000>;
197
198			ir_receiver: ir-receiver@480 {
199				compatible= "amlogic,meson6-ir";
200				reg = <0x480 0x20>;
201				interrupts = <GIC_SPI 15 IRQ_TYPE_EDGE_RISING>;
202				status = "disabled";
203			};
204
205			uart_AO: serial@4c0 {
206				compatible = "amlogic,meson6-uart", "amlogic,meson-ao-uart";
207				reg = <0x4c0 0x18>;
208				interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
209				status = "disabled";
210			};
211
212			i2c_AO: i2c@500 {
213				compatible = "amlogic,meson6-i2c";
214				reg = <0x500 0x20>;
215				interrupts = <GIC_SPI 92 IRQ_TYPE_EDGE_RISING>;
216				#address-cells = <1>;
217				#size-cells = <0>;
218				status = "disabled";
219			};
220
221			rtc: rtc@740 {
222				compatible = "amlogic,meson6-rtc";
223				reg = <0x740 0x14>;
224				interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>;
225				#address-cells = <1>;
226				#size-cells = <1>;
227				status = "disabled";
228			};
229		};
230
231		usb0: usb@c9040000 {
232			compatible = "snps,dwc2";
233			#address-cells = <1>;
234			#size-cells = <0>;
235			reg = <0xc9040000 0x40000>;
236			interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
237			phys = <&usb0_phy>;
238			phy-names = "usb2-phy";
239			g-rx-fifo-size = <512>;
240			g-np-tx-fifo-size = <500>;
241			g-tx-fifo-size = <256 192 128 128 128>;
242			dr_mode = "host";
243			status = "disabled";
244		};
245
246		usb1: usb@c90c0000 {
247			compatible = "snps,dwc2";
248			#address-cells = <1>;
249			#size-cells = <0>;
250			reg = <0xc90c0000 0x40000>;
251			interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
252			phys = <&usb1_phy>;
253			phy-names = "usb2-phy";
254			dr_mode = "host";
255			status = "disabled";
256		};
257
258		ethmac: ethernet@c9410000 {
259			compatible = "amlogic,meson6-dwmac", "snps,dwmac";
260			reg = <0xc9410000 0x10000
261			       0xc1108108 0x4>;
262			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
263			interrupt-names = "macirq";
264			status = "disabled";
265		};
266
267		ahb_sram: sram@d9000000 {
268			compatible = "mmio-sram";
269			reg = <0xd9000000 0x20000>;
270			#address-cells = <1>;
271			#size-cells = <1>;
272			ranges = <0 0xd9000000 0x20000>;
273		};
274
275		bootrom: bootrom@d9040000 {
276			compatible = "amlogic,meson-mx-bootrom", "syscon";
277			reg = <0xd9040000 0x10000>;
278		};
279
280		secbus: secbus@da000000 {
281			compatible = "simple-bus";
282			reg = <0xda000000 0x6000>;
283			#address-cells = <1>;
284			#size-cells = <1>;
285			ranges = <0x0 0xda000000 0x6000>;
286
287			efuse: nvmem@0 {
288				compatible = "amlogic,meson6-efuse";
289				reg = <0x0 0x2000>;
290				#address-cells = <1>;
291				#size-cells = <1>;
292			};
293		};
294	};
295
296	xtal: xtal-clk {
297		compatible = "fixed-clock";
298		clock-frequency = <24000000>;
299		clock-output-names = "xtal";
300		#clock-cells = <0>;
301	};
302}; /* end of / */
303