xref: /freebsd/sys/contrib/device-tree/src/arm64/mediatek/mt8183.dtsi (revision 5def4c47d4bd90b209b9b4a4ba9faec15846d8fd)
1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2c66ec88fSEmmanuel Vadot/*
3c66ec88fSEmmanuel Vadot * Copyright (c) 2018 MediaTek Inc.
4c66ec88fSEmmanuel Vadot * Author: Ben Ho <ben.ho@mediatek.com>
5c66ec88fSEmmanuel Vadot *	   Erin Lo <erin.lo@mediatek.com>
6c66ec88fSEmmanuel Vadot */
7c66ec88fSEmmanuel Vadot
8c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/mt8183-clk.h>
9*5def4c47SEmmanuel Vadot#include <dt-bindings/gce/mt8183-gce.h>
10c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
11c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
12*5def4c47SEmmanuel Vadot#include <dt-bindings/memory/mt8183-larb-port.h>
13*5def4c47SEmmanuel Vadot#include <dt-bindings/power/mt8183-power.h>
14c66ec88fSEmmanuel Vadot#include <dt-bindings/reset-controller/mt8183-resets.h>
15c66ec88fSEmmanuel Vadot#include <dt-bindings/phy/phy.h>
16c66ec88fSEmmanuel Vadot#include "mt8183-pinfunc.h"
17c66ec88fSEmmanuel Vadot
18c66ec88fSEmmanuel Vadot/ {
19c66ec88fSEmmanuel Vadot	compatible = "mediatek,mt8183";
20c66ec88fSEmmanuel Vadot	interrupt-parent = <&sysirq>;
21c66ec88fSEmmanuel Vadot	#address-cells = <2>;
22c66ec88fSEmmanuel Vadot	#size-cells = <2>;
23c66ec88fSEmmanuel Vadot
24c66ec88fSEmmanuel Vadot	aliases {
25c66ec88fSEmmanuel Vadot		i2c0 = &i2c0;
26c66ec88fSEmmanuel Vadot		i2c1 = &i2c1;
27c66ec88fSEmmanuel Vadot		i2c2 = &i2c2;
28c66ec88fSEmmanuel Vadot		i2c3 = &i2c3;
29c66ec88fSEmmanuel Vadot		i2c4 = &i2c4;
30c66ec88fSEmmanuel Vadot		i2c5 = &i2c5;
31c66ec88fSEmmanuel Vadot		i2c6 = &i2c6;
32c66ec88fSEmmanuel Vadot		i2c7 = &i2c7;
33c66ec88fSEmmanuel Vadot		i2c8 = &i2c8;
34c66ec88fSEmmanuel Vadot		i2c9 = &i2c9;
35c66ec88fSEmmanuel Vadot		i2c10 = &i2c10;
36c66ec88fSEmmanuel Vadot		i2c11 = &i2c11;
37*5def4c47SEmmanuel Vadot		ovl0 = &ovl0;
38*5def4c47SEmmanuel Vadot		ovl-2l0 = &ovl_2l0;
39*5def4c47SEmmanuel Vadot		ovl-2l1 = &ovl_2l1;
40*5def4c47SEmmanuel Vadot		rdma0 = &rdma0;
41*5def4c47SEmmanuel Vadot		rdma1 = &rdma1;
42c66ec88fSEmmanuel Vadot	};
43c66ec88fSEmmanuel Vadot
44c66ec88fSEmmanuel Vadot	cpus {
45c66ec88fSEmmanuel Vadot		#address-cells = <1>;
46c66ec88fSEmmanuel Vadot		#size-cells = <0>;
47c66ec88fSEmmanuel Vadot
48c66ec88fSEmmanuel Vadot		cpu-map {
49c66ec88fSEmmanuel Vadot			cluster0 {
50c66ec88fSEmmanuel Vadot				core0 {
51c66ec88fSEmmanuel Vadot					cpu = <&cpu0>;
52c66ec88fSEmmanuel Vadot				};
53c66ec88fSEmmanuel Vadot				core1 {
54c66ec88fSEmmanuel Vadot					cpu = <&cpu1>;
55c66ec88fSEmmanuel Vadot				};
56c66ec88fSEmmanuel Vadot				core2 {
57c66ec88fSEmmanuel Vadot					cpu = <&cpu2>;
58c66ec88fSEmmanuel Vadot				};
59c66ec88fSEmmanuel Vadot				core3 {
60c66ec88fSEmmanuel Vadot					cpu = <&cpu3>;
61c66ec88fSEmmanuel Vadot				};
62c66ec88fSEmmanuel Vadot			};
63c66ec88fSEmmanuel Vadot
64c66ec88fSEmmanuel Vadot			cluster1 {
65c66ec88fSEmmanuel Vadot				core0 {
66c66ec88fSEmmanuel Vadot					cpu = <&cpu4>;
67c66ec88fSEmmanuel Vadot				};
68c66ec88fSEmmanuel Vadot				core1 {
69c66ec88fSEmmanuel Vadot					cpu = <&cpu5>;
70c66ec88fSEmmanuel Vadot				};
71c66ec88fSEmmanuel Vadot				core2 {
72c66ec88fSEmmanuel Vadot					cpu = <&cpu6>;
73c66ec88fSEmmanuel Vadot				};
74c66ec88fSEmmanuel Vadot				core3 {
75c66ec88fSEmmanuel Vadot					cpu = <&cpu7>;
76c66ec88fSEmmanuel Vadot				};
77c66ec88fSEmmanuel Vadot			};
78c66ec88fSEmmanuel Vadot		};
79c66ec88fSEmmanuel Vadot
80c66ec88fSEmmanuel Vadot		cpu0: cpu@0 {
81c66ec88fSEmmanuel Vadot			device_type = "cpu";
82c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
83c66ec88fSEmmanuel Vadot			reg = <0x000>;
84c66ec88fSEmmanuel Vadot			enable-method = "psci";
85c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
86c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
87c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
88c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
89c66ec88fSEmmanuel Vadot		};
90c66ec88fSEmmanuel Vadot
91c66ec88fSEmmanuel Vadot		cpu1: cpu@1 {
92c66ec88fSEmmanuel Vadot			device_type = "cpu";
93c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
94c66ec88fSEmmanuel Vadot			reg = <0x001>;
95c66ec88fSEmmanuel Vadot			enable-method = "psci";
96c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
97c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
98c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
99c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
100c66ec88fSEmmanuel Vadot		};
101c66ec88fSEmmanuel Vadot
102c66ec88fSEmmanuel Vadot		cpu2: cpu@2 {
103c66ec88fSEmmanuel Vadot			device_type = "cpu";
104c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
105c66ec88fSEmmanuel Vadot			reg = <0x002>;
106c66ec88fSEmmanuel Vadot			enable-method = "psci";
107c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
108c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
109c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
110c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
111c66ec88fSEmmanuel Vadot		};
112c66ec88fSEmmanuel Vadot
113c66ec88fSEmmanuel Vadot		cpu3: cpu@3 {
114c66ec88fSEmmanuel Vadot			device_type = "cpu";
115c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
116c66ec88fSEmmanuel Vadot			reg = <0x003>;
117c66ec88fSEmmanuel Vadot			enable-method = "psci";
118c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
119c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
120c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
121c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
122c66ec88fSEmmanuel Vadot		};
123c66ec88fSEmmanuel Vadot
124c66ec88fSEmmanuel Vadot		cpu4: cpu@100 {
125c66ec88fSEmmanuel Vadot			device_type = "cpu";
126c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
127c66ec88fSEmmanuel Vadot			reg = <0x100>;
128c66ec88fSEmmanuel Vadot			enable-method = "psci";
129c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
130c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
131c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
132c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
133c66ec88fSEmmanuel Vadot		};
134c66ec88fSEmmanuel Vadot
135c66ec88fSEmmanuel Vadot		cpu5: cpu@101 {
136c66ec88fSEmmanuel Vadot			device_type = "cpu";
137c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
138c66ec88fSEmmanuel Vadot			reg = <0x101>;
139c66ec88fSEmmanuel Vadot			enable-method = "psci";
140c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
141c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
142c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
143c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
144c66ec88fSEmmanuel Vadot		};
145c66ec88fSEmmanuel Vadot
146c66ec88fSEmmanuel Vadot		cpu6: cpu@102 {
147c66ec88fSEmmanuel Vadot			device_type = "cpu";
148c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
149c66ec88fSEmmanuel Vadot			reg = <0x102>;
150c66ec88fSEmmanuel Vadot			enable-method = "psci";
151c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
152c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
153c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
154c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
155c66ec88fSEmmanuel Vadot		};
156c66ec88fSEmmanuel Vadot
157c66ec88fSEmmanuel Vadot		cpu7: cpu@103 {
158c66ec88fSEmmanuel Vadot			device_type = "cpu";
159c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
160c66ec88fSEmmanuel Vadot			reg = <0x103>;
161c66ec88fSEmmanuel Vadot			enable-method = "psci";
162c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
163c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
164c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
165c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
166c66ec88fSEmmanuel Vadot		};
167c66ec88fSEmmanuel Vadot
168c66ec88fSEmmanuel Vadot		idle-states {
169c66ec88fSEmmanuel Vadot			entry-method = "psci";
170c66ec88fSEmmanuel Vadot
171c66ec88fSEmmanuel Vadot			CPU_SLEEP: cpu-sleep {
172c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
173c66ec88fSEmmanuel Vadot				local-timer-stop;
174c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x00010001>;
175c66ec88fSEmmanuel Vadot				entry-latency-us = <200>;
176c66ec88fSEmmanuel Vadot				exit-latency-us = <200>;
177c66ec88fSEmmanuel Vadot				min-residency-us = <800>;
178c66ec88fSEmmanuel Vadot			};
179c66ec88fSEmmanuel Vadot
180c66ec88fSEmmanuel Vadot			CLUSTER_SLEEP0: cluster-sleep-0 {
181c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
182c66ec88fSEmmanuel Vadot				local-timer-stop;
183c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x01010001>;
184c66ec88fSEmmanuel Vadot				entry-latency-us = <250>;
185c66ec88fSEmmanuel Vadot				exit-latency-us = <400>;
186c66ec88fSEmmanuel Vadot				min-residency-us = <1000>;
187c66ec88fSEmmanuel Vadot			};
188c66ec88fSEmmanuel Vadot			CLUSTER_SLEEP1: cluster-sleep-1 {
189c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
190c66ec88fSEmmanuel Vadot				local-timer-stop;
191c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x01010001>;
192c66ec88fSEmmanuel Vadot				entry-latency-us = <250>;
193c66ec88fSEmmanuel Vadot				exit-latency-us = <400>;
194c66ec88fSEmmanuel Vadot				min-residency-us = <1300>;
195c66ec88fSEmmanuel Vadot			};
196c66ec88fSEmmanuel Vadot		};
197c66ec88fSEmmanuel Vadot	};
198c66ec88fSEmmanuel Vadot
199c66ec88fSEmmanuel Vadot	pmu-a53 {
200c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a53-pmu";
201c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
202c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster0>;
203c66ec88fSEmmanuel Vadot	};
204c66ec88fSEmmanuel Vadot
205c66ec88fSEmmanuel Vadot	pmu-a73 {
206c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a73-pmu";
207c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
208c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster1>;
209c66ec88fSEmmanuel Vadot	};
210c66ec88fSEmmanuel Vadot
211c66ec88fSEmmanuel Vadot	psci {
212c66ec88fSEmmanuel Vadot		compatible      = "arm,psci-1.0";
213c66ec88fSEmmanuel Vadot		method          = "smc";
214c66ec88fSEmmanuel Vadot	};
215c66ec88fSEmmanuel Vadot
216c66ec88fSEmmanuel Vadot	clk26m: oscillator {
217c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
218c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
219c66ec88fSEmmanuel Vadot		clock-frequency = <26000000>;
220c66ec88fSEmmanuel Vadot		clock-output-names = "clk26m";
221c66ec88fSEmmanuel Vadot	};
222c66ec88fSEmmanuel Vadot
223c66ec88fSEmmanuel Vadot	timer {
224c66ec88fSEmmanuel Vadot		compatible = "arm,armv8-timer";
225c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
226c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW 0>,
227c66ec88fSEmmanuel Vadot			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW 0>,
228c66ec88fSEmmanuel Vadot			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW 0>,
229c66ec88fSEmmanuel Vadot			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW 0>;
230c66ec88fSEmmanuel Vadot	};
231c66ec88fSEmmanuel Vadot
232c66ec88fSEmmanuel Vadot	soc {
233c66ec88fSEmmanuel Vadot		#address-cells = <2>;
234c66ec88fSEmmanuel Vadot		#size-cells = <2>;
235c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
236c66ec88fSEmmanuel Vadot		ranges;
237c66ec88fSEmmanuel Vadot
238c66ec88fSEmmanuel Vadot		soc_data: soc_data@8000000 {
239c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-efuse",
240c66ec88fSEmmanuel Vadot				     "mediatek,efuse";
241c66ec88fSEmmanuel Vadot			reg = <0 0x08000000 0 0x0010>;
242c66ec88fSEmmanuel Vadot			#address-cells = <1>;
243c66ec88fSEmmanuel Vadot			#size-cells = <1>;
244c66ec88fSEmmanuel Vadot			status = "disabled";
245c66ec88fSEmmanuel Vadot		};
246c66ec88fSEmmanuel Vadot
247c66ec88fSEmmanuel Vadot		gic: interrupt-controller@c000000 {
248c66ec88fSEmmanuel Vadot			compatible = "arm,gic-v3";
249c66ec88fSEmmanuel Vadot			#interrupt-cells = <4>;
250c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
251c66ec88fSEmmanuel Vadot			interrupt-controller;
252c66ec88fSEmmanuel Vadot			reg = <0 0x0c000000 0 0x40000>,  /* GICD */
253c66ec88fSEmmanuel Vadot			      <0 0x0c100000 0 0x200000>, /* GICR */
254c66ec88fSEmmanuel Vadot			      <0 0x0c400000 0 0x2000>,   /* GICC */
255c66ec88fSEmmanuel Vadot			      <0 0x0c410000 0 0x1000>,   /* GICH */
256c66ec88fSEmmanuel Vadot			      <0 0x0c420000 0 0x2000>;   /* GICV */
257c66ec88fSEmmanuel Vadot
258c66ec88fSEmmanuel Vadot			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>;
259c66ec88fSEmmanuel Vadot			ppi-partitions {
260c66ec88fSEmmanuel Vadot				ppi_cluster0: interrupt-partition-0 {
261c66ec88fSEmmanuel Vadot					affinity = <&cpu0 &cpu1 &cpu2 &cpu3>;
262c66ec88fSEmmanuel Vadot				};
263c66ec88fSEmmanuel Vadot				ppi_cluster1: interrupt-partition-1 {
264c66ec88fSEmmanuel Vadot					affinity = <&cpu4 &cpu5 &cpu6 &cpu7>;
265c66ec88fSEmmanuel Vadot				};
266c66ec88fSEmmanuel Vadot			};
267c66ec88fSEmmanuel Vadot		};
268c66ec88fSEmmanuel Vadot
269c66ec88fSEmmanuel Vadot		mcucfg: syscon@c530000 {
270c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mcucfg", "syscon";
271c66ec88fSEmmanuel Vadot			reg = <0 0x0c530000 0 0x1000>;
272c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
273c66ec88fSEmmanuel Vadot		};
274c66ec88fSEmmanuel Vadot
275c66ec88fSEmmanuel Vadot		sysirq: interrupt-controller@c530a80 {
276c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-sysirq",
277c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-sysirq";
278c66ec88fSEmmanuel Vadot			interrupt-controller;
279c66ec88fSEmmanuel Vadot			#interrupt-cells = <3>;
280c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
281c66ec88fSEmmanuel Vadot			reg = <0 0x0c530a80 0 0x50>;
282c66ec88fSEmmanuel Vadot		};
283c66ec88fSEmmanuel Vadot
284c66ec88fSEmmanuel Vadot		topckgen: syscon@10000000 {
285c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-topckgen", "syscon";
286c66ec88fSEmmanuel Vadot			reg = <0 0x10000000 0 0x1000>;
287c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
288c66ec88fSEmmanuel Vadot		};
289c66ec88fSEmmanuel Vadot
290c66ec88fSEmmanuel Vadot		infracfg: syscon@10001000 {
291c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-infracfg", "syscon";
292c66ec88fSEmmanuel Vadot			reg = <0 0x10001000 0 0x1000>;
293c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
294c66ec88fSEmmanuel Vadot			#reset-cells = <1>;
295c66ec88fSEmmanuel Vadot		};
296c66ec88fSEmmanuel Vadot
297c66ec88fSEmmanuel Vadot		pericfg: syscon@10003000 {
298c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-pericfg", "syscon";
299c66ec88fSEmmanuel Vadot			reg = <0 0x10003000 0 0x1000>;
300c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
301c66ec88fSEmmanuel Vadot		};
302c66ec88fSEmmanuel Vadot
303c66ec88fSEmmanuel Vadot		pio: pinctrl@10005000 {
304c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-pinctrl";
305c66ec88fSEmmanuel Vadot			reg = <0 0x10005000 0 0x1000>,
306c66ec88fSEmmanuel Vadot			      <0 0x11f20000 0 0x1000>,
307c66ec88fSEmmanuel Vadot			      <0 0x11e80000 0 0x1000>,
308c66ec88fSEmmanuel Vadot			      <0 0x11e70000 0 0x1000>,
309c66ec88fSEmmanuel Vadot			      <0 0x11e90000 0 0x1000>,
310c66ec88fSEmmanuel Vadot			      <0 0x11d30000 0 0x1000>,
311c66ec88fSEmmanuel Vadot			      <0 0x11d20000 0 0x1000>,
312c66ec88fSEmmanuel Vadot			      <0 0x11c50000 0 0x1000>,
313c66ec88fSEmmanuel Vadot			      <0 0x11f30000 0 0x1000>,
314c66ec88fSEmmanuel Vadot			      <0 0x1000b000 0 0x1000>;
315c66ec88fSEmmanuel Vadot			reg-names = "iocfg0", "iocfg1", "iocfg2",
316c66ec88fSEmmanuel Vadot				    "iocfg3", "iocfg4", "iocfg5",
317c66ec88fSEmmanuel Vadot				    "iocfg6", "iocfg7", "iocfg8",
318c66ec88fSEmmanuel Vadot				    "eint";
319c66ec88fSEmmanuel Vadot			gpio-controller;
320c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
321c66ec88fSEmmanuel Vadot			gpio-ranges = <&pio 0 0 192>;
322c66ec88fSEmmanuel Vadot			interrupt-controller;
323c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>;
324c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
325c66ec88fSEmmanuel Vadot		};
326c66ec88fSEmmanuel Vadot
327*5def4c47SEmmanuel Vadot		scpsys: syscon@10006000 {
328*5def4c47SEmmanuel Vadot			compatible = "syscon", "simple-mfd";
329*5def4c47SEmmanuel Vadot			reg = <0 0x10006000 0 0x1000>;
330*5def4c47SEmmanuel Vadot			#power-domain-cells = <1>;
331*5def4c47SEmmanuel Vadot
332*5def4c47SEmmanuel Vadot			/* System Power Manager */
333*5def4c47SEmmanuel Vadot			spm: power-controller {
334*5def4c47SEmmanuel Vadot				compatible = "mediatek,mt8183-power-controller";
335*5def4c47SEmmanuel Vadot				#address-cells = <1>;
336*5def4c47SEmmanuel Vadot				#size-cells = <0>;
337*5def4c47SEmmanuel Vadot				#power-domain-cells = <1>;
338*5def4c47SEmmanuel Vadot
339*5def4c47SEmmanuel Vadot				/* power domain of the SoC */
340*5def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_AUDIO {
341*5def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_AUDIO>;
342*5def4c47SEmmanuel Vadot					clocks = <&topckgen CLK_TOP_MUX_AUD_INTBUS>,
343*5def4c47SEmmanuel Vadot						 <&infracfg CLK_INFRA_AUDIO>,
344*5def4c47SEmmanuel Vadot						 <&infracfg CLK_INFRA_AUDIO_26M_BCLK>;
345*5def4c47SEmmanuel Vadot					clock-names = "audio", "audio1", "audio2";
346*5def4c47SEmmanuel Vadot					#power-domain-cells = <0>;
347*5def4c47SEmmanuel Vadot				};
348*5def4c47SEmmanuel Vadot
349*5def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_CONN {
350*5def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_CONN>;
351*5def4c47SEmmanuel Vadot					mediatek,infracfg = <&infracfg>;
352*5def4c47SEmmanuel Vadot					#power-domain-cells = <0>;
353*5def4c47SEmmanuel Vadot				};
354*5def4c47SEmmanuel Vadot
355*5def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_MFG_ASYNC {
356*5def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_MFG_ASYNC>;
357*5def4c47SEmmanuel Vadot					clocks =  <&topckgen CLK_TOP_MUX_MFG>;
358*5def4c47SEmmanuel Vadot					clock-names = "mfg";
359*5def4c47SEmmanuel Vadot					#address-cells = <1>;
360*5def4c47SEmmanuel Vadot					#size-cells = <0>;
361*5def4c47SEmmanuel Vadot					#power-domain-cells = <1>;
362*5def4c47SEmmanuel Vadot
363*5def4c47SEmmanuel Vadot					mfg: power-domain@MT8183_POWER_DOMAIN_MFG {
364*5def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_MFG>;
365*5def4c47SEmmanuel Vadot						#address-cells = <1>;
366*5def4c47SEmmanuel Vadot						#size-cells = <0>;
367*5def4c47SEmmanuel Vadot						#power-domain-cells = <1>;
368*5def4c47SEmmanuel Vadot
369*5def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_MFG_CORE0 {
370*5def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_MFG_CORE0>;
371*5def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
372*5def4c47SEmmanuel Vadot						};
373*5def4c47SEmmanuel Vadot
374*5def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_MFG_CORE1 {
375*5def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_MFG_CORE1>;
376*5def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
377*5def4c47SEmmanuel Vadot						};
378*5def4c47SEmmanuel Vadot
379*5def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_MFG_2D {
380*5def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_MFG_2D>;
381*5def4c47SEmmanuel Vadot							mediatek,infracfg = <&infracfg>;
382*5def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
383*5def4c47SEmmanuel Vadot						};
384*5def4c47SEmmanuel Vadot					};
385*5def4c47SEmmanuel Vadot				};
386*5def4c47SEmmanuel Vadot
387*5def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_DISP {
388*5def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_DISP>;
389*5def4c47SEmmanuel Vadot					clocks = <&topckgen CLK_TOP_MUX_MM>,
390*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_SMI_COMMON>,
391*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_SMI_LARB0>,
392*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_SMI_LARB1>,
393*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_COMM0>,
394*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_COMM1>,
395*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_CCU2MM>,
396*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_IPU12MM>,
397*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_IMG2MM>,
398*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_CAM2MM>,
399*5def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_IPU2MM>;
400*5def4c47SEmmanuel Vadot					clock-names = "mm", "mm-0", "mm-1", "mm-2", "mm-3",
401*5def4c47SEmmanuel Vadot						      "mm-4", "mm-5", "mm-6", "mm-7",
402*5def4c47SEmmanuel Vadot						      "mm-8", "mm-9";
403*5def4c47SEmmanuel Vadot					mediatek,infracfg = <&infracfg>;
404*5def4c47SEmmanuel Vadot					mediatek,smi = <&smi_common>;
405*5def4c47SEmmanuel Vadot					#address-cells = <1>;
406*5def4c47SEmmanuel Vadot					#size-cells = <0>;
407*5def4c47SEmmanuel Vadot					#power-domain-cells = <1>;
408*5def4c47SEmmanuel Vadot
409*5def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_CAM {
410*5def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_CAM>;
411*5def4c47SEmmanuel Vadot						clocks = <&topckgen CLK_TOP_MUX_CAM>,
412*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_LARB6>,
413*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_LARB3>,
414*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_SENINF>,
415*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CAMSV0>,
416*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CAMSV1>,
417*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CAMSV2>,
418*5def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CCU>;
419*5def4c47SEmmanuel Vadot						clock-names = "cam", "cam-0", "cam-1",
420*5def4c47SEmmanuel Vadot							      "cam-2", "cam-3", "cam-4",
421*5def4c47SEmmanuel Vadot							      "cam-5", "cam-6";
422*5def4c47SEmmanuel Vadot						mediatek,infracfg = <&infracfg>;
423*5def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
424*5def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
425*5def4c47SEmmanuel Vadot					};
426*5def4c47SEmmanuel Vadot
427*5def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_ISP {
428*5def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_ISP>;
429*5def4c47SEmmanuel Vadot						clocks = <&topckgen CLK_TOP_MUX_IMG>,
430*5def4c47SEmmanuel Vadot							 <&imgsys CLK_IMG_LARB5>,
431*5def4c47SEmmanuel Vadot							 <&imgsys CLK_IMG_LARB2>;
432*5def4c47SEmmanuel Vadot						clock-names = "isp", "isp-0", "isp-1";
433*5def4c47SEmmanuel Vadot						mediatek,infracfg = <&infracfg>;
434*5def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
435*5def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
436*5def4c47SEmmanuel Vadot					};
437*5def4c47SEmmanuel Vadot
438*5def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_VDEC {
439*5def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_VDEC>;
440*5def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
441*5def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
442*5def4c47SEmmanuel Vadot					};
443*5def4c47SEmmanuel Vadot
444*5def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_VENC {
445*5def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_VENC>;
446*5def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
447*5def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
448*5def4c47SEmmanuel Vadot					};
449*5def4c47SEmmanuel Vadot
450*5def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_VPU_TOP {
451*5def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_VPU_TOP>;
452*5def4c47SEmmanuel Vadot						clocks = <&topckgen CLK_TOP_MUX_IPU_IF>,
453*5def4c47SEmmanuel Vadot							 <&topckgen CLK_TOP_MUX_DSP>,
454*5def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_IPU>,
455*5def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_AHB>,
456*5def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_AXI>,
457*5def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_ISP>,
458*5def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_CAM_ADL>,
459*5def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_IMG_ADL>;
460*5def4c47SEmmanuel Vadot						clock-names = "vpu", "vpu1", "vpu-0", "vpu-1",
461*5def4c47SEmmanuel Vadot							      "vpu-2", "vpu-3", "vpu-4", "vpu-5";
462*5def4c47SEmmanuel Vadot						mediatek,infracfg = <&infracfg>;
463*5def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
464*5def4c47SEmmanuel Vadot						#address-cells = <1>;
465*5def4c47SEmmanuel Vadot						#size-cells = <0>;
466*5def4c47SEmmanuel Vadot						#power-domain-cells = <1>;
467*5def4c47SEmmanuel Vadot
468*5def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_VPU_CORE0 {
469*5def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_VPU_CORE0>;
470*5def4c47SEmmanuel Vadot							clocks = <&topckgen CLK_TOP_MUX_DSP1>;
471*5def4c47SEmmanuel Vadot							clock-names = "vpu2";
472*5def4c47SEmmanuel Vadot							mediatek,infracfg = <&infracfg>;
473*5def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
474*5def4c47SEmmanuel Vadot						};
475*5def4c47SEmmanuel Vadot
476*5def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_VPU_CORE1 {
477*5def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_VPU_CORE1>;
478*5def4c47SEmmanuel Vadot							clocks = <&topckgen CLK_TOP_MUX_DSP2>;
479*5def4c47SEmmanuel Vadot							clock-names = "vpu3";
480*5def4c47SEmmanuel Vadot							mediatek,infracfg = <&infracfg>;
481*5def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
482*5def4c47SEmmanuel Vadot						};
483*5def4c47SEmmanuel Vadot					};
484*5def4c47SEmmanuel Vadot				};
485*5def4c47SEmmanuel Vadot			};
486*5def4c47SEmmanuel Vadot		};
487*5def4c47SEmmanuel Vadot
488c66ec88fSEmmanuel Vadot		watchdog: watchdog@10007000 {
4896be33864SEmmanuel Vadot			compatible = "mediatek,mt8183-wdt";
490c66ec88fSEmmanuel Vadot			reg = <0 0x10007000 0 0x100>;
491c66ec88fSEmmanuel Vadot			#reset-cells = <1>;
492c66ec88fSEmmanuel Vadot		};
493c66ec88fSEmmanuel Vadot
494c66ec88fSEmmanuel Vadot		apmixedsys: syscon@1000c000 {
495c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-apmixedsys", "syscon";
496c66ec88fSEmmanuel Vadot			reg = <0 0x1000c000 0 0x1000>;
497c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
498c66ec88fSEmmanuel Vadot		};
499c66ec88fSEmmanuel Vadot
500c66ec88fSEmmanuel Vadot		pwrap: pwrap@1000d000 {
501c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-pwrap";
502c66ec88fSEmmanuel Vadot			reg = <0 0x1000d000 0 0x1000>;
503c66ec88fSEmmanuel Vadot			reg-names = "pwrap";
504c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>;
505c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_PMICSPI>,
506c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_PMIC_AP>;
507c66ec88fSEmmanuel Vadot			clock-names = "spi", "wrap";
508c66ec88fSEmmanuel Vadot		};
509c66ec88fSEmmanuel Vadot
5106be33864SEmmanuel Vadot		scp: scp@10500000 {
5116be33864SEmmanuel Vadot			compatible = "mediatek,mt8183-scp";
5126be33864SEmmanuel Vadot			reg = <0 0x10500000 0 0x80000>,
5136be33864SEmmanuel Vadot			      <0 0x105c0000 0 0x19080>;
5146be33864SEmmanuel Vadot			reg-names = "sram", "cfg";
5156be33864SEmmanuel Vadot			interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
5166be33864SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_SCPSYS>;
5176be33864SEmmanuel Vadot			clock-names = "main";
5186be33864SEmmanuel Vadot			memory-region = <&scp_mem_reserved>;
5196be33864SEmmanuel Vadot			status = "disabled";
5206be33864SEmmanuel Vadot		};
5216be33864SEmmanuel Vadot
522c66ec88fSEmmanuel Vadot		systimer: timer@10017000 {
523c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-timer",
524c66ec88fSEmmanuel Vadot				     "mediatek,mt6765-timer";
525c66ec88fSEmmanuel Vadot			reg = <0 0x10017000 0 0x1000>;
526c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
527c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_CLK13M>;
528c66ec88fSEmmanuel Vadot			clock-names = "clk13m";
529c66ec88fSEmmanuel Vadot		};
530c66ec88fSEmmanuel Vadot
531*5def4c47SEmmanuel Vadot		iommu: iommu@10205000 {
532*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-m4u";
533*5def4c47SEmmanuel Vadot			reg = <0 0x10205000 0 0x1000>;
534*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_LOW>;
535*5def4c47SEmmanuel Vadot			mediatek,larbs = <&larb0 &larb1 &larb2 &larb3
536*5def4c47SEmmanuel Vadot					  &larb4 &larb5 &larb6>;
537*5def4c47SEmmanuel Vadot			#iommu-cells = <1>;
538*5def4c47SEmmanuel Vadot		};
539*5def4c47SEmmanuel Vadot
540c66ec88fSEmmanuel Vadot		gce: mailbox@10238000 {
541c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-gce";
542c66ec88fSEmmanuel Vadot			reg = <0 0x10238000 0 0x4000>;
543c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_LOW>;
544*5def4c47SEmmanuel Vadot			#mbox-cells = <2>;
545c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_GCE>;
546c66ec88fSEmmanuel Vadot			clock-names = "gce";
547c66ec88fSEmmanuel Vadot		};
548c66ec88fSEmmanuel Vadot
549c66ec88fSEmmanuel Vadot		auxadc: auxadc@11001000 {
550c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-auxadc",
551c66ec88fSEmmanuel Vadot				     "mediatek,mt8173-auxadc";
552c66ec88fSEmmanuel Vadot			reg = <0 0x11001000 0 0x1000>;
553c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_AUXADC>;
554c66ec88fSEmmanuel Vadot			clock-names = "main";
555c66ec88fSEmmanuel Vadot			#io-channel-cells = <1>;
556c66ec88fSEmmanuel Vadot			status = "disabled";
557c66ec88fSEmmanuel Vadot		};
558c66ec88fSEmmanuel Vadot
559c66ec88fSEmmanuel Vadot		uart0: serial@11002000 {
560c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-uart",
561c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-uart";
562c66ec88fSEmmanuel Vadot			reg = <0 0x11002000 0 0x1000>;
563c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>;
564c66ec88fSEmmanuel Vadot			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART0>;
565c66ec88fSEmmanuel Vadot			clock-names = "baud", "bus";
566c66ec88fSEmmanuel Vadot			status = "disabled";
567c66ec88fSEmmanuel Vadot		};
568c66ec88fSEmmanuel Vadot
569c66ec88fSEmmanuel Vadot		uart1: serial@11003000 {
570c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-uart",
571c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-uart";
572c66ec88fSEmmanuel Vadot			reg = <0 0x11003000 0 0x1000>;
573c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>;
574c66ec88fSEmmanuel Vadot			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART1>;
575c66ec88fSEmmanuel Vadot			clock-names = "baud", "bus";
576c66ec88fSEmmanuel Vadot			status = "disabled";
577c66ec88fSEmmanuel Vadot		};
578c66ec88fSEmmanuel Vadot
579c66ec88fSEmmanuel Vadot		uart2: serial@11004000 {
580c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-uart",
581c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-uart";
582c66ec88fSEmmanuel Vadot			reg = <0 0x11004000 0 0x1000>;
583c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>;
584c66ec88fSEmmanuel Vadot			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART2>;
585c66ec88fSEmmanuel Vadot			clock-names = "baud", "bus";
586c66ec88fSEmmanuel Vadot			status = "disabled";
587c66ec88fSEmmanuel Vadot		};
588c66ec88fSEmmanuel Vadot
589c66ec88fSEmmanuel Vadot		i2c6: i2c@11005000 {
590c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
591c66ec88fSEmmanuel Vadot			reg = <0 0x11005000 0 0x1000>,
592c66ec88fSEmmanuel Vadot			      <0 0x11000600 0 0x80>;
593c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>;
594c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C6>,
595c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
596c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
597c66ec88fSEmmanuel Vadot			clock-div = <1>;
598c66ec88fSEmmanuel Vadot			#address-cells = <1>;
599c66ec88fSEmmanuel Vadot			#size-cells = <0>;
600c66ec88fSEmmanuel Vadot			status = "disabled";
601c66ec88fSEmmanuel Vadot		};
602c66ec88fSEmmanuel Vadot
603c66ec88fSEmmanuel Vadot		i2c0: i2c@11007000 {
604c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
605c66ec88fSEmmanuel Vadot			reg = <0 0x11007000 0 0x1000>,
606c66ec88fSEmmanuel Vadot			      <0 0x11000080 0 0x80>;
607c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>;
608c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C0>,
609c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
610c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
611c66ec88fSEmmanuel Vadot			clock-div = <1>;
612c66ec88fSEmmanuel Vadot			#address-cells = <1>;
613c66ec88fSEmmanuel Vadot			#size-cells = <0>;
614c66ec88fSEmmanuel Vadot			status = "disabled";
615c66ec88fSEmmanuel Vadot		};
616c66ec88fSEmmanuel Vadot
617c66ec88fSEmmanuel Vadot		i2c4: i2c@11008000 {
618c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
619c66ec88fSEmmanuel Vadot			reg = <0 0x11008000 0 0x1000>,
620c66ec88fSEmmanuel Vadot			      <0 0x11000100 0 0x80>;
621c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_LOW>;
622c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C1>,
623c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
624c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C1_ARBITER>;
625c66ec88fSEmmanuel Vadot			clock-names = "main", "dma","arb";
626c66ec88fSEmmanuel Vadot			clock-div = <1>;
627c66ec88fSEmmanuel Vadot			#address-cells = <1>;
628c66ec88fSEmmanuel Vadot			#size-cells = <0>;
629c66ec88fSEmmanuel Vadot			status = "disabled";
630c66ec88fSEmmanuel Vadot		};
631c66ec88fSEmmanuel Vadot
632c66ec88fSEmmanuel Vadot		i2c2: i2c@11009000 {
633c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
634c66ec88fSEmmanuel Vadot			reg = <0 0x11009000 0 0x1000>,
635c66ec88fSEmmanuel Vadot			      <0 0x11000280 0 0x80>;
636c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_LOW>;
637c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C2>,
638c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
639c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C2_ARBITER>;
640c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
641c66ec88fSEmmanuel Vadot			clock-div = <1>;
642c66ec88fSEmmanuel Vadot			#address-cells = <1>;
643c66ec88fSEmmanuel Vadot			#size-cells = <0>;
644c66ec88fSEmmanuel Vadot			status = "disabled";
645c66ec88fSEmmanuel Vadot		};
646c66ec88fSEmmanuel Vadot
647c66ec88fSEmmanuel Vadot		spi0: spi@1100a000 {
648c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
649c66ec88fSEmmanuel Vadot			#address-cells = <1>;
650c66ec88fSEmmanuel Vadot			#size-cells = <0>;
651c66ec88fSEmmanuel Vadot			reg = <0 0x1100a000 0 0x1000>;
652c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_LOW>;
653c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
654c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
655c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI0>;
656c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
657c66ec88fSEmmanuel Vadot			status = "disabled";
658c66ec88fSEmmanuel Vadot		};
659c66ec88fSEmmanuel Vadot
660*5def4c47SEmmanuel Vadot		pwm0: pwm@1100e000 {
661*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-pwm";
662*5def4c47SEmmanuel Vadot			reg = <0 0x1100e000 0 0x1000>;
663*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_LOW>;
664*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
665*5def4c47SEmmanuel Vadot			#pwm-cells = <2>;
666*5def4c47SEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_DISP_PWM>,
667*5def4c47SEmmanuel Vadot					<&infracfg CLK_INFRA_DISP_PWM>;
668*5def4c47SEmmanuel Vadot			clock-names = "main", "mm";
669*5def4c47SEmmanuel Vadot		};
670*5def4c47SEmmanuel Vadot
671*5def4c47SEmmanuel Vadot		pwm1: pwm@11006000 {
672*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-pwm";
673*5def4c47SEmmanuel Vadot			reg = <0 0x11006000 0 0x1000>;
674*5def4c47SEmmanuel Vadot			#pwm-cells = <2>;
675*5def4c47SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_PWM>,
676*5def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM_HCLK>,
677*5def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM1>,
678*5def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM2>,
679*5def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM3>,
680*5def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM4>;
681*5def4c47SEmmanuel Vadot			clock-names = "top", "main", "pwm1", "pwm2", "pwm3",
682*5def4c47SEmmanuel Vadot				      "pwm4";
683*5def4c47SEmmanuel Vadot		};
684*5def4c47SEmmanuel Vadot
685c66ec88fSEmmanuel Vadot		i2c3: i2c@1100f000 {
686c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
687c66ec88fSEmmanuel Vadot			reg = <0 0x1100f000 0 0x1000>,
688c66ec88fSEmmanuel Vadot			      <0 0x11000400 0 0x80>;
689c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>;
690c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C3>,
691c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
692c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
693c66ec88fSEmmanuel Vadot			clock-div = <1>;
694c66ec88fSEmmanuel Vadot			#address-cells = <1>;
695c66ec88fSEmmanuel Vadot			#size-cells = <0>;
696c66ec88fSEmmanuel Vadot			status = "disabled";
697c66ec88fSEmmanuel Vadot		};
698c66ec88fSEmmanuel Vadot
699c66ec88fSEmmanuel Vadot		spi1: spi@11010000 {
700c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
701c66ec88fSEmmanuel Vadot			#address-cells = <1>;
702c66ec88fSEmmanuel Vadot			#size-cells = <0>;
703c66ec88fSEmmanuel Vadot			reg = <0 0x11010000 0 0x1000>;
704c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_LOW>;
705c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
706c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
707c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI1>;
708c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
709c66ec88fSEmmanuel Vadot			status = "disabled";
710c66ec88fSEmmanuel Vadot		};
711c66ec88fSEmmanuel Vadot
712c66ec88fSEmmanuel Vadot		i2c1: i2c@11011000 {
713c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
714c66ec88fSEmmanuel Vadot			reg = <0 0x11011000 0 0x1000>,
715c66ec88fSEmmanuel Vadot			      <0 0x11000480 0 0x80>;
716c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>;
717c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C4>,
718c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
719c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
720c66ec88fSEmmanuel Vadot			clock-div = <1>;
721c66ec88fSEmmanuel Vadot			#address-cells = <1>;
722c66ec88fSEmmanuel Vadot			#size-cells = <0>;
723c66ec88fSEmmanuel Vadot			status = "disabled";
724c66ec88fSEmmanuel Vadot		};
725c66ec88fSEmmanuel Vadot
726c66ec88fSEmmanuel Vadot		spi2: spi@11012000 {
727c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
728c66ec88fSEmmanuel Vadot			#address-cells = <1>;
729c66ec88fSEmmanuel Vadot			#size-cells = <0>;
730c66ec88fSEmmanuel Vadot			reg = <0 0x11012000 0 0x1000>;
731c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_LOW>;
732c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
733c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
734c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI2>;
735c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
736c66ec88fSEmmanuel Vadot			status = "disabled";
737c66ec88fSEmmanuel Vadot		};
738c66ec88fSEmmanuel Vadot
739c66ec88fSEmmanuel Vadot		spi3: spi@11013000 {
740c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
741c66ec88fSEmmanuel Vadot			#address-cells = <1>;
742c66ec88fSEmmanuel Vadot			#size-cells = <0>;
743c66ec88fSEmmanuel Vadot			reg = <0 0x11013000 0 0x1000>;
744c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_LOW>;
745c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
746c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
747c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI3>;
748c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
749c66ec88fSEmmanuel Vadot			status = "disabled";
750c66ec88fSEmmanuel Vadot		};
751c66ec88fSEmmanuel Vadot
752c66ec88fSEmmanuel Vadot		i2c9: i2c@11014000 {
753c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
754c66ec88fSEmmanuel Vadot			reg = <0 0x11014000 0 0x1000>,
755c66ec88fSEmmanuel Vadot			      <0 0x11000180 0 0x80>;
756c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_LOW>;
757c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C1_IMM>,
758c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
759c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C1_ARBITER>;
760c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
761c66ec88fSEmmanuel Vadot			clock-div = <1>;
762c66ec88fSEmmanuel Vadot			#address-cells = <1>;
763c66ec88fSEmmanuel Vadot			#size-cells = <0>;
764c66ec88fSEmmanuel Vadot			status = "disabled";
765c66ec88fSEmmanuel Vadot		};
766c66ec88fSEmmanuel Vadot
767c66ec88fSEmmanuel Vadot		i2c10: i2c@11015000 {
768c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
769c66ec88fSEmmanuel Vadot			reg = <0 0x11015000 0 0x1000>,
770c66ec88fSEmmanuel Vadot			      <0 0x11000300 0 0x80>;
771c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_LOW>;
772c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C2_IMM>,
773c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
774c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C2_ARBITER>;
775c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
776c66ec88fSEmmanuel Vadot			clock-div = <1>;
777c66ec88fSEmmanuel Vadot			#address-cells = <1>;
778c66ec88fSEmmanuel Vadot			#size-cells = <0>;
779c66ec88fSEmmanuel Vadot			status = "disabled";
780c66ec88fSEmmanuel Vadot		};
781c66ec88fSEmmanuel Vadot
782c66ec88fSEmmanuel Vadot		i2c5: i2c@11016000 {
783c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
784c66ec88fSEmmanuel Vadot			reg = <0 0x11016000 0 0x1000>,
785c66ec88fSEmmanuel Vadot			      <0 0x11000500 0 0x80>;
786c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_LOW>;
787c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C5>,
788c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
789c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C5_ARBITER>;
790c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
791c66ec88fSEmmanuel Vadot			clock-div = <1>;
792c66ec88fSEmmanuel Vadot			#address-cells = <1>;
793c66ec88fSEmmanuel Vadot			#size-cells = <0>;
794c66ec88fSEmmanuel Vadot			status = "disabled";
795c66ec88fSEmmanuel Vadot		};
796c66ec88fSEmmanuel Vadot
797c66ec88fSEmmanuel Vadot		i2c11: i2c@11017000 {
798c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
799c66ec88fSEmmanuel Vadot			reg = <0 0x11017000 0 0x1000>,
800c66ec88fSEmmanuel Vadot			      <0 0x11000580 0 0x80>;
801c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_LOW>;
802c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C5_IMM>,
803c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
804c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C5_ARBITER>;
805c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
806c66ec88fSEmmanuel Vadot			clock-div = <1>;
807c66ec88fSEmmanuel Vadot			#address-cells = <1>;
808c66ec88fSEmmanuel Vadot			#size-cells = <0>;
809c66ec88fSEmmanuel Vadot			status = "disabled";
810c66ec88fSEmmanuel Vadot		};
811c66ec88fSEmmanuel Vadot
812c66ec88fSEmmanuel Vadot		spi4: spi@11018000 {
813c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
814c66ec88fSEmmanuel Vadot			#address-cells = <1>;
815c66ec88fSEmmanuel Vadot			#size-cells = <0>;
816c66ec88fSEmmanuel Vadot			reg = <0 0x11018000 0 0x1000>;
817c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_LOW>;
818c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
819c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
820c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI4>;
821c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
822c66ec88fSEmmanuel Vadot			status = "disabled";
823c66ec88fSEmmanuel Vadot		};
824c66ec88fSEmmanuel Vadot
825c66ec88fSEmmanuel Vadot		spi5: spi@11019000 {
826c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
827c66ec88fSEmmanuel Vadot			#address-cells = <1>;
828c66ec88fSEmmanuel Vadot			#size-cells = <0>;
829c66ec88fSEmmanuel Vadot			reg = <0 0x11019000 0 0x1000>;
830c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_LOW>;
831c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
832c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
833c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI5>;
834c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
835c66ec88fSEmmanuel Vadot			status = "disabled";
836c66ec88fSEmmanuel Vadot		};
837c66ec88fSEmmanuel Vadot
838c66ec88fSEmmanuel Vadot		i2c7: i2c@1101a000 {
839c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
840c66ec88fSEmmanuel Vadot			reg = <0 0x1101a000 0 0x1000>,
841c66ec88fSEmmanuel Vadot			      <0 0x11000680 0 0x80>;
842c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_LOW>;
843c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C7>,
844c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
845c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
846c66ec88fSEmmanuel Vadot			clock-div = <1>;
847c66ec88fSEmmanuel Vadot			#address-cells = <1>;
848c66ec88fSEmmanuel Vadot			#size-cells = <0>;
849c66ec88fSEmmanuel Vadot			status = "disabled";
850c66ec88fSEmmanuel Vadot		};
851c66ec88fSEmmanuel Vadot
852c66ec88fSEmmanuel Vadot		i2c8: i2c@1101b000 {
853c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
854c66ec88fSEmmanuel Vadot			reg = <0 0x1101b000 0 0x1000>,
855c66ec88fSEmmanuel Vadot			      <0 0x11000700 0 0x80>;
856c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_LOW>;
857c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C8>,
858c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
859c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
860c66ec88fSEmmanuel Vadot			clock-div = <1>;
861c66ec88fSEmmanuel Vadot			#address-cells = <1>;
862c66ec88fSEmmanuel Vadot			#size-cells = <0>;
863c66ec88fSEmmanuel Vadot			status = "disabled";
864c66ec88fSEmmanuel Vadot		};
865c66ec88fSEmmanuel Vadot
866c66ec88fSEmmanuel Vadot		ssusb: usb@11201000 {
867c66ec88fSEmmanuel Vadot			compatible ="mediatek,mt8183-mtu3", "mediatek,mtu3";
868c66ec88fSEmmanuel Vadot			reg = <0 0x11201000 0 0x2e00>,
869c66ec88fSEmmanuel Vadot			      <0 0x11203e00 0 0x0100>;
870c66ec88fSEmmanuel Vadot			reg-names = "mac", "ippc";
871c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_LOW>;
872c66ec88fSEmmanuel Vadot			phys = <&u2port0 PHY_TYPE_USB2>,
873c66ec88fSEmmanuel Vadot			       <&u3port0 PHY_TYPE_USB3>;
874c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>,
875c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_USB>;
876c66ec88fSEmmanuel Vadot			clock-names = "sys_ck", "ref_ck";
877c66ec88fSEmmanuel Vadot			mediatek,syscon-wakeup = <&pericfg 0x400 0>;
878c66ec88fSEmmanuel Vadot			#address-cells = <2>;
879c66ec88fSEmmanuel Vadot			#size-cells = <2>;
880c66ec88fSEmmanuel Vadot			ranges;
881c66ec88fSEmmanuel Vadot			status = "disabled";
882c66ec88fSEmmanuel Vadot
883c66ec88fSEmmanuel Vadot			usb_host: xhci@11200000 {
884c66ec88fSEmmanuel Vadot				compatible = "mediatek,mt8183-xhci",
885c66ec88fSEmmanuel Vadot					     "mediatek,mtk-xhci";
886c66ec88fSEmmanuel Vadot				reg = <0 0x11200000 0 0x1000>;
887c66ec88fSEmmanuel Vadot				reg-names = "mac";
888c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_LOW>;
889c66ec88fSEmmanuel Vadot				clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>,
890c66ec88fSEmmanuel Vadot					 <&infracfg CLK_INFRA_USB>;
891c66ec88fSEmmanuel Vadot				clock-names = "sys_ck", "ref_ck";
892c66ec88fSEmmanuel Vadot				status = "disabled";
893c66ec88fSEmmanuel Vadot			};
894c66ec88fSEmmanuel Vadot		};
895c66ec88fSEmmanuel Vadot
896c66ec88fSEmmanuel Vadot		audiosys: syscon@11220000 {
897c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-audiosys", "syscon";
898c66ec88fSEmmanuel Vadot			reg = <0 0x11220000 0 0x1000>;
899c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
900c66ec88fSEmmanuel Vadot		};
901c66ec88fSEmmanuel Vadot
902c66ec88fSEmmanuel Vadot		mmc0: mmc@11230000 {
903c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mmc";
904c66ec88fSEmmanuel Vadot			reg = <0 0x11230000 0 0x1000>,
905c66ec88fSEmmanuel Vadot			      <0 0x11f50000 0 0x1000>;
906c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_LOW>;
907c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_MSDC50_0>,
908c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC0>,
909c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC0_SCK>;
910c66ec88fSEmmanuel Vadot			clock-names = "source", "hclk", "source_cg";
911c66ec88fSEmmanuel Vadot			status = "disabled";
912c66ec88fSEmmanuel Vadot		};
913c66ec88fSEmmanuel Vadot
914c66ec88fSEmmanuel Vadot		mmc1: mmc@11240000 {
915c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mmc";
916c66ec88fSEmmanuel Vadot			reg = <0 0x11240000 0 0x1000>,
917c66ec88fSEmmanuel Vadot			      <0 0x11e10000 0 0x1000>;
918c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_LOW>;
919c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_MSDC30_1>,
920c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC1>,
921c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC1_SCK>;
922c66ec88fSEmmanuel Vadot			clock-names = "source", "hclk", "source_cg";
923c66ec88fSEmmanuel Vadot			status = "disabled";
924c66ec88fSEmmanuel Vadot		};
925c66ec88fSEmmanuel Vadot
926*5def4c47SEmmanuel Vadot		mipi_tx0: mipi-dphy@11e50000 {
927*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-mipi-tx";
928*5def4c47SEmmanuel Vadot			reg = <0 0x11e50000 0 0x1000>;
929*5def4c47SEmmanuel Vadot			clocks = <&apmixedsys CLK_APMIXED_MIPID0_26M>;
930*5def4c47SEmmanuel Vadot			clock-names = "ref_clk";
931*5def4c47SEmmanuel Vadot			#clock-cells = <0>;
932*5def4c47SEmmanuel Vadot			#phy-cells = <0>;
933*5def4c47SEmmanuel Vadot			clock-output-names = "mipi_tx0_pll";
934*5def4c47SEmmanuel Vadot			nvmem-cells = <&mipi_tx_calibration>;
935*5def4c47SEmmanuel Vadot			nvmem-cell-names = "calibration-data";
936*5def4c47SEmmanuel Vadot		};
937*5def4c47SEmmanuel Vadot
938c66ec88fSEmmanuel Vadot		efuse: efuse@11f10000 {
939c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-efuse",
940c66ec88fSEmmanuel Vadot				     "mediatek,efuse";
941c66ec88fSEmmanuel Vadot			reg = <0 0x11f10000 0 0x1000>;
942*5def4c47SEmmanuel Vadot			#address-cells = <1>;
943*5def4c47SEmmanuel Vadot			#size-cells = <1>;
944*5def4c47SEmmanuel Vadot			mipi_tx_calibration: calib@190 {
945*5def4c47SEmmanuel Vadot				reg = <0x190 0xc>;
946*5def4c47SEmmanuel Vadot			};
947c66ec88fSEmmanuel Vadot		};
948c66ec88fSEmmanuel Vadot
949c66ec88fSEmmanuel Vadot		u3phy: usb-phy@11f40000 {
950c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-tphy",
951c66ec88fSEmmanuel Vadot				     "mediatek,generic-tphy-v2";
952c66ec88fSEmmanuel Vadot			#address-cells = <1>;
953c66ec88fSEmmanuel Vadot			#phy-cells = <1>;
954c66ec88fSEmmanuel Vadot			#size-cells = <1>;
955c66ec88fSEmmanuel Vadot			ranges = <0 0 0x11f40000 0x1000>;
956c66ec88fSEmmanuel Vadot			status = "okay";
957c66ec88fSEmmanuel Vadot
958c66ec88fSEmmanuel Vadot			u2port0: usb-phy@0 {
959c66ec88fSEmmanuel Vadot				reg = <0x0 0x700>;
960c66ec88fSEmmanuel Vadot				clocks = <&clk26m>;
961c66ec88fSEmmanuel Vadot				clock-names = "ref";
962c66ec88fSEmmanuel Vadot				#phy-cells = <1>;
963c66ec88fSEmmanuel Vadot				mediatek,discth = <15>;
964c66ec88fSEmmanuel Vadot				status = "okay";
965c66ec88fSEmmanuel Vadot			};
966c66ec88fSEmmanuel Vadot
967c66ec88fSEmmanuel Vadot			u3port0: usb-phy@0700 {
968c66ec88fSEmmanuel Vadot				reg = <0x0700 0x900>;
969c66ec88fSEmmanuel Vadot				clocks = <&clk26m>;
970c66ec88fSEmmanuel Vadot				clock-names = "ref";
971c66ec88fSEmmanuel Vadot				#phy-cells = <1>;
972c66ec88fSEmmanuel Vadot				status = "okay";
973c66ec88fSEmmanuel Vadot			};
974c66ec88fSEmmanuel Vadot		};
975c66ec88fSEmmanuel Vadot
976c66ec88fSEmmanuel Vadot		mfgcfg: syscon@13000000 {
977c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mfgcfg", "syscon";
978c66ec88fSEmmanuel Vadot			reg = <0 0x13000000 0 0x1000>;
979c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
980c66ec88fSEmmanuel Vadot		};
981c66ec88fSEmmanuel Vadot
982c66ec88fSEmmanuel Vadot		mmsys: syscon@14000000 {
983c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mmsys", "syscon";
984c66ec88fSEmmanuel Vadot			reg = <0 0x14000000 0 0x1000>;
985c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
986c66ec88fSEmmanuel Vadot		};
987c66ec88fSEmmanuel Vadot
988*5def4c47SEmmanuel Vadot		ovl0: ovl@14008000 {
989*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ovl";
990*5def4c47SEmmanuel Vadot			reg = <0 0x14008000 0 0x1000>;
991*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_LOW>;
992*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
993*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_OVL0>;
994*5def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_OVL0>;
995*5def4c47SEmmanuel Vadot			mediatek,larb = <&larb0>;
996*5def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x8000 0x1000>;
997*5def4c47SEmmanuel Vadot		};
998*5def4c47SEmmanuel Vadot
999*5def4c47SEmmanuel Vadot		ovl_2l0: ovl@14009000 {
1000*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ovl-2l";
1001*5def4c47SEmmanuel Vadot			reg = <0 0x14009000 0 0x1000>;
1002*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_LOW>;
1003*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1004*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_OVL0_2L>;
1005*5def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_2L_OVL0_LARB0>;
1006*5def4c47SEmmanuel Vadot			mediatek,larb = <&larb0>;
1007*5def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x9000 0x1000>;
1008*5def4c47SEmmanuel Vadot		};
1009*5def4c47SEmmanuel Vadot
1010*5def4c47SEmmanuel Vadot		ovl_2l1: ovl@1400a000 {
1011*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ovl-2l";
1012*5def4c47SEmmanuel Vadot			reg = <0 0x1400a000 0 0x1000>;
1013*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_LOW>;
1014*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1015*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_OVL1_2L>;
1016*5def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_2L_OVL1_LARB0>;
1017*5def4c47SEmmanuel Vadot			mediatek,larb = <&larb0>;
1018*5def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xa000 0x1000>;
1019*5def4c47SEmmanuel Vadot		};
1020*5def4c47SEmmanuel Vadot
1021*5def4c47SEmmanuel Vadot		rdma0: rdma@1400b000 {
1022*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-rdma";
1023*5def4c47SEmmanuel Vadot			reg = <0 0x1400b000 0 0x1000>;
1024*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_LOW>;
1025*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1026*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_RDMA0>;
1027*5def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_RDMA0>;
1028*5def4c47SEmmanuel Vadot			mediatek,larb = <&larb0>;
1029*5def4c47SEmmanuel Vadot			mediatek,rdma-fifo-size = <5120>;
1030*5def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xb000 0x1000>;
1031*5def4c47SEmmanuel Vadot		};
1032*5def4c47SEmmanuel Vadot
1033*5def4c47SEmmanuel Vadot		rdma1: rdma@1400c000 {
1034*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-rdma";
1035*5def4c47SEmmanuel Vadot			reg = <0 0x1400c000 0 0x1000>;
1036*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_LOW>;
1037*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1038*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_RDMA1>;
1039*5def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_RDMA1>;
1040*5def4c47SEmmanuel Vadot			mediatek,larb = <&larb0>;
1041*5def4c47SEmmanuel Vadot			mediatek,rdma-fifo-size = <2048>;
1042*5def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xc000 0x1000>;
1043*5def4c47SEmmanuel Vadot		};
1044*5def4c47SEmmanuel Vadot
1045*5def4c47SEmmanuel Vadot		color0: color@1400e000 {
1046*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-color",
1047*5def4c47SEmmanuel Vadot				     "mediatek,mt8173-disp-color";
1048*5def4c47SEmmanuel Vadot			reg = <0 0x1400e000 0 0x1000>;
1049*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 231 IRQ_TYPE_LEVEL_LOW>;
1050*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1051*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_COLOR0>;
1052*5def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xe000 0x1000>;
1053*5def4c47SEmmanuel Vadot		};
1054*5def4c47SEmmanuel Vadot
1055*5def4c47SEmmanuel Vadot		ccorr0: ccorr@1400f000 {
1056*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ccorr";
1057*5def4c47SEmmanuel Vadot			reg = <0 0x1400f000 0 0x1000>;
1058*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_LOW>;
1059*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1060*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_CCORR0>;
1061*5def4c47SEmmanuel Vadot		};
1062*5def4c47SEmmanuel Vadot
1063*5def4c47SEmmanuel Vadot		aal0: aal@14010000 {
1064*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-aal",
1065*5def4c47SEmmanuel Vadot				     "mediatek,mt8173-disp-aal";
1066*5def4c47SEmmanuel Vadot			reg = <0 0x14010000 0 0x1000>;
1067*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_LOW>;
1068*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1069*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_AAL0>;
1070*5def4c47SEmmanuel Vadot		};
1071*5def4c47SEmmanuel Vadot
1072*5def4c47SEmmanuel Vadot		gamma0: gamma@14011000 {
1073*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-gamma";
1074*5def4c47SEmmanuel Vadot			reg = <0 0x14011000 0 0x1000>;
1075*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_LOW>;
1076*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1077*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_GAMMA0>;
1078*5def4c47SEmmanuel Vadot		};
1079*5def4c47SEmmanuel Vadot
1080*5def4c47SEmmanuel Vadot		dither0: dither@14012000 {
1081*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-dither";
1082*5def4c47SEmmanuel Vadot			reg = <0 0x14012000 0 0x1000>;
1083*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 235 IRQ_TYPE_LEVEL_LOW>;
1084*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1085*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_DITHER0>;
1086*5def4c47SEmmanuel Vadot		};
1087*5def4c47SEmmanuel Vadot
1088*5def4c47SEmmanuel Vadot		dsi0: dsi@14014000 {
1089*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-dsi";
1090*5def4c47SEmmanuel Vadot			reg = <0 0x14014000 0 0x1000>;
1091*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_LOW>;
1092*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1093*5def4c47SEmmanuel Vadot			mediatek,syscon-dsi = <&mmsys 0x140>;
1094*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DSI0_MM>,
1095*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_DSI0_IF>,
1096*5def4c47SEmmanuel Vadot				 <&mipi_tx0>;
1097*5def4c47SEmmanuel Vadot			clock-names = "engine", "digital", "hs";
1098*5def4c47SEmmanuel Vadot			phys = <&mipi_tx0>;
1099*5def4c47SEmmanuel Vadot			phy-names = "dphy";
1100*5def4c47SEmmanuel Vadot		};
1101*5def4c47SEmmanuel Vadot
1102*5def4c47SEmmanuel Vadot		mutex: mutex@14016000 {
1103*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-mutex";
1104*5def4c47SEmmanuel Vadot			reg = <0 0x14016000 0 0x1000>;
1105*5def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_LOW>;
1106*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1107*5def4c47SEmmanuel Vadot		};
1108*5def4c47SEmmanuel Vadot
1109*5def4c47SEmmanuel Vadot		larb0: larb@14017000 {
1110*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1111*5def4c47SEmmanuel Vadot			reg = <0 0x14017000 0 0x1000>;
1112*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1113*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_SMI_LARB0>,
1114*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_SMI_LARB0>;
1115*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1116*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi";
1117*5def4c47SEmmanuel Vadot		};
1118*5def4c47SEmmanuel Vadot
1119*5def4c47SEmmanuel Vadot		smi_common: smi@14019000 {
1120*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-common", "syscon";
1121*5def4c47SEmmanuel Vadot			reg = <0 0x14019000 0 0x1000>;
1122*5def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_SMI_COMMON>,
1123*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_SMI_COMMON>,
1124*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_COMM0>,
1125*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_COMM1>;
1126*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals0", "gals1";
1127*5def4c47SEmmanuel Vadot		};
1128*5def4c47SEmmanuel Vadot
1129c66ec88fSEmmanuel Vadot		imgsys: syscon@15020000 {
1130c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-imgsys", "syscon";
1131c66ec88fSEmmanuel Vadot			reg = <0 0x15020000 0 0x1000>;
1132c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1133c66ec88fSEmmanuel Vadot		};
1134c66ec88fSEmmanuel Vadot
1135*5def4c47SEmmanuel Vadot		larb5: larb@15021000 {
1136*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1137*5def4c47SEmmanuel Vadot			reg = <0 0x15021000 0 0x1000>;
1138*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1139*5def4c47SEmmanuel Vadot			clocks = <&imgsys CLK_IMG_LARB5>, <&imgsys CLK_IMG_LARB5>,
1140*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_IMG2MM>;
1141*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
1142*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_ISP>;
1143*5def4c47SEmmanuel Vadot		};
1144*5def4c47SEmmanuel Vadot
1145*5def4c47SEmmanuel Vadot		larb2: larb@1502f000 {
1146*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1147*5def4c47SEmmanuel Vadot			reg = <0 0x1502f000 0 0x1000>;
1148*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1149*5def4c47SEmmanuel Vadot			clocks = <&imgsys CLK_IMG_LARB2>, <&imgsys CLK_IMG_LARB2>,
1150*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_IPU2MM>;
1151*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
1152*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_ISP>;
1153*5def4c47SEmmanuel Vadot		};
1154*5def4c47SEmmanuel Vadot
1155c66ec88fSEmmanuel Vadot		vdecsys: syscon@16000000 {
1156c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-vdecsys", "syscon";
1157c66ec88fSEmmanuel Vadot			reg = <0 0x16000000 0 0x1000>;
1158c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1159c66ec88fSEmmanuel Vadot		};
1160c66ec88fSEmmanuel Vadot
1161*5def4c47SEmmanuel Vadot		larb1: larb@16010000 {
1162*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1163*5def4c47SEmmanuel Vadot			reg = <0 0x16010000 0 0x1000>;
1164*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1165*5def4c47SEmmanuel Vadot			clocks = <&vdecsys CLK_VDEC_VDEC>, <&vdecsys CLK_VDEC_LARB1>;
1166*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi";
1167*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_VDEC>;
1168*5def4c47SEmmanuel Vadot		};
1169*5def4c47SEmmanuel Vadot
1170c66ec88fSEmmanuel Vadot		vencsys: syscon@17000000 {
1171c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-vencsys", "syscon";
1172c66ec88fSEmmanuel Vadot			reg = <0 0x17000000 0 0x1000>;
1173c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1174c66ec88fSEmmanuel Vadot		};
1175c66ec88fSEmmanuel Vadot
1176*5def4c47SEmmanuel Vadot		larb4: larb@17010000 {
1177*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1178*5def4c47SEmmanuel Vadot			reg = <0 0x17010000 0 0x1000>;
1179*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1180*5def4c47SEmmanuel Vadot			clocks = <&vencsys CLK_VENC_LARB>,
1181*5def4c47SEmmanuel Vadot				 <&vencsys CLK_VENC_LARB>;
1182*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi";
1183*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_VENC>;
1184*5def4c47SEmmanuel Vadot		};
1185*5def4c47SEmmanuel Vadot
1186c66ec88fSEmmanuel Vadot		ipu_conn: syscon@19000000 {
1187c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_conn", "syscon";
1188c66ec88fSEmmanuel Vadot			reg = <0 0x19000000 0 0x1000>;
1189c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1190c66ec88fSEmmanuel Vadot		};
1191c66ec88fSEmmanuel Vadot
1192c66ec88fSEmmanuel Vadot		ipu_adl: syscon@19010000 {
1193c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_adl", "syscon";
1194c66ec88fSEmmanuel Vadot			reg = <0 0x19010000 0 0x1000>;
1195c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1196c66ec88fSEmmanuel Vadot		};
1197c66ec88fSEmmanuel Vadot
1198c66ec88fSEmmanuel Vadot		ipu_core0: syscon@19180000 {
1199c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_core0", "syscon";
1200c66ec88fSEmmanuel Vadot			reg = <0 0x19180000 0 0x1000>;
1201c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1202c66ec88fSEmmanuel Vadot		};
1203c66ec88fSEmmanuel Vadot
1204c66ec88fSEmmanuel Vadot		ipu_core1: syscon@19280000 {
1205c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_core1", "syscon";
1206c66ec88fSEmmanuel Vadot			reg = <0 0x19280000 0 0x1000>;
1207c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1208c66ec88fSEmmanuel Vadot		};
1209c66ec88fSEmmanuel Vadot
1210c66ec88fSEmmanuel Vadot		camsys: syscon@1a000000 {
1211c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-camsys", "syscon";
1212c66ec88fSEmmanuel Vadot			reg = <0 0x1a000000 0 0x1000>;
1213c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1214c66ec88fSEmmanuel Vadot		};
1215*5def4c47SEmmanuel Vadot
1216*5def4c47SEmmanuel Vadot		larb6: larb@1a001000 {
1217*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1218*5def4c47SEmmanuel Vadot			reg = <0 0x1a001000 0 0x1000>;
1219*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1220*5def4c47SEmmanuel Vadot			clocks = <&camsys CLK_CAM_LARB6>, <&camsys CLK_CAM_LARB6>,
1221*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_CAM2MM>;
1222*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
1223*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_CAM>;
1224*5def4c47SEmmanuel Vadot		};
1225*5def4c47SEmmanuel Vadot
1226*5def4c47SEmmanuel Vadot		larb3: larb@1a002000 {
1227*5def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
1228*5def4c47SEmmanuel Vadot			reg = <0 0x1a002000 0 0x1000>;
1229*5def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
1230*5def4c47SEmmanuel Vadot			clocks = <&camsys CLK_CAM_LARB3>, <&camsys CLK_CAM_LARB3>,
1231*5def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_IPU12MM>;
1232*5def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
1233*5def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_CAM>;
1234*5def4c47SEmmanuel Vadot		};
1235c66ec88fSEmmanuel Vadot	};
1236c66ec88fSEmmanuel Vadot};
1237