xref: /freebsd/sys/contrib/device-tree/src/arm64/mediatek/mt8183.dtsi (revision 7ef62cebc2f965b0f640263e179276928885e33d)
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>
95def4c47SEmmanuel 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>
125def4c47SEmmanuel Vadot#include <dt-bindings/memory/mt8183-larb-port.h>
135def4c47SEmmanuel Vadot#include <dt-bindings/power/mt8183-power.h>
148cc087a1SEmmanuel Vadot#include <dt-bindings/reset/mt8183-resets.h>
15c66ec88fSEmmanuel Vadot#include <dt-bindings/phy/phy.h>
162eb4d8dcSEmmanuel Vadot#include <dt-bindings/thermal/thermal.h>
17354d7675SEmmanuel Vadot#include <dt-bindings/pinctrl/mt8183-pinfunc.h>
18c66ec88fSEmmanuel Vadot
19c66ec88fSEmmanuel Vadot/ {
20c66ec88fSEmmanuel Vadot	compatible = "mediatek,mt8183";
21c66ec88fSEmmanuel Vadot	interrupt-parent = <&sysirq>;
22c66ec88fSEmmanuel Vadot	#address-cells = <2>;
23c66ec88fSEmmanuel Vadot	#size-cells = <2>;
24c66ec88fSEmmanuel Vadot
25c66ec88fSEmmanuel Vadot	aliases {
26c66ec88fSEmmanuel Vadot		i2c0 = &i2c0;
27c66ec88fSEmmanuel Vadot		i2c1 = &i2c1;
28c66ec88fSEmmanuel Vadot		i2c2 = &i2c2;
29c66ec88fSEmmanuel Vadot		i2c3 = &i2c3;
30c66ec88fSEmmanuel Vadot		i2c4 = &i2c4;
31c66ec88fSEmmanuel Vadot		i2c5 = &i2c5;
32c66ec88fSEmmanuel Vadot		i2c6 = &i2c6;
33c66ec88fSEmmanuel Vadot		i2c7 = &i2c7;
34c66ec88fSEmmanuel Vadot		i2c8 = &i2c8;
35c66ec88fSEmmanuel Vadot		i2c9 = &i2c9;
36c66ec88fSEmmanuel Vadot		i2c10 = &i2c10;
37c66ec88fSEmmanuel Vadot		i2c11 = &i2c11;
385def4c47SEmmanuel Vadot		ovl0 = &ovl0;
395def4c47SEmmanuel Vadot		ovl-2l0 = &ovl_2l0;
405def4c47SEmmanuel Vadot		ovl-2l1 = &ovl_2l1;
415def4c47SEmmanuel Vadot		rdma0 = &rdma0;
425def4c47SEmmanuel Vadot		rdma1 = &rdma1;
43c66ec88fSEmmanuel Vadot	};
44c66ec88fSEmmanuel Vadot
45b97ee269SEmmanuel Vadot	cluster0_opp: opp-table-cluster0 {
46b97ee269SEmmanuel Vadot		compatible = "operating-points-v2";
47b97ee269SEmmanuel Vadot		opp-shared;
48b97ee269SEmmanuel Vadot		opp0-793000000 {
49b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <793000000>;
50b97ee269SEmmanuel Vadot			opp-microvolt = <650000>;
51b97ee269SEmmanuel Vadot			required-opps = <&opp2_00>;
52b97ee269SEmmanuel Vadot		};
53b97ee269SEmmanuel Vadot		opp0-910000000 {
54b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <910000000>;
55b97ee269SEmmanuel Vadot			opp-microvolt = <687500>;
56b97ee269SEmmanuel Vadot			required-opps = <&opp2_01>;
57b97ee269SEmmanuel Vadot		};
58b97ee269SEmmanuel Vadot		opp0-1014000000 {
59b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1014000000>;
60b97ee269SEmmanuel Vadot			opp-microvolt = <718750>;
61b97ee269SEmmanuel Vadot			required-opps = <&opp2_02>;
62b97ee269SEmmanuel Vadot		};
63b97ee269SEmmanuel Vadot		opp0-1131000000 {
64b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1131000000>;
65b97ee269SEmmanuel Vadot			opp-microvolt = <756250>;
66b97ee269SEmmanuel Vadot			required-opps = <&opp2_03>;
67b97ee269SEmmanuel Vadot		};
68b97ee269SEmmanuel Vadot		opp0-1248000000 {
69b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1248000000>;
70b97ee269SEmmanuel Vadot			opp-microvolt = <800000>;
71b97ee269SEmmanuel Vadot			required-opps = <&opp2_04>;
72b97ee269SEmmanuel Vadot		};
73b97ee269SEmmanuel Vadot		opp0-1326000000 {
74b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1326000000>;
75b97ee269SEmmanuel Vadot			opp-microvolt = <818750>;
76b97ee269SEmmanuel Vadot			required-opps = <&opp2_05>;
77b97ee269SEmmanuel Vadot		};
78b97ee269SEmmanuel Vadot		opp0-1417000000 {
79b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1417000000>;
80b97ee269SEmmanuel Vadot			opp-microvolt = <850000>;
81b97ee269SEmmanuel Vadot			required-opps = <&opp2_06>;
82b97ee269SEmmanuel Vadot		};
83b97ee269SEmmanuel Vadot		opp0-1508000000 {
84b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1508000000>;
85b97ee269SEmmanuel Vadot			opp-microvolt = <868750>;
86b97ee269SEmmanuel Vadot			required-opps = <&opp2_07>;
87b97ee269SEmmanuel Vadot		};
88b97ee269SEmmanuel Vadot		opp0-1586000000 {
89b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1586000000>;
90b97ee269SEmmanuel Vadot			opp-microvolt = <893750>;
91b97ee269SEmmanuel Vadot			required-opps = <&opp2_08>;
92b97ee269SEmmanuel Vadot		};
93b97ee269SEmmanuel Vadot		opp0-1625000000 {
94b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1625000000>;
95b97ee269SEmmanuel Vadot			opp-microvolt = <906250>;
96b97ee269SEmmanuel Vadot			required-opps = <&opp2_09>;
97b97ee269SEmmanuel Vadot		};
98b97ee269SEmmanuel Vadot		opp0-1677000000 {
99b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1677000000>;
100b97ee269SEmmanuel Vadot			opp-microvolt = <931250>;
101b97ee269SEmmanuel Vadot			required-opps = <&opp2_10>;
102b97ee269SEmmanuel Vadot		};
103b97ee269SEmmanuel Vadot		opp0-1716000000 {
104b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1716000000>;
105b97ee269SEmmanuel Vadot			opp-microvolt = <943750>;
106b97ee269SEmmanuel Vadot			required-opps = <&opp2_11>;
107b97ee269SEmmanuel Vadot		};
108b97ee269SEmmanuel Vadot		opp0-1781000000 {
109b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1781000000>;
110b97ee269SEmmanuel Vadot			opp-microvolt = <975000>;
111b97ee269SEmmanuel Vadot			required-opps = <&opp2_12>;
112b97ee269SEmmanuel Vadot		};
113b97ee269SEmmanuel Vadot		opp0-1846000000 {
114b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1846000000>;
115b97ee269SEmmanuel Vadot			opp-microvolt = <1000000>;
116b97ee269SEmmanuel Vadot			required-opps = <&opp2_13>;
117b97ee269SEmmanuel Vadot		};
118b97ee269SEmmanuel Vadot		opp0-1924000000 {
119b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1924000000>;
120b97ee269SEmmanuel Vadot			opp-microvolt = <1025000>;
121b97ee269SEmmanuel Vadot			required-opps = <&opp2_14>;
122b97ee269SEmmanuel Vadot		};
123b97ee269SEmmanuel Vadot		opp0-1989000000 {
124b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1989000000>;
125b97ee269SEmmanuel Vadot			opp-microvolt = <1050000>;
126b97ee269SEmmanuel Vadot			required-opps = <&opp2_15>;
127b97ee269SEmmanuel Vadot		};	};
128b97ee269SEmmanuel Vadot
129b97ee269SEmmanuel Vadot	cluster1_opp: opp-table-cluster1 {
130b97ee269SEmmanuel Vadot		compatible = "operating-points-v2";
131b97ee269SEmmanuel Vadot		opp-shared;
132b97ee269SEmmanuel Vadot		opp1-793000000 {
133b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <793000000>;
134b97ee269SEmmanuel Vadot			opp-microvolt = <700000>;
135b97ee269SEmmanuel Vadot			required-opps = <&opp2_00>;
136b97ee269SEmmanuel Vadot		};
137b97ee269SEmmanuel Vadot		opp1-910000000 {
138b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <910000000>;
139b97ee269SEmmanuel Vadot			opp-microvolt = <725000>;
140b97ee269SEmmanuel Vadot			required-opps = <&opp2_01>;
141b97ee269SEmmanuel Vadot		};
142b97ee269SEmmanuel Vadot		opp1-1014000000 {
143b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1014000000>;
144b97ee269SEmmanuel Vadot			opp-microvolt = <750000>;
145b97ee269SEmmanuel Vadot			required-opps = <&opp2_02>;
146b97ee269SEmmanuel Vadot		};
147b97ee269SEmmanuel Vadot		opp1-1131000000 {
148b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1131000000>;
149b97ee269SEmmanuel Vadot			opp-microvolt = <775000>;
150b97ee269SEmmanuel Vadot			required-opps = <&opp2_03>;
151b97ee269SEmmanuel Vadot		};
152b97ee269SEmmanuel Vadot		opp1-1248000000 {
153b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1248000000>;
154b97ee269SEmmanuel Vadot			opp-microvolt = <800000>;
155b97ee269SEmmanuel Vadot			required-opps = <&opp2_04>;
156b97ee269SEmmanuel Vadot		};
157b97ee269SEmmanuel Vadot		opp1-1326000000 {
158b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1326000000>;
159b97ee269SEmmanuel Vadot			opp-microvolt = <825000>;
160b97ee269SEmmanuel Vadot			required-opps = <&opp2_05>;
161b97ee269SEmmanuel Vadot		};
162b97ee269SEmmanuel Vadot		opp1-1417000000 {
163b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1417000000>;
164b97ee269SEmmanuel Vadot			opp-microvolt = <850000>;
165b97ee269SEmmanuel Vadot			required-opps = <&opp2_06>;
166b97ee269SEmmanuel Vadot		};
167b97ee269SEmmanuel Vadot		opp1-1508000000 {
168b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1508000000>;
169b97ee269SEmmanuel Vadot			opp-microvolt = <875000>;
170b97ee269SEmmanuel Vadot			required-opps = <&opp2_07>;
171b97ee269SEmmanuel Vadot		};
172b97ee269SEmmanuel Vadot		opp1-1586000000 {
173b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1586000000>;
174b97ee269SEmmanuel Vadot			opp-microvolt = <900000>;
175b97ee269SEmmanuel Vadot			required-opps = <&opp2_08>;
176b97ee269SEmmanuel Vadot		};
177b97ee269SEmmanuel Vadot		opp1-1625000000 {
178b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1625000000>;
179b97ee269SEmmanuel Vadot			opp-microvolt = <912500>;
180b97ee269SEmmanuel Vadot			required-opps = <&opp2_09>;
181b97ee269SEmmanuel Vadot		};
182b97ee269SEmmanuel Vadot		opp1-1677000000 {
183b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1677000000>;
184b97ee269SEmmanuel Vadot			opp-microvolt = <931250>;
185b97ee269SEmmanuel Vadot			required-opps = <&opp2_10>;
186b97ee269SEmmanuel Vadot		};
187b97ee269SEmmanuel Vadot		opp1-1716000000 {
188b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1716000000>;
189b97ee269SEmmanuel Vadot			opp-microvolt = <950000>;
190b97ee269SEmmanuel Vadot			required-opps = <&opp2_11>;
191b97ee269SEmmanuel Vadot		};
192b97ee269SEmmanuel Vadot		opp1-1781000000 {
193b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1781000000>;
194b97ee269SEmmanuel Vadot			opp-microvolt = <975000>;
195b97ee269SEmmanuel Vadot			required-opps = <&opp2_12>;
196b97ee269SEmmanuel Vadot		};
197b97ee269SEmmanuel Vadot		opp1-1846000000 {
198b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1846000000>;
199b97ee269SEmmanuel Vadot			opp-microvolt = <1000000>;
200b97ee269SEmmanuel Vadot			required-opps = <&opp2_13>;
201b97ee269SEmmanuel Vadot		};
202b97ee269SEmmanuel Vadot		opp1-1924000000 {
203b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1924000000>;
204b97ee269SEmmanuel Vadot			opp-microvolt = <1025000>;
205b97ee269SEmmanuel Vadot			required-opps = <&opp2_14>;
206b97ee269SEmmanuel Vadot		};
207b97ee269SEmmanuel Vadot		opp1-1989000000 {
208b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1989000000>;
209b97ee269SEmmanuel Vadot			opp-microvolt = <1050000>;
210b97ee269SEmmanuel Vadot			required-opps = <&opp2_15>;
211b97ee269SEmmanuel Vadot		};
212b97ee269SEmmanuel Vadot	};
213b97ee269SEmmanuel Vadot
214b97ee269SEmmanuel Vadot	cci_opp: opp-table-cci {
215b97ee269SEmmanuel Vadot		compatible = "operating-points-v2";
216b97ee269SEmmanuel Vadot		opp-shared;
217b97ee269SEmmanuel Vadot		opp2_00: opp-273000000 {
218b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <273000000>;
219b97ee269SEmmanuel Vadot			opp-microvolt = <650000>;
220b97ee269SEmmanuel Vadot		};
221b97ee269SEmmanuel Vadot		opp2_01: opp-338000000 {
222b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <338000000>;
223b97ee269SEmmanuel Vadot			opp-microvolt = <687500>;
224b97ee269SEmmanuel Vadot		};
225b97ee269SEmmanuel Vadot		opp2_02: opp-403000000 {
226b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <403000000>;
227b97ee269SEmmanuel Vadot			opp-microvolt = <718750>;
228b97ee269SEmmanuel Vadot		};
229b97ee269SEmmanuel Vadot		opp2_03: opp-463000000 {
230b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <463000000>;
231b97ee269SEmmanuel Vadot			opp-microvolt = <756250>;
232b97ee269SEmmanuel Vadot		};
233b97ee269SEmmanuel Vadot		opp2_04: opp-546000000 {
234b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <546000000>;
235b97ee269SEmmanuel Vadot			opp-microvolt = <800000>;
236b97ee269SEmmanuel Vadot		};
237b97ee269SEmmanuel Vadot		opp2_05: opp-624000000 {
238b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <624000000>;
239b97ee269SEmmanuel Vadot			opp-microvolt = <818750>;
240b97ee269SEmmanuel Vadot		};
241b97ee269SEmmanuel Vadot		opp2_06: opp-689000000 {
242b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <689000000>;
243b97ee269SEmmanuel Vadot			opp-microvolt = <850000>;
244b97ee269SEmmanuel Vadot		};
245b97ee269SEmmanuel Vadot		opp2_07: opp-767000000 {
246b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <767000000>;
247b97ee269SEmmanuel Vadot			opp-microvolt = <868750>;
248b97ee269SEmmanuel Vadot		};
249b97ee269SEmmanuel Vadot		opp2_08: opp-845000000 {
250b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <845000000>;
251b97ee269SEmmanuel Vadot			opp-microvolt = <893750>;
252b97ee269SEmmanuel Vadot		};
253b97ee269SEmmanuel Vadot		opp2_09: opp-871000000 {
254b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <871000000>;
255b97ee269SEmmanuel Vadot			opp-microvolt = <906250>;
256b97ee269SEmmanuel Vadot		};
257b97ee269SEmmanuel Vadot		opp2_10: opp-923000000 {
258b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <923000000>;
259b97ee269SEmmanuel Vadot			opp-microvolt = <931250>;
260b97ee269SEmmanuel Vadot		};
261b97ee269SEmmanuel Vadot		opp2_11: opp-962000000 {
262b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <962000000>;
263b97ee269SEmmanuel Vadot			opp-microvolt = <943750>;
264b97ee269SEmmanuel Vadot		};
265b97ee269SEmmanuel Vadot		opp2_12: opp-1027000000 {
266b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1027000000>;
267b97ee269SEmmanuel Vadot			opp-microvolt = <975000>;
268b97ee269SEmmanuel Vadot		};
269b97ee269SEmmanuel Vadot		opp2_13: opp-1092000000 {
270b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1092000000>;
271b97ee269SEmmanuel Vadot			opp-microvolt = <1000000>;
272b97ee269SEmmanuel Vadot		};
273b97ee269SEmmanuel Vadot		opp2_14: opp-1144000000 {
274b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1144000000>;
275b97ee269SEmmanuel Vadot			opp-microvolt = <1025000>;
276b97ee269SEmmanuel Vadot		};
277b97ee269SEmmanuel Vadot		opp2_15: opp-1196000000 {
278b97ee269SEmmanuel Vadot			opp-hz = /bits/ 64 <1196000000>;
279b97ee269SEmmanuel Vadot			opp-microvolt = <1050000>;
280b97ee269SEmmanuel Vadot		};
281b97ee269SEmmanuel Vadot	};
282b97ee269SEmmanuel Vadot
283b97ee269SEmmanuel Vadot	cci: cci {
284b97ee269SEmmanuel Vadot		compatible = "mediatek,mt8183-cci";
285b97ee269SEmmanuel Vadot		clocks = <&mcucfg CLK_MCU_BUS_SEL>,
286b97ee269SEmmanuel Vadot			 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
287b97ee269SEmmanuel Vadot		clock-names = "cci", "intermediate";
288b97ee269SEmmanuel Vadot		operating-points-v2 = <&cci_opp>;
289b97ee269SEmmanuel Vadot	};
290b97ee269SEmmanuel Vadot
291c66ec88fSEmmanuel Vadot	cpus {
292c66ec88fSEmmanuel Vadot		#address-cells = <1>;
293c66ec88fSEmmanuel Vadot		#size-cells = <0>;
294c66ec88fSEmmanuel Vadot
295c66ec88fSEmmanuel Vadot		cpu-map {
296c66ec88fSEmmanuel Vadot			cluster0 {
297c66ec88fSEmmanuel Vadot				core0 {
298c66ec88fSEmmanuel Vadot					cpu = <&cpu0>;
299c66ec88fSEmmanuel Vadot				};
300c66ec88fSEmmanuel Vadot				core1 {
301c66ec88fSEmmanuel Vadot					cpu = <&cpu1>;
302c66ec88fSEmmanuel Vadot				};
303c66ec88fSEmmanuel Vadot				core2 {
304c66ec88fSEmmanuel Vadot					cpu = <&cpu2>;
305c66ec88fSEmmanuel Vadot				};
306c66ec88fSEmmanuel Vadot				core3 {
307c66ec88fSEmmanuel Vadot					cpu = <&cpu3>;
308c66ec88fSEmmanuel Vadot				};
309c66ec88fSEmmanuel Vadot			};
310c66ec88fSEmmanuel Vadot
311c66ec88fSEmmanuel Vadot			cluster1 {
312c66ec88fSEmmanuel Vadot				core0 {
313c66ec88fSEmmanuel Vadot					cpu = <&cpu4>;
314c66ec88fSEmmanuel Vadot				};
315c66ec88fSEmmanuel Vadot				core1 {
316c66ec88fSEmmanuel Vadot					cpu = <&cpu5>;
317c66ec88fSEmmanuel Vadot				};
318c66ec88fSEmmanuel Vadot				core2 {
319c66ec88fSEmmanuel Vadot					cpu = <&cpu6>;
320c66ec88fSEmmanuel Vadot				};
321c66ec88fSEmmanuel Vadot				core3 {
322c66ec88fSEmmanuel Vadot					cpu = <&cpu7>;
323c66ec88fSEmmanuel Vadot				};
324c66ec88fSEmmanuel Vadot			};
325c66ec88fSEmmanuel Vadot		};
326c66ec88fSEmmanuel Vadot
327c66ec88fSEmmanuel Vadot		cpu0: cpu@0 {
328c66ec88fSEmmanuel Vadot			device_type = "cpu";
329c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
330c66ec88fSEmmanuel Vadot			reg = <0x000>;
331c66ec88fSEmmanuel Vadot			enable-method = "psci";
332c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
333c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
334b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP0_SEL>,
335b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
336b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
337b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster0_opp>;
338c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
339c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
340b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
341c66ec88fSEmmanuel Vadot		};
342c66ec88fSEmmanuel Vadot
343c66ec88fSEmmanuel Vadot		cpu1: cpu@1 {
344c66ec88fSEmmanuel Vadot			device_type = "cpu";
345c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
346c66ec88fSEmmanuel Vadot			reg = <0x001>;
347c66ec88fSEmmanuel Vadot			enable-method = "psci";
348c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
349c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
350b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP0_SEL>,
351b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
352b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
353b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster0_opp>;
354c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
355c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
356b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
357c66ec88fSEmmanuel Vadot		};
358c66ec88fSEmmanuel Vadot
359c66ec88fSEmmanuel Vadot		cpu2: cpu@2 {
360c66ec88fSEmmanuel Vadot			device_type = "cpu";
361c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
362c66ec88fSEmmanuel Vadot			reg = <0x002>;
363c66ec88fSEmmanuel Vadot			enable-method = "psci";
364c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
365c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
366b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP0_SEL>,
367b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
368b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
369b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster0_opp>;
370c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
371c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
372b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
373c66ec88fSEmmanuel Vadot		};
374c66ec88fSEmmanuel Vadot
375c66ec88fSEmmanuel Vadot		cpu3: cpu@3 {
376c66ec88fSEmmanuel Vadot			device_type = "cpu";
377c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
378c66ec88fSEmmanuel Vadot			reg = <0x003>;
379c66ec88fSEmmanuel Vadot			enable-method = "psci";
380c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <741>;
381c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>;
382b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP0_SEL>,
383b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
384b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
385b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster0_opp>;
386c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <84>;
387c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
388b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
389c66ec88fSEmmanuel Vadot		};
390c66ec88fSEmmanuel Vadot
391c66ec88fSEmmanuel Vadot		cpu4: cpu@100 {
392c66ec88fSEmmanuel Vadot			device_type = "cpu";
393c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
394c66ec88fSEmmanuel Vadot			reg = <0x100>;
395c66ec88fSEmmanuel Vadot			enable-method = "psci";
396c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
397c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
398b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP2_SEL>,
399b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
400b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
401b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster1_opp>;
402c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
403c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
404b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
405c66ec88fSEmmanuel Vadot		};
406c66ec88fSEmmanuel Vadot
407c66ec88fSEmmanuel Vadot		cpu5: cpu@101 {
408c66ec88fSEmmanuel Vadot			device_type = "cpu";
409c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
410c66ec88fSEmmanuel Vadot			reg = <0x101>;
411c66ec88fSEmmanuel Vadot			enable-method = "psci";
412c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
413c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
414b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP2_SEL>,
415b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
416b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
417b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster1_opp>;
418c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
419c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
420b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
421c66ec88fSEmmanuel Vadot		};
422c66ec88fSEmmanuel Vadot
423c66ec88fSEmmanuel Vadot		cpu6: cpu@102 {
424c66ec88fSEmmanuel Vadot			device_type = "cpu";
425c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
426c66ec88fSEmmanuel Vadot			reg = <0x102>;
427c66ec88fSEmmanuel Vadot			enable-method = "psci";
428c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
429c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
430b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP2_SEL>,
431b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
432b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
433b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster1_opp>;
434c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
435c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
436b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
437c66ec88fSEmmanuel Vadot		};
438c66ec88fSEmmanuel Vadot
439c66ec88fSEmmanuel Vadot		cpu7: cpu@103 {
440c66ec88fSEmmanuel Vadot			device_type = "cpu";
441c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a73";
442c66ec88fSEmmanuel Vadot			reg = <0x103>;
443c66ec88fSEmmanuel Vadot			enable-method = "psci";
444c66ec88fSEmmanuel Vadot			capacity-dmips-mhz = <1024>;
445c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>;
446b97ee269SEmmanuel Vadot			clocks = <&mcucfg CLK_MCU_MP2_SEL>,
447b97ee269SEmmanuel Vadot				 <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
448b97ee269SEmmanuel Vadot			clock-names = "cpu", "intermediate";
449b97ee269SEmmanuel Vadot			operating-points-v2 = <&cluster1_opp>;
450c66ec88fSEmmanuel Vadot			dynamic-power-coefficient = <211>;
451c66ec88fSEmmanuel Vadot			#cooling-cells = <2>;
452b97ee269SEmmanuel Vadot			mediatek,cci = <&cci>;
453c66ec88fSEmmanuel Vadot		};
454c66ec88fSEmmanuel Vadot
455c66ec88fSEmmanuel Vadot		idle-states {
456c66ec88fSEmmanuel Vadot			entry-method = "psci";
457c66ec88fSEmmanuel Vadot
458c66ec88fSEmmanuel Vadot			CPU_SLEEP: cpu-sleep {
459c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
460c66ec88fSEmmanuel Vadot				local-timer-stop;
461c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x00010001>;
462c66ec88fSEmmanuel Vadot				entry-latency-us = <200>;
463c66ec88fSEmmanuel Vadot				exit-latency-us = <200>;
464c66ec88fSEmmanuel Vadot				min-residency-us = <800>;
465c66ec88fSEmmanuel Vadot			};
466c66ec88fSEmmanuel Vadot
467c66ec88fSEmmanuel Vadot			CLUSTER_SLEEP0: cluster-sleep-0 {
468c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
469c66ec88fSEmmanuel Vadot				local-timer-stop;
470c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x01010001>;
471c66ec88fSEmmanuel Vadot				entry-latency-us = <250>;
472c66ec88fSEmmanuel Vadot				exit-latency-us = <400>;
473c66ec88fSEmmanuel Vadot				min-residency-us = <1000>;
474c66ec88fSEmmanuel Vadot			};
475c66ec88fSEmmanuel Vadot			CLUSTER_SLEEP1: cluster-sleep-1 {
476c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
477c66ec88fSEmmanuel Vadot				local-timer-stop;
478c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x01010001>;
479c66ec88fSEmmanuel Vadot				entry-latency-us = <250>;
480c66ec88fSEmmanuel Vadot				exit-latency-us = <400>;
481c66ec88fSEmmanuel Vadot				min-residency-us = <1300>;
482c66ec88fSEmmanuel Vadot			};
483c66ec88fSEmmanuel Vadot		};
484c66ec88fSEmmanuel Vadot	};
485c66ec88fSEmmanuel Vadot
486d5b0e70fSEmmanuel Vadot	gpu_opp_table: opp-table-0 {
4875956d97fSEmmanuel Vadot		compatible = "operating-points-v2";
4885956d97fSEmmanuel Vadot		opp-shared;
4895956d97fSEmmanuel Vadot
4905956d97fSEmmanuel Vadot		opp-300000000 {
4915956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <300000000>;
4925956d97fSEmmanuel Vadot			opp-microvolt = <625000>, <850000>;
4935956d97fSEmmanuel Vadot		};
4945956d97fSEmmanuel Vadot
4955956d97fSEmmanuel Vadot		opp-320000000 {
4965956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <320000000>;
4975956d97fSEmmanuel Vadot			opp-microvolt = <631250>, <850000>;
4985956d97fSEmmanuel Vadot		};
4995956d97fSEmmanuel Vadot
5005956d97fSEmmanuel Vadot		opp-340000000 {
5015956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <340000000>;
5025956d97fSEmmanuel Vadot			opp-microvolt = <637500>, <850000>;
5035956d97fSEmmanuel Vadot		};
5045956d97fSEmmanuel Vadot
5055956d97fSEmmanuel Vadot		opp-360000000 {
5065956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <360000000>;
5075956d97fSEmmanuel Vadot			opp-microvolt = <643750>, <850000>;
5085956d97fSEmmanuel Vadot		};
5095956d97fSEmmanuel Vadot
5105956d97fSEmmanuel Vadot		opp-380000000 {
5115956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <380000000>;
5125956d97fSEmmanuel Vadot			opp-microvolt = <650000>, <850000>;
5135956d97fSEmmanuel Vadot		};
5145956d97fSEmmanuel Vadot
5155956d97fSEmmanuel Vadot		opp-400000000 {
5165956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <400000000>;
5175956d97fSEmmanuel Vadot			opp-microvolt = <656250>, <850000>;
5185956d97fSEmmanuel Vadot		};
5195956d97fSEmmanuel Vadot
5205956d97fSEmmanuel Vadot		opp-420000000 {
5215956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <420000000>;
5225956d97fSEmmanuel Vadot			opp-microvolt = <662500>, <850000>;
5235956d97fSEmmanuel Vadot		};
5245956d97fSEmmanuel Vadot
5255956d97fSEmmanuel Vadot		opp-460000000 {
5265956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <460000000>;
5275956d97fSEmmanuel Vadot			opp-microvolt = <675000>, <850000>;
5285956d97fSEmmanuel Vadot		};
5295956d97fSEmmanuel Vadot
5305956d97fSEmmanuel Vadot		opp-500000000 {
5315956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <500000000>;
5325956d97fSEmmanuel Vadot			opp-microvolt = <687500>, <850000>;
5335956d97fSEmmanuel Vadot		};
5345956d97fSEmmanuel Vadot
5355956d97fSEmmanuel Vadot		opp-540000000 {
5365956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <540000000>;
5375956d97fSEmmanuel Vadot			opp-microvolt = <700000>, <850000>;
5385956d97fSEmmanuel Vadot		};
5395956d97fSEmmanuel Vadot
5405956d97fSEmmanuel Vadot		opp-580000000 {
5415956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <580000000>;
5425956d97fSEmmanuel Vadot			opp-microvolt = <712500>, <850000>;
5435956d97fSEmmanuel Vadot		};
5445956d97fSEmmanuel Vadot
5455956d97fSEmmanuel Vadot		opp-620000000 {
5465956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <620000000>;
5475956d97fSEmmanuel Vadot			opp-microvolt = <725000>, <850000>;
5485956d97fSEmmanuel Vadot		};
5495956d97fSEmmanuel Vadot
5505956d97fSEmmanuel Vadot		opp-653000000 {
5515956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <653000000>;
5525956d97fSEmmanuel Vadot			opp-microvolt = <743750>, <850000>;
5535956d97fSEmmanuel Vadot		};
5545956d97fSEmmanuel Vadot
5555956d97fSEmmanuel Vadot		opp-698000000 {
5565956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <698000000>;
5575956d97fSEmmanuel Vadot			opp-microvolt = <768750>, <868750>;
5585956d97fSEmmanuel Vadot		};
5595956d97fSEmmanuel Vadot
5605956d97fSEmmanuel Vadot		opp-743000000 {
5615956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <743000000>;
5625956d97fSEmmanuel Vadot			opp-microvolt = <793750>, <893750>;
5635956d97fSEmmanuel Vadot		};
5645956d97fSEmmanuel Vadot
5655956d97fSEmmanuel Vadot		opp-800000000 {
5665956d97fSEmmanuel Vadot			opp-hz = /bits/ 64 <800000000>;
5675956d97fSEmmanuel Vadot			opp-microvolt = <825000>, <925000>;
5685956d97fSEmmanuel Vadot		};
5695956d97fSEmmanuel Vadot	};
5705956d97fSEmmanuel Vadot
571c66ec88fSEmmanuel Vadot	pmu-a53 {
572c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a53-pmu";
573c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
574c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster0>;
575c66ec88fSEmmanuel Vadot	};
576c66ec88fSEmmanuel Vadot
577c66ec88fSEmmanuel Vadot	pmu-a73 {
578c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a73-pmu";
579c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
580c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster1>;
581c66ec88fSEmmanuel Vadot	};
582c66ec88fSEmmanuel Vadot
583c66ec88fSEmmanuel Vadot	psci {
584c66ec88fSEmmanuel Vadot		compatible = "arm,psci-1.0";
585c66ec88fSEmmanuel Vadot		method = "smc";
586c66ec88fSEmmanuel Vadot	};
587c66ec88fSEmmanuel Vadot
588c66ec88fSEmmanuel Vadot	clk26m: oscillator {
589c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
590c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
591c66ec88fSEmmanuel Vadot		clock-frequency = <26000000>;
592c66ec88fSEmmanuel Vadot		clock-output-names = "clk26m";
593c66ec88fSEmmanuel Vadot	};
594c66ec88fSEmmanuel Vadot
595c66ec88fSEmmanuel Vadot	timer {
596c66ec88fSEmmanuel Vadot		compatible = "arm,armv8-timer";
597c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
598c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW 0>,
599c66ec88fSEmmanuel Vadot			     <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW 0>,
600c66ec88fSEmmanuel Vadot			     <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW 0>,
601c66ec88fSEmmanuel Vadot			     <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW 0>;
602c66ec88fSEmmanuel Vadot	};
603c66ec88fSEmmanuel Vadot
604c66ec88fSEmmanuel Vadot	soc {
605c66ec88fSEmmanuel Vadot		#address-cells = <2>;
606c66ec88fSEmmanuel Vadot		#size-cells = <2>;
607c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
608c66ec88fSEmmanuel Vadot		ranges;
609c66ec88fSEmmanuel Vadot
610b97ee269SEmmanuel Vadot		soc_data: efuse@8000000 {
611c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-efuse",
612c66ec88fSEmmanuel Vadot				     "mediatek,efuse";
613c66ec88fSEmmanuel Vadot			reg = <0 0x08000000 0 0x0010>;
614c66ec88fSEmmanuel Vadot			#address-cells = <1>;
615c66ec88fSEmmanuel Vadot			#size-cells = <1>;
616c66ec88fSEmmanuel Vadot			status = "disabled";
617c66ec88fSEmmanuel Vadot		};
618c66ec88fSEmmanuel Vadot
619c66ec88fSEmmanuel Vadot		gic: interrupt-controller@c000000 {
620c66ec88fSEmmanuel Vadot			compatible = "arm,gic-v3";
621c66ec88fSEmmanuel Vadot			#interrupt-cells = <4>;
622c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
623c66ec88fSEmmanuel Vadot			interrupt-controller;
624c66ec88fSEmmanuel Vadot			reg = <0 0x0c000000 0 0x40000>,  /* GICD */
625c66ec88fSEmmanuel Vadot			      <0 0x0c100000 0 0x200000>, /* GICR */
626c66ec88fSEmmanuel Vadot			      <0 0x0c400000 0 0x2000>,   /* GICC */
627c66ec88fSEmmanuel Vadot			      <0 0x0c410000 0 0x1000>,   /* GICH */
628c66ec88fSEmmanuel Vadot			      <0 0x0c420000 0 0x2000>;   /* GICV */
629c66ec88fSEmmanuel Vadot
630c66ec88fSEmmanuel Vadot			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>;
631c66ec88fSEmmanuel Vadot			ppi-partitions {
632c66ec88fSEmmanuel Vadot				ppi_cluster0: interrupt-partition-0 {
633c66ec88fSEmmanuel Vadot					affinity = <&cpu0 &cpu1 &cpu2 &cpu3>;
634c66ec88fSEmmanuel Vadot				};
635c66ec88fSEmmanuel Vadot				ppi_cluster1: interrupt-partition-1 {
636c66ec88fSEmmanuel Vadot					affinity = <&cpu4 &cpu5 &cpu6 &cpu7>;
637c66ec88fSEmmanuel Vadot				};
638c66ec88fSEmmanuel Vadot			};
639c66ec88fSEmmanuel Vadot		};
640c66ec88fSEmmanuel Vadot
641c66ec88fSEmmanuel Vadot		mcucfg: syscon@c530000 {
642c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mcucfg", "syscon";
643c66ec88fSEmmanuel Vadot			reg = <0 0x0c530000 0 0x1000>;
644c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
645c66ec88fSEmmanuel Vadot		};
646c66ec88fSEmmanuel Vadot
647c66ec88fSEmmanuel Vadot		sysirq: interrupt-controller@c530a80 {
648c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-sysirq",
649c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-sysirq";
650c66ec88fSEmmanuel Vadot			interrupt-controller;
651c66ec88fSEmmanuel Vadot			#interrupt-cells = <3>;
652c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
653c66ec88fSEmmanuel Vadot			reg = <0 0x0c530a80 0 0x50>;
654c66ec88fSEmmanuel Vadot		};
655c66ec88fSEmmanuel Vadot
656e67e8565SEmmanuel Vadot		cpu_debug0: cpu-debug@d410000 {
657e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
658e67e8565SEmmanuel Vadot			reg = <0x0 0xd410000 0x0 0x1000>;
659e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
660e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
661e67e8565SEmmanuel Vadot			cpu = <&cpu0>;
662e67e8565SEmmanuel Vadot		};
663e67e8565SEmmanuel Vadot
664e67e8565SEmmanuel Vadot		cpu_debug1: cpu-debug@d510000 {
665e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
666e67e8565SEmmanuel Vadot			reg = <0x0 0xd510000 0x0 0x1000>;
667e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
668e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
669e67e8565SEmmanuel Vadot			cpu = <&cpu1>;
670e67e8565SEmmanuel Vadot		};
671e67e8565SEmmanuel Vadot
672e67e8565SEmmanuel Vadot		cpu_debug2: cpu-debug@d610000 {
673e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
674e67e8565SEmmanuel Vadot			reg = <0x0 0xd610000 0x0 0x1000>;
675e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
676e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
677e67e8565SEmmanuel Vadot			cpu = <&cpu2>;
678e67e8565SEmmanuel Vadot		};
679e67e8565SEmmanuel Vadot
680e67e8565SEmmanuel Vadot		cpu_debug3: cpu-debug@d710000 {
681e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
682e67e8565SEmmanuel Vadot			reg = <0x0 0xd710000 0x0 0x1000>;
683e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
684e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
685e67e8565SEmmanuel Vadot			cpu = <&cpu3>;
686e67e8565SEmmanuel Vadot		};
687e67e8565SEmmanuel Vadot
688e67e8565SEmmanuel Vadot		cpu_debug4: cpu-debug@d810000 {
689e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
690e67e8565SEmmanuel Vadot			reg = <0x0 0xd810000 0x0 0x1000>;
691e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
692e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
693e67e8565SEmmanuel Vadot			cpu = <&cpu4>;
694e67e8565SEmmanuel Vadot		};
695e67e8565SEmmanuel Vadot
696e67e8565SEmmanuel Vadot		cpu_debug5: cpu-debug@d910000 {
697e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
698e67e8565SEmmanuel Vadot			reg = <0x0 0xd910000 0x0 0x1000>;
699e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
700e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
701e67e8565SEmmanuel Vadot			cpu = <&cpu5>;
702e67e8565SEmmanuel Vadot		};
703e67e8565SEmmanuel Vadot
704e67e8565SEmmanuel Vadot		cpu_debug6: cpu-debug@da10000 {
705e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
706e67e8565SEmmanuel Vadot			reg = <0x0 0xda10000 0x0 0x1000>;
707e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
708e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
709e67e8565SEmmanuel Vadot			cpu = <&cpu6>;
710e67e8565SEmmanuel Vadot		};
711e67e8565SEmmanuel Vadot
712e67e8565SEmmanuel Vadot		cpu_debug7: cpu-debug@db10000 {
713e67e8565SEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
714e67e8565SEmmanuel Vadot			reg = <0x0 0xdb10000 0x0 0x1000>;
715e67e8565SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_DEBUGSYS>;
716e67e8565SEmmanuel Vadot			clock-names = "apb_pclk";
717e67e8565SEmmanuel Vadot			cpu = <&cpu7>;
718e67e8565SEmmanuel Vadot		};
719e67e8565SEmmanuel Vadot
720c66ec88fSEmmanuel Vadot		topckgen: syscon@10000000 {
721c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-topckgen", "syscon";
722c66ec88fSEmmanuel Vadot			reg = <0 0x10000000 0 0x1000>;
723c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
724c66ec88fSEmmanuel Vadot		};
725c66ec88fSEmmanuel Vadot
726c66ec88fSEmmanuel Vadot		infracfg: syscon@10001000 {
727c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-infracfg", "syscon";
728c66ec88fSEmmanuel Vadot			reg = <0 0x10001000 0 0x1000>;
729c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
730c66ec88fSEmmanuel Vadot			#reset-cells = <1>;
731c66ec88fSEmmanuel Vadot		};
732c66ec88fSEmmanuel Vadot
733c66ec88fSEmmanuel Vadot		pericfg: syscon@10003000 {
734c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-pericfg", "syscon";
735c66ec88fSEmmanuel Vadot			reg = <0 0x10003000 0 0x1000>;
736c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
737c66ec88fSEmmanuel Vadot		};
738c66ec88fSEmmanuel Vadot
739c66ec88fSEmmanuel Vadot		pio: pinctrl@10005000 {
740c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-pinctrl";
741c66ec88fSEmmanuel Vadot			reg = <0 0x10005000 0 0x1000>,
742c66ec88fSEmmanuel Vadot			      <0 0x11f20000 0 0x1000>,
743c66ec88fSEmmanuel Vadot			      <0 0x11e80000 0 0x1000>,
744c66ec88fSEmmanuel Vadot			      <0 0x11e70000 0 0x1000>,
745c66ec88fSEmmanuel Vadot			      <0 0x11e90000 0 0x1000>,
746c66ec88fSEmmanuel Vadot			      <0 0x11d30000 0 0x1000>,
747c66ec88fSEmmanuel Vadot			      <0 0x11d20000 0 0x1000>,
748c66ec88fSEmmanuel Vadot			      <0 0x11c50000 0 0x1000>,
749c66ec88fSEmmanuel Vadot			      <0 0x11f30000 0 0x1000>,
750c66ec88fSEmmanuel Vadot			      <0 0x1000b000 0 0x1000>;
751c66ec88fSEmmanuel Vadot			reg-names = "iocfg0", "iocfg1", "iocfg2",
752c66ec88fSEmmanuel Vadot				    "iocfg3", "iocfg4", "iocfg5",
753c66ec88fSEmmanuel Vadot				    "iocfg6", "iocfg7", "iocfg8",
754c66ec88fSEmmanuel Vadot				    "eint";
755c66ec88fSEmmanuel Vadot			gpio-controller;
756c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
757c66ec88fSEmmanuel Vadot			gpio-ranges = <&pio 0 0 192>;
758c66ec88fSEmmanuel Vadot			interrupt-controller;
759c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>;
760c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
761c66ec88fSEmmanuel Vadot		};
762c66ec88fSEmmanuel Vadot
7635def4c47SEmmanuel Vadot		scpsys: syscon@10006000 {
764*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-scpsys", "syscon", "simple-mfd";
7655def4c47SEmmanuel Vadot			reg = <0 0x10006000 0 0x1000>;
7665def4c47SEmmanuel Vadot
7675def4c47SEmmanuel Vadot			/* System Power Manager */
7685def4c47SEmmanuel Vadot			spm: power-controller {
7695def4c47SEmmanuel Vadot				compatible = "mediatek,mt8183-power-controller";
7705def4c47SEmmanuel Vadot				#address-cells = <1>;
7715def4c47SEmmanuel Vadot				#size-cells = <0>;
7725def4c47SEmmanuel Vadot				#power-domain-cells = <1>;
7735def4c47SEmmanuel Vadot
7745def4c47SEmmanuel Vadot				/* power domain of the SoC */
7755def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_AUDIO {
7765def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_AUDIO>;
7775def4c47SEmmanuel Vadot					clocks = <&topckgen CLK_TOP_MUX_AUD_INTBUS>,
7785def4c47SEmmanuel Vadot						 <&infracfg CLK_INFRA_AUDIO>,
7795def4c47SEmmanuel Vadot						 <&infracfg CLK_INFRA_AUDIO_26M_BCLK>;
7805def4c47SEmmanuel Vadot					clock-names = "audio", "audio1", "audio2";
7815def4c47SEmmanuel Vadot					#power-domain-cells = <0>;
7825def4c47SEmmanuel Vadot				};
7835def4c47SEmmanuel Vadot
7845def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_CONN {
7855def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_CONN>;
7865def4c47SEmmanuel Vadot					mediatek,infracfg = <&infracfg>;
7875def4c47SEmmanuel Vadot					#power-domain-cells = <0>;
7885def4c47SEmmanuel Vadot				};
7895def4c47SEmmanuel Vadot
790b97ee269SEmmanuel Vadot				mfg_async: power-domain@MT8183_POWER_DOMAIN_MFG_ASYNC {
7915def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_MFG_ASYNC>;
7925def4c47SEmmanuel Vadot					clocks = <&topckgen CLK_TOP_MUX_MFG>;
7935def4c47SEmmanuel Vadot					clock-names = "mfg";
7945def4c47SEmmanuel Vadot					#address-cells = <1>;
7955def4c47SEmmanuel Vadot					#size-cells = <0>;
7965def4c47SEmmanuel Vadot					#power-domain-cells = <1>;
7975def4c47SEmmanuel Vadot
7985def4c47SEmmanuel Vadot					mfg: power-domain@MT8183_POWER_DOMAIN_MFG {
7995def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_MFG>;
8005def4c47SEmmanuel Vadot						#address-cells = <1>;
8015def4c47SEmmanuel Vadot						#size-cells = <0>;
8025def4c47SEmmanuel Vadot						#power-domain-cells = <1>;
8035def4c47SEmmanuel Vadot
8045def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_MFG_CORE0 {
8055def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_MFG_CORE0>;
8065def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
8075def4c47SEmmanuel Vadot						};
8085def4c47SEmmanuel Vadot
8095def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_MFG_CORE1 {
8105def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_MFG_CORE1>;
8115def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
8125def4c47SEmmanuel Vadot						};
8135def4c47SEmmanuel Vadot
8145def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_MFG_2D {
8155def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_MFG_2D>;
8165def4c47SEmmanuel Vadot							mediatek,infracfg = <&infracfg>;
8175def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
8185def4c47SEmmanuel Vadot						};
8195def4c47SEmmanuel Vadot					};
8205def4c47SEmmanuel Vadot				};
8215def4c47SEmmanuel Vadot
8225def4c47SEmmanuel Vadot				power-domain@MT8183_POWER_DOMAIN_DISP {
8235def4c47SEmmanuel Vadot					reg = <MT8183_POWER_DOMAIN_DISP>;
8245def4c47SEmmanuel Vadot					clocks = <&topckgen CLK_TOP_MUX_MM>,
8255def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_SMI_COMMON>,
8265def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_SMI_LARB0>,
8275def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_SMI_LARB1>,
8285def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_COMM0>,
8295def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_COMM1>,
8305def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_CCU2MM>,
8315def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_IPU12MM>,
8325def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_IMG2MM>,
8335def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_CAM2MM>,
8345def4c47SEmmanuel Vadot						 <&mmsys CLK_MM_GALS_IPU2MM>;
8355def4c47SEmmanuel Vadot					clock-names = "mm", "mm-0", "mm-1", "mm-2", "mm-3",
8365def4c47SEmmanuel Vadot						      "mm-4", "mm-5", "mm-6", "mm-7",
8375def4c47SEmmanuel Vadot						      "mm-8", "mm-9";
8385def4c47SEmmanuel Vadot					mediatek,infracfg = <&infracfg>;
8395def4c47SEmmanuel Vadot					mediatek,smi = <&smi_common>;
8405def4c47SEmmanuel Vadot					#address-cells = <1>;
8415def4c47SEmmanuel Vadot					#size-cells = <0>;
8425def4c47SEmmanuel Vadot					#power-domain-cells = <1>;
8435def4c47SEmmanuel Vadot
8445def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_CAM {
8455def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_CAM>;
8465def4c47SEmmanuel Vadot						clocks = <&topckgen CLK_TOP_MUX_CAM>,
8475def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_LARB6>,
8485def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_LARB3>,
8495def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_SENINF>,
8505def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CAMSV0>,
8515def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CAMSV1>,
8525def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CAMSV2>,
8535def4c47SEmmanuel Vadot							 <&camsys CLK_CAM_CCU>;
8545def4c47SEmmanuel Vadot						clock-names = "cam", "cam-0", "cam-1",
8555def4c47SEmmanuel Vadot							      "cam-2", "cam-3", "cam-4",
8565def4c47SEmmanuel Vadot							      "cam-5", "cam-6";
8575def4c47SEmmanuel Vadot						mediatek,infracfg = <&infracfg>;
8585def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
8595def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
8605def4c47SEmmanuel Vadot					};
8615def4c47SEmmanuel Vadot
8625def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_ISP {
8635def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_ISP>;
8645def4c47SEmmanuel Vadot						clocks = <&topckgen CLK_TOP_MUX_IMG>,
8655def4c47SEmmanuel Vadot							 <&imgsys CLK_IMG_LARB5>,
8665def4c47SEmmanuel Vadot							 <&imgsys CLK_IMG_LARB2>;
8675def4c47SEmmanuel Vadot						clock-names = "isp", "isp-0", "isp-1";
8685def4c47SEmmanuel Vadot						mediatek,infracfg = <&infracfg>;
8695def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
8705def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
8715def4c47SEmmanuel Vadot					};
8725def4c47SEmmanuel Vadot
8735def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_VDEC {
8745def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_VDEC>;
8755def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
8765def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
8775def4c47SEmmanuel Vadot					};
8785def4c47SEmmanuel Vadot
8795def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_VENC {
8805def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_VENC>;
8815def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
8825def4c47SEmmanuel Vadot						#power-domain-cells = <0>;
8835def4c47SEmmanuel Vadot					};
8845def4c47SEmmanuel Vadot
8855def4c47SEmmanuel Vadot					power-domain@MT8183_POWER_DOMAIN_VPU_TOP {
8865def4c47SEmmanuel Vadot						reg = <MT8183_POWER_DOMAIN_VPU_TOP>;
8875def4c47SEmmanuel Vadot						clocks = <&topckgen CLK_TOP_MUX_IPU_IF>,
8885def4c47SEmmanuel Vadot							 <&topckgen CLK_TOP_MUX_DSP>,
8895def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_IPU>,
8905def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_AHB>,
8915def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_AXI>,
8925def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_ISP>,
8935def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_CAM_ADL>,
8945def4c47SEmmanuel Vadot							 <&ipu_conn CLK_IPU_CONN_IMG_ADL>;
8955def4c47SEmmanuel Vadot						clock-names = "vpu", "vpu1", "vpu-0", "vpu-1",
8965def4c47SEmmanuel Vadot							      "vpu-2", "vpu-3", "vpu-4", "vpu-5";
8975def4c47SEmmanuel Vadot						mediatek,infracfg = <&infracfg>;
8985def4c47SEmmanuel Vadot						mediatek,smi = <&smi_common>;
8995def4c47SEmmanuel Vadot						#address-cells = <1>;
9005def4c47SEmmanuel Vadot						#size-cells = <0>;
9015def4c47SEmmanuel Vadot						#power-domain-cells = <1>;
9025def4c47SEmmanuel Vadot
9035def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_VPU_CORE0 {
9045def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_VPU_CORE0>;
9055def4c47SEmmanuel Vadot							clocks = <&topckgen CLK_TOP_MUX_DSP1>;
9065def4c47SEmmanuel Vadot							clock-names = "vpu2";
9075def4c47SEmmanuel Vadot							mediatek,infracfg = <&infracfg>;
9085def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
9095def4c47SEmmanuel Vadot						};
9105def4c47SEmmanuel Vadot
9115def4c47SEmmanuel Vadot						power-domain@MT8183_POWER_DOMAIN_VPU_CORE1 {
9125def4c47SEmmanuel Vadot							reg = <MT8183_POWER_DOMAIN_VPU_CORE1>;
9135def4c47SEmmanuel Vadot							clocks = <&topckgen CLK_TOP_MUX_DSP2>;
9145def4c47SEmmanuel Vadot							clock-names = "vpu3";
9155def4c47SEmmanuel Vadot							mediatek,infracfg = <&infracfg>;
9165def4c47SEmmanuel Vadot							#power-domain-cells = <0>;
9175def4c47SEmmanuel Vadot						};
9185def4c47SEmmanuel Vadot					};
9195def4c47SEmmanuel Vadot				};
9205def4c47SEmmanuel Vadot			};
9215def4c47SEmmanuel Vadot		};
9225def4c47SEmmanuel Vadot
923c66ec88fSEmmanuel Vadot		watchdog: watchdog@10007000 {
9246be33864SEmmanuel Vadot			compatible = "mediatek,mt8183-wdt";
925c66ec88fSEmmanuel Vadot			reg = <0 0x10007000 0 0x100>;
926c66ec88fSEmmanuel Vadot			#reset-cells = <1>;
927c66ec88fSEmmanuel Vadot		};
928c66ec88fSEmmanuel Vadot
929c66ec88fSEmmanuel Vadot		apmixedsys: syscon@1000c000 {
930c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-apmixedsys", "syscon";
931c66ec88fSEmmanuel Vadot			reg = <0 0x1000c000 0 0x1000>;
932c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
933c66ec88fSEmmanuel Vadot		};
934c66ec88fSEmmanuel Vadot
935c66ec88fSEmmanuel Vadot		pwrap: pwrap@1000d000 {
936c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-pwrap";
937c66ec88fSEmmanuel Vadot			reg = <0 0x1000d000 0 0x1000>;
938c66ec88fSEmmanuel Vadot			reg-names = "pwrap";
939c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>;
940c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_PMICSPI>,
941c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_PMIC_AP>;
942c66ec88fSEmmanuel Vadot			clock-names = "spi", "wrap";
943c66ec88fSEmmanuel Vadot		};
944c66ec88fSEmmanuel Vadot
945*7ef62cebSEmmanuel Vadot		keyboard: keyboard@10010000 {
946*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt6779-keypad";
947*7ef62cebSEmmanuel Vadot			reg = <0 0x10010000 0 0x1000>;
948*7ef62cebSEmmanuel Vadot			interrupts = <GIC_SPI 186 IRQ_TYPE_EDGE_FALLING>;
949*7ef62cebSEmmanuel Vadot			clocks = <&clk26m>;
950*7ef62cebSEmmanuel Vadot			clock-names = "kpd";
951*7ef62cebSEmmanuel Vadot			status = "disabled";
952*7ef62cebSEmmanuel Vadot		};
953*7ef62cebSEmmanuel Vadot
9546be33864SEmmanuel Vadot		scp: scp@10500000 {
9556be33864SEmmanuel Vadot			compatible = "mediatek,mt8183-scp";
9566be33864SEmmanuel Vadot			reg = <0 0x10500000 0 0x80000>,
9576be33864SEmmanuel Vadot			      <0 0x105c0000 0 0x19080>;
9586be33864SEmmanuel Vadot			reg-names = "sram", "cfg";
9596be33864SEmmanuel Vadot			interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
9606be33864SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_SCPSYS>;
9616be33864SEmmanuel Vadot			clock-names = "main";
9626be33864SEmmanuel Vadot			memory-region = <&scp_mem_reserved>;
9636be33864SEmmanuel Vadot			status = "disabled";
9646be33864SEmmanuel Vadot		};
9656be33864SEmmanuel Vadot
966c66ec88fSEmmanuel Vadot		systimer: timer@10017000 {
967c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-timer",
968c66ec88fSEmmanuel Vadot				     "mediatek,mt6765-timer";
969c66ec88fSEmmanuel Vadot			reg = <0 0x10017000 0 0x1000>;
970c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
971c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_CLK13M>;
972c66ec88fSEmmanuel Vadot			clock-names = "clk13m";
973c66ec88fSEmmanuel Vadot		};
974c66ec88fSEmmanuel Vadot
9755def4c47SEmmanuel Vadot		iommu: iommu@10205000 {
9765def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-m4u";
9775def4c47SEmmanuel Vadot			reg = <0 0x10205000 0 0x1000>;
9785def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_LOW>;
979d5b0e70fSEmmanuel Vadot			mediatek,larbs = <&larb0>, <&larb1>, <&larb2>, <&larb3>,
980d5b0e70fSEmmanuel Vadot					 <&larb4>, <&larb5>, <&larb6>;
9815def4c47SEmmanuel Vadot			#iommu-cells = <1>;
9825def4c47SEmmanuel Vadot		};
9835def4c47SEmmanuel Vadot
984c66ec88fSEmmanuel Vadot		gce: mailbox@10238000 {
985c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-gce";
986c66ec88fSEmmanuel Vadot			reg = <0 0x10238000 0 0x4000>;
987c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_LOW>;
9885def4c47SEmmanuel Vadot			#mbox-cells = <2>;
989c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_GCE>;
990c66ec88fSEmmanuel Vadot			clock-names = "gce";
991c66ec88fSEmmanuel Vadot		};
992c66ec88fSEmmanuel Vadot
993c66ec88fSEmmanuel Vadot		auxadc: auxadc@11001000 {
994c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-auxadc",
995c66ec88fSEmmanuel Vadot				     "mediatek,mt8173-auxadc";
996c66ec88fSEmmanuel Vadot			reg = <0 0x11001000 0 0x1000>;
997c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_AUXADC>;
998c66ec88fSEmmanuel Vadot			clock-names = "main";
999c66ec88fSEmmanuel Vadot			#io-channel-cells = <1>;
1000c66ec88fSEmmanuel Vadot			status = "disabled";
1001c66ec88fSEmmanuel Vadot		};
1002c66ec88fSEmmanuel Vadot
1003c66ec88fSEmmanuel Vadot		uart0: serial@11002000 {
1004c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-uart",
1005c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-uart";
1006c66ec88fSEmmanuel Vadot			reg = <0 0x11002000 0 0x1000>;
1007c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>;
1008c66ec88fSEmmanuel Vadot			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART0>;
1009c66ec88fSEmmanuel Vadot			clock-names = "baud", "bus";
1010c66ec88fSEmmanuel Vadot			status = "disabled";
1011c66ec88fSEmmanuel Vadot		};
1012c66ec88fSEmmanuel Vadot
1013c66ec88fSEmmanuel Vadot		uart1: serial@11003000 {
1014c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-uart",
1015c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-uart";
1016c66ec88fSEmmanuel Vadot			reg = <0 0x11003000 0 0x1000>;
1017c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>;
1018c66ec88fSEmmanuel Vadot			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART1>;
1019c66ec88fSEmmanuel Vadot			clock-names = "baud", "bus";
1020c66ec88fSEmmanuel Vadot			status = "disabled";
1021c66ec88fSEmmanuel Vadot		};
1022c66ec88fSEmmanuel Vadot
1023c66ec88fSEmmanuel Vadot		uart2: serial@11004000 {
1024c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-uart",
1025c66ec88fSEmmanuel Vadot				     "mediatek,mt6577-uart";
1026c66ec88fSEmmanuel Vadot			reg = <0 0x11004000 0 0x1000>;
1027c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>;
1028c66ec88fSEmmanuel Vadot			clocks = <&clk26m>, <&infracfg CLK_INFRA_UART2>;
1029c66ec88fSEmmanuel Vadot			clock-names = "baud", "bus";
1030c66ec88fSEmmanuel Vadot			status = "disabled";
1031c66ec88fSEmmanuel Vadot		};
1032c66ec88fSEmmanuel Vadot
1033c66ec88fSEmmanuel Vadot		i2c6: i2c@11005000 {
1034c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1035c66ec88fSEmmanuel Vadot			reg = <0 0x11005000 0 0x1000>,
1036c66ec88fSEmmanuel Vadot			      <0 0x11000600 0 0x80>;
1037c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>;
1038c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C6>,
1039c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
1040c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
1041c66ec88fSEmmanuel Vadot			clock-div = <1>;
1042c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1043c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1044c66ec88fSEmmanuel Vadot			status = "disabled";
1045c66ec88fSEmmanuel Vadot		};
1046c66ec88fSEmmanuel Vadot
1047c66ec88fSEmmanuel Vadot		i2c0: i2c@11007000 {
1048c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1049c66ec88fSEmmanuel Vadot			reg = <0 0x11007000 0 0x1000>,
1050c66ec88fSEmmanuel Vadot			      <0 0x11000080 0 0x80>;
1051c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>;
1052c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C0>,
1053c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
1054c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
1055c66ec88fSEmmanuel Vadot			clock-div = <1>;
1056c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1057c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1058c66ec88fSEmmanuel Vadot			status = "disabled";
1059c66ec88fSEmmanuel Vadot		};
1060c66ec88fSEmmanuel Vadot
1061c66ec88fSEmmanuel Vadot		i2c4: i2c@11008000 {
1062c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1063c66ec88fSEmmanuel Vadot			reg = <0 0x11008000 0 0x1000>,
1064c66ec88fSEmmanuel Vadot			      <0 0x11000100 0 0x80>;
1065c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_LOW>;
1066c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C1>,
1067c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
1068c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C1_ARBITER>;
1069c66ec88fSEmmanuel Vadot			clock-names = "main", "dma","arb";
1070c66ec88fSEmmanuel Vadot			clock-div = <1>;
1071c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1072c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1073c66ec88fSEmmanuel Vadot			status = "disabled";
1074c66ec88fSEmmanuel Vadot		};
1075c66ec88fSEmmanuel Vadot
1076c66ec88fSEmmanuel Vadot		i2c2: i2c@11009000 {
1077c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1078c66ec88fSEmmanuel Vadot			reg = <0 0x11009000 0 0x1000>,
1079c66ec88fSEmmanuel Vadot			      <0 0x11000280 0 0x80>;
1080c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_LOW>;
1081c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C2>,
1082c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
1083c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C2_ARBITER>;
1084c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
1085c66ec88fSEmmanuel Vadot			clock-div = <1>;
1086c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1087c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1088c66ec88fSEmmanuel Vadot			status = "disabled";
1089c66ec88fSEmmanuel Vadot		};
1090c66ec88fSEmmanuel Vadot
1091c66ec88fSEmmanuel Vadot		spi0: spi@1100a000 {
1092c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
1093c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1094c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1095c66ec88fSEmmanuel Vadot			reg = <0 0x1100a000 0 0x1000>;
1096c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_LOW>;
1097c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
1098c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
1099c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI0>;
1100c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
1101c66ec88fSEmmanuel Vadot			status = "disabled";
1102c66ec88fSEmmanuel Vadot		};
1103c66ec88fSEmmanuel Vadot
1104b97ee269SEmmanuel Vadot		svs: svs@1100b000 {
1105b97ee269SEmmanuel Vadot			compatible = "mediatek,mt8183-svs";
1106b97ee269SEmmanuel Vadot			reg = <0 0x1100b000 0 0x1000>;
1107b97ee269SEmmanuel Vadot			interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>;
1108b97ee269SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_THERM>;
1109b97ee269SEmmanuel Vadot			clock-names = "main";
1110b97ee269SEmmanuel Vadot			nvmem-cells = <&svs_calibration>,
1111b97ee269SEmmanuel Vadot				      <&thermal_calibration>;
1112b97ee269SEmmanuel Vadot			nvmem-cell-names = "svs-calibration-data",
1113b97ee269SEmmanuel Vadot					   "t-calibration-data";
1114b97ee269SEmmanuel Vadot		};
1115b97ee269SEmmanuel Vadot
11162eb4d8dcSEmmanuel Vadot		thermal: thermal@1100b000 {
11172eb4d8dcSEmmanuel Vadot			#thermal-sensor-cells = <1>;
11182eb4d8dcSEmmanuel Vadot			compatible = "mediatek,mt8183-thermal";
11192eb4d8dcSEmmanuel Vadot			reg = <0 0x1100b000 0 0x1000>;
11202eb4d8dcSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_THERM>,
11212eb4d8dcSEmmanuel Vadot				 <&infracfg CLK_INFRA_AUXADC>;
11222eb4d8dcSEmmanuel Vadot			clock-names = "therm", "auxadc";
11232eb4d8dcSEmmanuel Vadot			resets = <&infracfg  MT8183_INFRACFG_AO_THERM_SW_RST>;
11242eb4d8dcSEmmanuel Vadot			interrupts = <0 76 IRQ_TYPE_LEVEL_LOW>;
11252eb4d8dcSEmmanuel Vadot			mediatek,auxadc = <&auxadc>;
11262eb4d8dcSEmmanuel Vadot			mediatek,apmixedsys = <&apmixedsys>;
11272eb4d8dcSEmmanuel Vadot			nvmem-cells = <&thermal_calibration>;
11282eb4d8dcSEmmanuel Vadot			nvmem-cell-names = "calibration-data";
11292eb4d8dcSEmmanuel Vadot		};
11302eb4d8dcSEmmanuel Vadot
11315956d97fSEmmanuel Vadot		thermal_zones: thermal-zones {
1132d5b0e70fSEmmanuel Vadot			cpu_thermal: cpu-thermal {
11332eb4d8dcSEmmanuel Vadot				polling-delay-passive = <100>;
11342eb4d8dcSEmmanuel Vadot				polling-delay = <500>;
11352eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 0>;
11362eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
11372eb4d8dcSEmmanuel Vadot
11382eb4d8dcSEmmanuel Vadot				trips {
11392eb4d8dcSEmmanuel Vadot					threshold: trip-point0 {
11402eb4d8dcSEmmanuel Vadot						temperature = <68000>;
11412eb4d8dcSEmmanuel Vadot						hysteresis = <2000>;
11422eb4d8dcSEmmanuel Vadot						type = "passive";
11432eb4d8dcSEmmanuel Vadot					};
11442eb4d8dcSEmmanuel Vadot
11452eb4d8dcSEmmanuel Vadot					target: trip-point1 {
11462eb4d8dcSEmmanuel Vadot						temperature = <80000>;
11472eb4d8dcSEmmanuel Vadot						hysteresis = <2000>;
11482eb4d8dcSEmmanuel Vadot						type = "passive";
11492eb4d8dcSEmmanuel Vadot					};
11502eb4d8dcSEmmanuel Vadot
11512eb4d8dcSEmmanuel Vadot					cpu_crit: cpu-crit {
11522eb4d8dcSEmmanuel Vadot						temperature = <115000>;
11532eb4d8dcSEmmanuel Vadot						hysteresis = <2000>;
11542eb4d8dcSEmmanuel Vadot						type = "critical";
11552eb4d8dcSEmmanuel Vadot					};
11562eb4d8dcSEmmanuel Vadot				};
11572eb4d8dcSEmmanuel Vadot
11582eb4d8dcSEmmanuel Vadot				cooling-maps {
11592eb4d8dcSEmmanuel Vadot					map0 {
11602eb4d8dcSEmmanuel Vadot						trip = <&target>;
11612eb4d8dcSEmmanuel Vadot						cooling-device = <&cpu0
11622eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11632eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>,
11642eb4d8dcSEmmanuel Vadot								 <&cpu1
11652eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11662eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>,
11672eb4d8dcSEmmanuel Vadot								 <&cpu2
11682eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11692eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>,
11702eb4d8dcSEmmanuel Vadot								 <&cpu3
11712eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11722eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>;
11732eb4d8dcSEmmanuel Vadot						contribution = <3072>;
11742eb4d8dcSEmmanuel Vadot					};
11752eb4d8dcSEmmanuel Vadot					map1 {
11762eb4d8dcSEmmanuel Vadot						trip = <&target>;
11772eb4d8dcSEmmanuel Vadot						cooling-device = <&cpu4
11782eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11792eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>,
11802eb4d8dcSEmmanuel Vadot								 <&cpu5
11812eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11822eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>,
11832eb4d8dcSEmmanuel Vadot								 <&cpu6
11842eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11852eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>,
11862eb4d8dcSEmmanuel Vadot								 <&cpu7
11872eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT
11882eb4d8dcSEmmanuel Vadot							THERMAL_NO_LIMIT>;
11892eb4d8dcSEmmanuel Vadot						contribution = <1024>;
11902eb4d8dcSEmmanuel Vadot					};
11912eb4d8dcSEmmanuel Vadot				};
11922eb4d8dcSEmmanuel Vadot			};
11932eb4d8dcSEmmanuel Vadot
11942eb4d8dcSEmmanuel Vadot			/* The tzts1 ~ tzts6 don't need to polling */
11952eb4d8dcSEmmanuel Vadot			/* The tzts1 ~ tzts6 don't need to thermal throttle */
11962eb4d8dcSEmmanuel Vadot
11972eb4d8dcSEmmanuel Vadot			tzts1: tzts1 {
11982eb4d8dcSEmmanuel Vadot				polling-delay-passive = <0>;
11992eb4d8dcSEmmanuel Vadot				polling-delay = <0>;
12002eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 1>;
12012eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
12022eb4d8dcSEmmanuel Vadot				trips {};
12032eb4d8dcSEmmanuel Vadot				cooling-maps {};
12042eb4d8dcSEmmanuel Vadot			};
12052eb4d8dcSEmmanuel Vadot
12062eb4d8dcSEmmanuel Vadot			tzts2: tzts2 {
12072eb4d8dcSEmmanuel Vadot				polling-delay-passive = <0>;
12082eb4d8dcSEmmanuel Vadot				polling-delay = <0>;
12092eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 2>;
12102eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
12112eb4d8dcSEmmanuel Vadot				trips {};
12122eb4d8dcSEmmanuel Vadot				cooling-maps {};
12132eb4d8dcSEmmanuel Vadot			};
12142eb4d8dcSEmmanuel Vadot
12152eb4d8dcSEmmanuel Vadot			tzts3: tzts3 {
12162eb4d8dcSEmmanuel Vadot				polling-delay-passive = <0>;
12172eb4d8dcSEmmanuel Vadot				polling-delay = <0>;
12182eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 3>;
12192eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
12202eb4d8dcSEmmanuel Vadot				trips {};
12212eb4d8dcSEmmanuel Vadot				cooling-maps {};
12222eb4d8dcSEmmanuel Vadot			};
12232eb4d8dcSEmmanuel Vadot
12242eb4d8dcSEmmanuel Vadot			tzts4: tzts4 {
12252eb4d8dcSEmmanuel Vadot				polling-delay-passive = <0>;
12262eb4d8dcSEmmanuel Vadot				polling-delay = <0>;
12272eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 4>;
12282eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
12292eb4d8dcSEmmanuel Vadot				trips {};
12302eb4d8dcSEmmanuel Vadot				cooling-maps {};
12312eb4d8dcSEmmanuel Vadot			};
12322eb4d8dcSEmmanuel Vadot
12332eb4d8dcSEmmanuel Vadot			tzts5: tzts5 {
12342eb4d8dcSEmmanuel Vadot				polling-delay-passive = <0>;
12352eb4d8dcSEmmanuel Vadot				polling-delay = <0>;
12362eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 5>;
12372eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
12382eb4d8dcSEmmanuel Vadot				trips {};
12392eb4d8dcSEmmanuel Vadot				cooling-maps {};
12402eb4d8dcSEmmanuel Vadot			};
12412eb4d8dcSEmmanuel Vadot
12422eb4d8dcSEmmanuel Vadot			tztsABB: tztsABB {
12432eb4d8dcSEmmanuel Vadot				polling-delay-passive = <0>;
12442eb4d8dcSEmmanuel Vadot				polling-delay = <0>;
12452eb4d8dcSEmmanuel Vadot				thermal-sensors = <&thermal 6>;
12462eb4d8dcSEmmanuel Vadot				sustainable-power = <5000>;
12472eb4d8dcSEmmanuel Vadot				trips {};
12482eb4d8dcSEmmanuel Vadot				cooling-maps {};
12492eb4d8dcSEmmanuel Vadot			};
12502eb4d8dcSEmmanuel Vadot		};
12512eb4d8dcSEmmanuel Vadot
12525def4c47SEmmanuel Vadot		pwm0: pwm@1100e000 {
12535def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-pwm";
12545def4c47SEmmanuel Vadot			reg = <0 0x1100e000 0 0x1000>;
12555def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_LOW>;
12565def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
12575def4c47SEmmanuel Vadot			#pwm-cells = <2>;
12585def4c47SEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_DISP_PWM>,
12595def4c47SEmmanuel Vadot					<&infracfg CLK_INFRA_DISP_PWM>;
12605def4c47SEmmanuel Vadot			clock-names = "main", "mm";
12615def4c47SEmmanuel Vadot		};
12625def4c47SEmmanuel Vadot
12635def4c47SEmmanuel Vadot		pwm1: pwm@11006000 {
12645def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-pwm";
12655def4c47SEmmanuel Vadot			reg = <0 0x11006000 0 0x1000>;
12665def4c47SEmmanuel Vadot			#pwm-cells = <2>;
12675def4c47SEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_PWM>,
12685def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM_HCLK>,
12695def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM1>,
12705def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM2>,
12715def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM3>,
12725def4c47SEmmanuel Vadot				 <&infracfg CLK_INFRA_PWM4>;
12735def4c47SEmmanuel Vadot			clock-names = "top", "main", "pwm1", "pwm2", "pwm3",
12745def4c47SEmmanuel Vadot				      "pwm4";
12755def4c47SEmmanuel Vadot		};
12765def4c47SEmmanuel Vadot
1277c66ec88fSEmmanuel Vadot		i2c3: i2c@1100f000 {
1278c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1279c66ec88fSEmmanuel Vadot			reg = <0 0x1100f000 0 0x1000>,
1280c66ec88fSEmmanuel Vadot			      <0 0x11000400 0 0x80>;
1281c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>;
1282c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C3>,
1283c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
1284c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
1285c66ec88fSEmmanuel Vadot			clock-div = <1>;
1286c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1287c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1288c66ec88fSEmmanuel Vadot			status = "disabled";
1289c66ec88fSEmmanuel Vadot		};
1290c66ec88fSEmmanuel Vadot
1291c66ec88fSEmmanuel Vadot		spi1: spi@11010000 {
1292c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
1293c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1294c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1295c66ec88fSEmmanuel Vadot			reg = <0 0x11010000 0 0x1000>;
1296c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_LOW>;
1297c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
1298c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
1299c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI1>;
1300c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
1301c66ec88fSEmmanuel Vadot			status = "disabled";
1302c66ec88fSEmmanuel Vadot		};
1303c66ec88fSEmmanuel Vadot
1304c66ec88fSEmmanuel Vadot		i2c1: i2c@11011000 {
1305c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1306c66ec88fSEmmanuel Vadot			reg = <0 0x11011000 0 0x1000>,
1307c66ec88fSEmmanuel Vadot			      <0 0x11000480 0 0x80>;
1308c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>;
1309c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C4>,
1310c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
1311c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
1312c66ec88fSEmmanuel Vadot			clock-div = <1>;
1313c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1314c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1315c66ec88fSEmmanuel Vadot			status = "disabled";
1316c66ec88fSEmmanuel Vadot		};
1317c66ec88fSEmmanuel Vadot
1318c66ec88fSEmmanuel Vadot		spi2: spi@11012000 {
1319c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
1320c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1321c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1322c66ec88fSEmmanuel Vadot			reg = <0 0x11012000 0 0x1000>;
1323c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_LOW>;
1324c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
1325c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
1326c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI2>;
1327c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
1328c66ec88fSEmmanuel Vadot			status = "disabled";
1329c66ec88fSEmmanuel Vadot		};
1330c66ec88fSEmmanuel Vadot
1331c66ec88fSEmmanuel Vadot		spi3: spi@11013000 {
1332c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
1333c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1334c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1335c66ec88fSEmmanuel Vadot			reg = <0 0x11013000 0 0x1000>;
1336c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_LOW>;
1337c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
1338c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
1339c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI3>;
1340c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
1341c66ec88fSEmmanuel Vadot			status = "disabled";
1342c66ec88fSEmmanuel Vadot		};
1343c66ec88fSEmmanuel Vadot
1344c66ec88fSEmmanuel Vadot		i2c9: i2c@11014000 {
1345c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1346c66ec88fSEmmanuel Vadot			reg = <0 0x11014000 0 0x1000>,
1347c66ec88fSEmmanuel Vadot			      <0 0x11000180 0 0x80>;
1348c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_LOW>;
1349c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C1_IMM>,
1350c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
1351c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C1_ARBITER>;
1352c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
1353c66ec88fSEmmanuel Vadot			clock-div = <1>;
1354c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1355c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1356c66ec88fSEmmanuel Vadot			status = "disabled";
1357c66ec88fSEmmanuel Vadot		};
1358c66ec88fSEmmanuel Vadot
1359c66ec88fSEmmanuel Vadot		i2c10: i2c@11015000 {
1360c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1361c66ec88fSEmmanuel Vadot			reg = <0 0x11015000 0 0x1000>,
1362c66ec88fSEmmanuel Vadot			      <0 0x11000300 0 0x80>;
1363c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_LOW>;
1364c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C2_IMM>,
1365c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
1366c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C2_ARBITER>;
1367c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
1368c66ec88fSEmmanuel Vadot			clock-div = <1>;
1369c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1370c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1371c66ec88fSEmmanuel Vadot			status = "disabled";
1372c66ec88fSEmmanuel Vadot		};
1373c66ec88fSEmmanuel Vadot
1374c66ec88fSEmmanuel Vadot		i2c5: i2c@11016000 {
1375c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1376c66ec88fSEmmanuel Vadot			reg = <0 0x11016000 0 0x1000>,
1377c66ec88fSEmmanuel Vadot			      <0 0x11000500 0 0x80>;
1378c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_LOW>;
1379c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C5>,
1380c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
1381c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C5_ARBITER>;
1382c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
1383c66ec88fSEmmanuel Vadot			clock-div = <1>;
1384c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1385c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1386c66ec88fSEmmanuel Vadot			status = "disabled";
1387c66ec88fSEmmanuel Vadot		};
1388c66ec88fSEmmanuel Vadot
1389c66ec88fSEmmanuel Vadot		i2c11: i2c@11017000 {
1390c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1391c66ec88fSEmmanuel Vadot			reg = <0 0x11017000 0 0x1000>,
1392c66ec88fSEmmanuel Vadot			      <0 0x11000580 0 0x80>;
1393c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_LOW>;
1394c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C5_IMM>,
1395c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>,
1396c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_I2C5_ARBITER>;
1397c66ec88fSEmmanuel Vadot			clock-names = "main", "dma", "arb";
1398c66ec88fSEmmanuel Vadot			clock-div = <1>;
1399c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1400c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1401c66ec88fSEmmanuel Vadot			status = "disabled";
1402c66ec88fSEmmanuel Vadot		};
1403c66ec88fSEmmanuel Vadot
1404c66ec88fSEmmanuel Vadot		spi4: spi@11018000 {
1405c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
1406c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1407c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1408c66ec88fSEmmanuel Vadot			reg = <0 0x11018000 0 0x1000>;
1409c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_LOW>;
1410c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
1411c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
1412c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI4>;
1413c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
1414c66ec88fSEmmanuel Vadot			status = "disabled";
1415c66ec88fSEmmanuel Vadot		};
1416c66ec88fSEmmanuel Vadot
1417c66ec88fSEmmanuel Vadot		spi5: spi@11019000 {
1418c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-spi";
1419c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1420c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1421c66ec88fSEmmanuel Vadot			reg = <0 0x11019000 0 0x1000>;
1422c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_LOW>;
1423c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>,
1424c66ec88fSEmmanuel Vadot				 <&topckgen CLK_TOP_MUX_SPI>,
1425c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_SPI5>;
1426c66ec88fSEmmanuel Vadot			clock-names = "parent-clk", "sel-clk", "spi-clk";
1427c66ec88fSEmmanuel Vadot			status = "disabled";
1428c66ec88fSEmmanuel Vadot		};
1429c66ec88fSEmmanuel Vadot
1430c66ec88fSEmmanuel Vadot		i2c7: i2c@1101a000 {
1431c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1432c66ec88fSEmmanuel Vadot			reg = <0 0x1101a000 0 0x1000>,
1433c66ec88fSEmmanuel Vadot			      <0 0x11000680 0 0x80>;
1434c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_LOW>;
1435c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C7>,
1436c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
1437c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
1438c66ec88fSEmmanuel Vadot			clock-div = <1>;
1439c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1440c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1441c66ec88fSEmmanuel Vadot			status = "disabled";
1442c66ec88fSEmmanuel Vadot		};
1443c66ec88fSEmmanuel Vadot
1444c66ec88fSEmmanuel Vadot		i2c8: i2c@1101b000 {
1445c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-i2c";
1446c66ec88fSEmmanuel Vadot			reg = <0 0x1101b000 0 0x1000>,
1447c66ec88fSEmmanuel Vadot			      <0 0x11000700 0 0x80>;
1448c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_LOW>;
1449c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_I2C8>,
1450c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_AP_DMA>;
1451c66ec88fSEmmanuel Vadot			clock-names = "main", "dma";
1452c66ec88fSEmmanuel Vadot			clock-div = <1>;
1453c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1454c66ec88fSEmmanuel Vadot			#size-cells = <0>;
1455c66ec88fSEmmanuel Vadot			status = "disabled";
1456c66ec88fSEmmanuel Vadot		};
1457c66ec88fSEmmanuel Vadot
1458c66ec88fSEmmanuel Vadot		ssusb: usb@11201000 {
1459c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mtu3", "mediatek,mtu3";
1460c66ec88fSEmmanuel Vadot			reg = <0 0x11201000 0 0x2e00>,
1461c66ec88fSEmmanuel Vadot			      <0 0x11203e00 0 0x0100>;
1462c66ec88fSEmmanuel Vadot			reg-names = "mac", "ippc";
1463c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_LOW>;
1464c66ec88fSEmmanuel Vadot			phys = <&u2port0 PHY_TYPE_USB2>,
1465c66ec88fSEmmanuel Vadot			       <&u3port0 PHY_TYPE_USB3>;
1466c66ec88fSEmmanuel Vadot			clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>,
1467c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_USB>;
1468c66ec88fSEmmanuel Vadot			clock-names = "sys_ck", "ref_ck";
14692eb4d8dcSEmmanuel Vadot			mediatek,syscon-wakeup = <&pericfg 0x420 101>;
1470c66ec88fSEmmanuel Vadot			#address-cells = <2>;
1471c66ec88fSEmmanuel Vadot			#size-cells = <2>;
1472c66ec88fSEmmanuel Vadot			ranges;
1473c66ec88fSEmmanuel Vadot			status = "disabled";
1474c66ec88fSEmmanuel Vadot
14752eb4d8dcSEmmanuel Vadot			usb_host: usb@11200000 {
1476c66ec88fSEmmanuel Vadot				compatible = "mediatek,mt8183-xhci",
1477c66ec88fSEmmanuel Vadot					     "mediatek,mtk-xhci";
1478c66ec88fSEmmanuel Vadot				reg = <0 0x11200000 0 0x1000>;
1479c66ec88fSEmmanuel Vadot				reg-names = "mac";
1480c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_LOW>;
1481c66ec88fSEmmanuel Vadot				clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>,
1482c66ec88fSEmmanuel Vadot					 <&infracfg CLK_INFRA_USB>;
1483c66ec88fSEmmanuel Vadot				clock-names = "sys_ck", "ref_ck";
1484c66ec88fSEmmanuel Vadot				status = "disabled";
1485c66ec88fSEmmanuel Vadot			};
1486c66ec88fSEmmanuel Vadot		};
1487c66ec88fSEmmanuel Vadot
14888cc087a1SEmmanuel Vadot		audiosys: audio-controller@11220000 {
1489c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-audiosys", "syscon";
1490c66ec88fSEmmanuel Vadot			reg = <0 0x11220000 0 0x1000>;
1491c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
14928cc087a1SEmmanuel Vadot			afe: mt8183-afe-pcm {
14938cc087a1SEmmanuel Vadot				compatible = "mediatek,mt8183-audio";
14948cc087a1SEmmanuel Vadot				interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_LOW>;
14958cc087a1SEmmanuel Vadot				resets = <&watchdog MT8183_TOPRGU_AUDIO_SW_RST>;
14968cc087a1SEmmanuel Vadot				reset-names = "audiosys";
14978cc087a1SEmmanuel Vadot				power-domains =
14988cc087a1SEmmanuel Vadot					<&spm MT8183_POWER_DOMAIN_AUDIO>;
14998cc087a1SEmmanuel Vadot				clocks = <&audiosys CLK_AUDIO_AFE>,
15008cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_DAC>,
15018cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_DAC_PREDIS>,
15028cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_ADC>,
15038cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_PDN_ADDA6_ADC>,
15048cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_22M>,
15058cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_24M>,
15068cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_APLL_TUNER>,
15078cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_APLL2_TUNER>,
15088cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_I2S1>,
15098cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_I2S2>,
15108cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_I2S3>,
15118cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_I2S4>,
15128cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_TDM>,
15138cc087a1SEmmanuel Vadot					 <&audiosys CLK_AUDIO_TML>,
15148cc087a1SEmmanuel Vadot					 <&infracfg CLK_INFRA_AUDIO>,
15158cc087a1SEmmanuel Vadot					 <&infracfg CLK_INFRA_AUDIO_26M_BCLK>,
15168cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_AUDIO>,
15178cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_AUD_INTBUS>,
15188cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_SYSPLL_D2_D4>,
15198cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_AUD_1>,
15208cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL1_CK>,
15218cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_AUD_2>,
15228cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL2_CK>,
15238cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_AUD_ENG1>,
15248cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL1_D8>,
15258cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_AUD_ENG2>,
15268cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL2_D8>,
15278cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_APLL_I2S0>,
15288cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_APLL_I2S1>,
15298cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_APLL_I2S2>,
15308cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_APLL_I2S3>,
15318cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_APLL_I2S4>,
15328cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_MUX_APLL_I2S5>,
15338cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL12_DIV0>,
15348cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL12_DIV1>,
15358cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL12_DIV2>,
15368cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL12_DIV3>,
15378cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL12_DIV4>,
15388cc087a1SEmmanuel Vadot					 <&topckgen CLK_TOP_APLL12_DIVB>,
15398cc087a1SEmmanuel Vadot					 /*<&topckgen CLK_TOP_APLL12_DIV5>,*/
15408cc087a1SEmmanuel Vadot					 <&clk26m>;
15418cc087a1SEmmanuel Vadot				clock-names = "aud_afe_clk",
15428cc087a1SEmmanuel Vadot						  "aud_dac_clk",
15438cc087a1SEmmanuel Vadot						  "aud_dac_predis_clk",
15448cc087a1SEmmanuel Vadot						  "aud_adc_clk",
15458cc087a1SEmmanuel Vadot						  "aud_adc_adda6_clk",
15468cc087a1SEmmanuel Vadot						  "aud_apll22m_clk",
15478cc087a1SEmmanuel Vadot						  "aud_apll24m_clk",
15488cc087a1SEmmanuel Vadot						  "aud_apll1_tuner_clk",
15498cc087a1SEmmanuel Vadot						  "aud_apll2_tuner_clk",
15508cc087a1SEmmanuel Vadot						  "aud_i2s1_bclk_sw",
15518cc087a1SEmmanuel Vadot						  "aud_i2s2_bclk_sw",
15528cc087a1SEmmanuel Vadot						  "aud_i2s3_bclk_sw",
15538cc087a1SEmmanuel Vadot						  "aud_i2s4_bclk_sw",
15548cc087a1SEmmanuel Vadot						  "aud_tdm_clk",
15558cc087a1SEmmanuel Vadot						  "aud_tml_clk",
15568cc087a1SEmmanuel Vadot						  "aud_infra_clk",
15578cc087a1SEmmanuel Vadot						  "mtkaif_26m_clk",
15588cc087a1SEmmanuel Vadot						  "top_mux_audio",
15598cc087a1SEmmanuel Vadot						  "top_mux_aud_intbus",
15608cc087a1SEmmanuel Vadot						  "top_syspll_d2_d4",
15618cc087a1SEmmanuel Vadot						  "top_mux_aud_1",
15628cc087a1SEmmanuel Vadot						  "top_apll1_ck",
15638cc087a1SEmmanuel Vadot						  "top_mux_aud_2",
15648cc087a1SEmmanuel Vadot						  "top_apll2_ck",
15658cc087a1SEmmanuel Vadot						  "top_mux_aud_eng1",
15668cc087a1SEmmanuel Vadot						  "top_apll1_d8",
15678cc087a1SEmmanuel Vadot						  "top_mux_aud_eng2",
15688cc087a1SEmmanuel Vadot						  "top_apll2_d8",
15698cc087a1SEmmanuel Vadot						  "top_i2s0_m_sel",
15708cc087a1SEmmanuel Vadot						  "top_i2s1_m_sel",
15718cc087a1SEmmanuel Vadot						  "top_i2s2_m_sel",
15728cc087a1SEmmanuel Vadot						  "top_i2s3_m_sel",
15738cc087a1SEmmanuel Vadot						  "top_i2s4_m_sel",
15748cc087a1SEmmanuel Vadot						  "top_i2s5_m_sel",
15758cc087a1SEmmanuel Vadot						  "top_apll12_div0",
15768cc087a1SEmmanuel Vadot						  "top_apll12_div1",
15778cc087a1SEmmanuel Vadot						  "top_apll12_div2",
15788cc087a1SEmmanuel Vadot						  "top_apll12_div3",
15798cc087a1SEmmanuel Vadot						  "top_apll12_div4",
15808cc087a1SEmmanuel Vadot						  "top_apll12_divb",
15818cc087a1SEmmanuel Vadot						  /*"top_apll12_div5",*/
15828cc087a1SEmmanuel Vadot						  "top_clk26m_clk";
15838cc087a1SEmmanuel Vadot			};
1584c66ec88fSEmmanuel Vadot		};
1585c66ec88fSEmmanuel Vadot
1586c66ec88fSEmmanuel Vadot		mmc0: mmc@11230000 {
1587c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mmc";
1588c66ec88fSEmmanuel Vadot			reg = <0 0x11230000 0 0x1000>,
1589c66ec88fSEmmanuel Vadot			      <0 0x11f50000 0 0x1000>;
1590c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_LOW>;
1591c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_MSDC50_0>,
1592c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC0>,
1593c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC0_SCK>;
1594c66ec88fSEmmanuel Vadot			clock-names = "source", "hclk", "source_cg";
1595c66ec88fSEmmanuel Vadot			status = "disabled";
1596c66ec88fSEmmanuel Vadot		};
1597c66ec88fSEmmanuel Vadot
1598c66ec88fSEmmanuel Vadot		mmc1: mmc@11240000 {
1599c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mmc";
1600c66ec88fSEmmanuel Vadot			reg = <0 0x11240000 0 0x1000>,
1601c66ec88fSEmmanuel Vadot			      <0 0x11e10000 0 0x1000>;
1602c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_LOW>;
1603c66ec88fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MUX_MSDC30_1>,
1604c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC1>,
1605c66ec88fSEmmanuel Vadot				 <&infracfg CLK_INFRA_MSDC1_SCK>;
1606c66ec88fSEmmanuel Vadot			clock-names = "source", "hclk", "source_cg";
1607c66ec88fSEmmanuel Vadot			status = "disabled";
1608c66ec88fSEmmanuel Vadot		};
1609c66ec88fSEmmanuel Vadot
16102eb4d8dcSEmmanuel Vadot		mipi_tx0: dsi-phy@11e50000 {
16115def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-mipi-tx";
16125def4c47SEmmanuel Vadot			reg = <0 0x11e50000 0 0x1000>;
16135def4c47SEmmanuel Vadot			clocks = <&apmixedsys CLK_APMIXED_MIPID0_26M>;
16145def4c47SEmmanuel Vadot			#clock-cells = <0>;
16155def4c47SEmmanuel Vadot			#phy-cells = <0>;
16165def4c47SEmmanuel Vadot			clock-output-names = "mipi_tx0_pll";
16175def4c47SEmmanuel Vadot			nvmem-cells = <&mipi_tx_calibration>;
16185def4c47SEmmanuel Vadot			nvmem-cell-names = "calibration-data";
16195def4c47SEmmanuel Vadot		};
16205def4c47SEmmanuel Vadot
1621c66ec88fSEmmanuel Vadot		efuse: efuse@11f10000 {
1622c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-efuse",
1623c66ec88fSEmmanuel Vadot				     "mediatek,efuse";
1624c66ec88fSEmmanuel Vadot			reg = <0 0x11f10000 0 0x1000>;
16255def4c47SEmmanuel Vadot			#address-cells = <1>;
16265def4c47SEmmanuel Vadot			#size-cells = <1>;
16272eb4d8dcSEmmanuel Vadot			thermal_calibration: calib@180 {
16282eb4d8dcSEmmanuel Vadot				reg = <0x180 0xc>;
16292eb4d8dcSEmmanuel Vadot			};
16302eb4d8dcSEmmanuel Vadot
16315def4c47SEmmanuel Vadot			mipi_tx_calibration: calib@190 {
16325def4c47SEmmanuel Vadot				reg = <0x190 0xc>;
16335def4c47SEmmanuel Vadot			};
1634b97ee269SEmmanuel Vadot
1635b97ee269SEmmanuel Vadot			svs_calibration: calib@580 {
1636b97ee269SEmmanuel Vadot				reg = <0x580 0x64>;
1637b97ee269SEmmanuel Vadot			};
1638c66ec88fSEmmanuel Vadot		};
1639c66ec88fSEmmanuel Vadot
16402eb4d8dcSEmmanuel Vadot		u3phy: t-phy@11f40000 {
1641c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-tphy",
1642c66ec88fSEmmanuel Vadot				     "mediatek,generic-tphy-v2";
1643c66ec88fSEmmanuel Vadot			#address-cells = <1>;
1644c66ec88fSEmmanuel Vadot			#size-cells = <1>;
1645c66ec88fSEmmanuel Vadot			ranges = <0 0 0x11f40000 0x1000>;
1646c66ec88fSEmmanuel Vadot			status = "okay";
1647c66ec88fSEmmanuel Vadot
1648c66ec88fSEmmanuel Vadot			u2port0: usb-phy@0 {
1649c66ec88fSEmmanuel Vadot				reg = <0x0 0x700>;
1650c66ec88fSEmmanuel Vadot				clocks = <&clk26m>;
1651c66ec88fSEmmanuel Vadot				clock-names = "ref";
1652c66ec88fSEmmanuel Vadot				#phy-cells = <1>;
1653c66ec88fSEmmanuel Vadot				mediatek,discth = <15>;
1654c66ec88fSEmmanuel Vadot				status = "okay";
1655c66ec88fSEmmanuel Vadot			};
1656c66ec88fSEmmanuel Vadot
16572eb4d8dcSEmmanuel Vadot			u3port0: usb-phy@700 {
1658c66ec88fSEmmanuel Vadot				reg = <0x0700 0x900>;
1659c66ec88fSEmmanuel Vadot				clocks = <&clk26m>;
1660c66ec88fSEmmanuel Vadot				clock-names = "ref";
1661c66ec88fSEmmanuel Vadot				#phy-cells = <1>;
1662c66ec88fSEmmanuel Vadot				status = "okay";
1663c66ec88fSEmmanuel Vadot			};
1664c66ec88fSEmmanuel Vadot		};
1665c66ec88fSEmmanuel Vadot
1666c66ec88fSEmmanuel Vadot		mfgcfg: syscon@13000000 {
1667c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mfgcfg", "syscon";
1668c66ec88fSEmmanuel Vadot			reg = <0 0x13000000 0 0x1000>;
1669c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1670c66ec88fSEmmanuel Vadot		};
1671c66ec88fSEmmanuel Vadot
16725956d97fSEmmanuel Vadot		gpu: gpu@13040000 {
16735956d97fSEmmanuel Vadot			compatible = "mediatek,mt8183-mali", "arm,mali-bifrost";
16745956d97fSEmmanuel Vadot			reg = <0 0x13040000 0 0x4000>;
16755956d97fSEmmanuel Vadot			interrupts =
16765956d97fSEmmanuel Vadot				<GIC_SPI 280 IRQ_TYPE_LEVEL_LOW>,
16775956d97fSEmmanuel Vadot				<GIC_SPI 279 IRQ_TYPE_LEVEL_LOW>,
16785956d97fSEmmanuel Vadot				<GIC_SPI 278 IRQ_TYPE_LEVEL_LOW>;
16795956d97fSEmmanuel Vadot			interrupt-names = "job", "mmu", "gpu";
16805956d97fSEmmanuel Vadot
16815956d97fSEmmanuel Vadot			clocks = <&topckgen CLK_TOP_MFGPLL_CK>;
16825956d97fSEmmanuel Vadot
16835956d97fSEmmanuel Vadot			power-domains =
16845956d97fSEmmanuel Vadot				<&spm MT8183_POWER_DOMAIN_MFG_CORE0>,
16855956d97fSEmmanuel Vadot				<&spm MT8183_POWER_DOMAIN_MFG_CORE1>,
16865956d97fSEmmanuel Vadot				<&spm MT8183_POWER_DOMAIN_MFG_2D>;
16875956d97fSEmmanuel Vadot			power-domain-names = "core0", "core1", "core2";
16885956d97fSEmmanuel Vadot
16895956d97fSEmmanuel Vadot			operating-points-v2 = <&gpu_opp_table>;
16905956d97fSEmmanuel Vadot		};
16915956d97fSEmmanuel Vadot
1692c66ec88fSEmmanuel Vadot		mmsys: syscon@14000000 {
1693c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-mmsys", "syscon";
1694c66ec88fSEmmanuel Vadot			reg = <0 0x14000000 0 0x1000>;
1695c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
16968cc087a1SEmmanuel Vadot			#reset-cells = <1>;
16972eb4d8dcSEmmanuel Vadot			mboxes = <&gce 0 CMDQ_THR_PRIO_HIGHEST>,
16982eb4d8dcSEmmanuel Vadot				 <&gce 1 CMDQ_THR_PRIO_HIGHEST>;
16992eb4d8dcSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0 0x1000>;
1700c66ec88fSEmmanuel Vadot		};
1701c66ec88fSEmmanuel Vadot
1702*7ef62cebSEmmanuel Vadot		mdp3-rdma0@14001000 {
1703*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-mdp3-rdma";
1704*7ef62cebSEmmanuel Vadot			reg = <0 0x14001000 0 0x1000>;
1705*7ef62cebSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x1000 0x1000>;
1706*7ef62cebSEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MDP_RDMA0_SOF>,
1707*7ef62cebSEmmanuel Vadot					      <CMDQ_EVENT_MDP_RDMA0_EOF>;
1708*7ef62cebSEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1709*7ef62cebSEmmanuel Vadot			clocks = <&mmsys CLK_MM_MDP_RDMA0>,
1710*7ef62cebSEmmanuel Vadot				 <&mmsys CLK_MM_MDP_RSZ1>;
1711*7ef62cebSEmmanuel Vadot			iommus = <&iommu M4U_PORT_MDP_RDMA0>;
1712*7ef62cebSEmmanuel Vadot			mboxes = <&gce 20 CMDQ_THR_PRIO_LOWEST 0>,
1713*7ef62cebSEmmanuel Vadot				 <&gce 21 CMDQ_THR_PRIO_LOWEST 0>;
1714*7ef62cebSEmmanuel Vadot		};
1715*7ef62cebSEmmanuel Vadot
1716*7ef62cebSEmmanuel Vadot		mdp3-rsz0@14003000 {
1717*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-mdp3-rsz";
1718*7ef62cebSEmmanuel Vadot			reg = <0 0x14003000 0 0x1000>;
1719*7ef62cebSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x3000 0x1000>;
1720*7ef62cebSEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MDP_RSZ0_SOF>,
1721*7ef62cebSEmmanuel Vadot					      <CMDQ_EVENT_MDP_RSZ0_EOF>;
1722*7ef62cebSEmmanuel Vadot			clocks = <&mmsys CLK_MM_MDP_RSZ0>;
1723*7ef62cebSEmmanuel Vadot		};
1724*7ef62cebSEmmanuel Vadot
1725*7ef62cebSEmmanuel Vadot		mdp3-rsz1@14004000 {
1726*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-mdp3-rsz";
1727*7ef62cebSEmmanuel Vadot			reg = <0 0x14004000 0 0x1000>;
1728*7ef62cebSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x4000 0x1000>;
1729*7ef62cebSEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MDP_RSZ1_SOF>,
1730*7ef62cebSEmmanuel Vadot					      <CMDQ_EVENT_MDP_RSZ1_EOF>;
1731*7ef62cebSEmmanuel Vadot			clocks = <&mmsys CLK_MM_MDP_RSZ1>;
1732*7ef62cebSEmmanuel Vadot		};
1733*7ef62cebSEmmanuel Vadot
1734*7ef62cebSEmmanuel Vadot		mdp3-wrot0@14005000 {
1735*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-mdp3-wrot";
1736*7ef62cebSEmmanuel Vadot			reg = <0 0x14005000 0 0x1000>;
1737*7ef62cebSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x5000 0x1000>;
1738*7ef62cebSEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MDP_WROT0_SOF>,
1739*7ef62cebSEmmanuel Vadot					      <CMDQ_EVENT_MDP_WROT0_EOF>;
1740*7ef62cebSEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1741*7ef62cebSEmmanuel Vadot			clocks = <&mmsys CLK_MM_MDP_WROT0>;
1742*7ef62cebSEmmanuel Vadot			iommus = <&iommu M4U_PORT_MDP_WROT0>;
1743*7ef62cebSEmmanuel Vadot		};
1744*7ef62cebSEmmanuel Vadot
1745*7ef62cebSEmmanuel Vadot		mdp3-wdma@14006000 {
1746*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-mdp3-wdma";
1747*7ef62cebSEmmanuel Vadot			reg = <0 0x14006000 0 0x1000>;
1748*7ef62cebSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x6000 0x1000>;
1749*7ef62cebSEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MDP_WDMA0_SOF>,
1750*7ef62cebSEmmanuel Vadot					      <CMDQ_EVENT_MDP_WDMA0_EOF>;
1751*7ef62cebSEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1752*7ef62cebSEmmanuel Vadot			clocks = <&mmsys CLK_MM_MDP_WDMA0>;
1753*7ef62cebSEmmanuel Vadot			iommus = <&iommu M4U_PORT_MDP_WDMA0>;
1754*7ef62cebSEmmanuel Vadot		};
1755*7ef62cebSEmmanuel Vadot
17565def4c47SEmmanuel Vadot		ovl0: ovl@14008000 {
17575def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ovl";
17585def4c47SEmmanuel Vadot			reg = <0 0x14008000 0 0x1000>;
17595def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_LOW>;
17605def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
17615def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_OVL0>;
17625def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_OVL0>;
17635def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x8000 0x1000>;
17645def4c47SEmmanuel Vadot		};
17655def4c47SEmmanuel Vadot
17665def4c47SEmmanuel Vadot		ovl_2l0: ovl@14009000 {
17675def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ovl-2l";
17685def4c47SEmmanuel Vadot			reg = <0 0x14009000 0 0x1000>;
17695def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_LOW>;
17705def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
17715def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_OVL0_2L>;
17725def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_2L_OVL0_LARB0>;
17735def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x9000 0x1000>;
17745def4c47SEmmanuel Vadot		};
17755def4c47SEmmanuel Vadot
17765def4c47SEmmanuel Vadot		ovl_2l1: ovl@1400a000 {
17775def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ovl-2l";
17785def4c47SEmmanuel Vadot			reg = <0 0x1400a000 0 0x1000>;
17795def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_LOW>;
17805def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
17815def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_OVL1_2L>;
17825def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_2L_OVL1_LARB0>;
17835def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xa000 0x1000>;
17845def4c47SEmmanuel Vadot		};
17855def4c47SEmmanuel Vadot
17865def4c47SEmmanuel Vadot		rdma0: rdma@1400b000 {
17875def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-rdma";
17885def4c47SEmmanuel Vadot			reg = <0 0x1400b000 0 0x1000>;
17895def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_LOW>;
17905def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
17915def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_RDMA0>;
17925def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_RDMA0>;
17935def4c47SEmmanuel Vadot			mediatek,rdma-fifo-size = <5120>;
17945def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xb000 0x1000>;
17955def4c47SEmmanuel Vadot		};
17965def4c47SEmmanuel Vadot
17975def4c47SEmmanuel Vadot		rdma1: rdma@1400c000 {
17985def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-rdma";
17995def4c47SEmmanuel Vadot			reg = <0 0x1400c000 0 0x1000>;
18005def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_LOW>;
18015def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18025def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_RDMA1>;
18035def4c47SEmmanuel Vadot			iommus = <&iommu M4U_PORT_DISP_RDMA1>;
18045def4c47SEmmanuel Vadot			mediatek,rdma-fifo-size = <2048>;
18055def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xc000 0x1000>;
18065def4c47SEmmanuel Vadot		};
18075def4c47SEmmanuel Vadot
18085def4c47SEmmanuel Vadot		color0: color@1400e000 {
18095def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-color",
18105def4c47SEmmanuel Vadot				     "mediatek,mt8173-disp-color";
18115def4c47SEmmanuel Vadot			reg = <0 0x1400e000 0 0x1000>;
18125def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 231 IRQ_TYPE_LEVEL_LOW>;
18135def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18145def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_COLOR0>;
18155def4c47SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xe000 0x1000>;
18165def4c47SEmmanuel Vadot		};
18175def4c47SEmmanuel Vadot
18185def4c47SEmmanuel Vadot		ccorr0: ccorr@1400f000 {
18195def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-ccorr";
18205def4c47SEmmanuel Vadot			reg = <0 0x1400f000 0 0x1000>;
18215def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_LOW>;
18225def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18235def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_CCORR0>;
18242eb4d8dcSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xf000 0x1000>;
18255def4c47SEmmanuel Vadot		};
18265def4c47SEmmanuel Vadot
18275def4c47SEmmanuel Vadot		aal0: aal@14010000 {
1828d5b0e70fSEmmanuel Vadot			compatible = "mediatek,mt8183-disp-aal";
18295def4c47SEmmanuel Vadot			reg = <0 0x14010000 0 0x1000>;
18305def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_LOW>;
18315def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18325def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_AAL0>;
18332eb4d8dcSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0 0x1000>;
18345def4c47SEmmanuel Vadot		};
18355def4c47SEmmanuel Vadot
18365def4c47SEmmanuel Vadot		gamma0: gamma@14011000 {
18375def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-gamma";
18385def4c47SEmmanuel Vadot			reg = <0 0x14011000 0 0x1000>;
18395def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_LOW>;
18405def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18415def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_GAMMA0>;
18422eb4d8dcSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x1000 0x1000>;
18435def4c47SEmmanuel Vadot		};
18445def4c47SEmmanuel Vadot
18455def4c47SEmmanuel Vadot		dither0: dither@14012000 {
18465def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-dither";
18475def4c47SEmmanuel Vadot			reg = <0 0x14012000 0 0x1000>;
18485def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 235 IRQ_TYPE_LEVEL_LOW>;
18495def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18505def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DISP_DITHER0>;
18512eb4d8dcSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x2000 0x1000>;
18525def4c47SEmmanuel Vadot		};
18535def4c47SEmmanuel Vadot
18545def4c47SEmmanuel Vadot		dsi0: dsi@14014000 {
18555def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-dsi";
18565def4c47SEmmanuel Vadot			reg = <0 0x14014000 0 0x1000>;
18575def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_LOW>;
18585def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18595def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_DSI0_MM>,
18605def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_DSI0_IF>,
18615def4c47SEmmanuel Vadot				 <&mipi_tx0>;
18625def4c47SEmmanuel Vadot			clock-names = "engine", "digital", "hs";
18638cc087a1SEmmanuel Vadot			resets = <&mmsys MT8183_MMSYS_SW0_RST_B_DISP_DSI0>;
18645def4c47SEmmanuel Vadot			phys = <&mipi_tx0>;
18655def4c47SEmmanuel Vadot			phy-names = "dphy";
18665def4c47SEmmanuel Vadot		};
18675def4c47SEmmanuel Vadot
18685def4c47SEmmanuel Vadot		mutex: mutex@14016000 {
18695def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-disp-mutex";
18705def4c47SEmmanuel Vadot			reg = <0 0x14016000 0 0x1000>;
18715def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_LOW>;
18725def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
1873354d7675SEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MUTEX_STREAM_DONE0>,
1874354d7675SEmmanuel Vadot					      <CMDQ_EVENT_MUTEX_STREAM_DONE1>;
1875b97ee269SEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x6000 0x1000>;
18765def4c47SEmmanuel Vadot		};
18775def4c47SEmmanuel Vadot
18785def4c47SEmmanuel Vadot		larb0: larb@14017000 {
18795def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
18805def4c47SEmmanuel Vadot			reg = <0 0x14017000 0 0x1000>;
18815def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
18825def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_SMI_LARB0>,
18835def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_SMI_LARB0>;
18845def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18855def4c47SEmmanuel Vadot			clock-names = "apb", "smi";
18865def4c47SEmmanuel Vadot		};
18875def4c47SEmmanuel Vadot
18885def4c47SEmmanuel Vadot		smi_common: smi@14019000 {
18895956d97fSEmmanuel Vadot			compatible = "mediatek,mt8183-smi-common";
18905def4c47SEmmanuel Vadot			reg = <0 0x14019000 0 0x1000>;
18915def4c47SEmmanuel Vadot			clocks = <&mmsys CLK_MM_SMI_COMMON>,
18925def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_SMI_COMMON>,
18935def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_COMM0>,
18945def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_COMM1>;
18955def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals0", "gals1";
18965956d97fSEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
18975def4c47SEmmanuel Vadot		};
18985def4c47SEmmanuel Vadot
1899*7ef62cebSEmmanuel Vadot		mdp3-ccorr@1401c000 {
1900*7ef62cebSEmmanuel Vadot			compatible = "mediatek,mt8183-mdp3-ccorr";
1901*7ef62cebSEmmanuel Vadot			reg = <0 0x1401c000 0 0x1000>;
1902*7ef62cebSEmmanuel Vadot			mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0xc000 0x1000>;
1903*7ef62cebSEmmanuel Vadot			mediatek,gce-events = <CMDQ_EVENT_MDP_CCORR_SOF>,
1904*7ef62cebSEmmanuel Vadot					      <CMDQ_EVENT_MDP_CCORR_EOF>;
1905*7ef62cebSEmmanuel Vadot			clocks = <&mmsys CLK_MM_MDP_CCORR>;
1906*7ef62cebSEmmanuel Vadot		};
1907*7ef62cebSEmmanuel Vadot
1908c66ec88fSEmmanuel Vadot		imgsys: syscon@15020000 {
1909c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-imgsys", "syscon";
1910c66ec88fSEmmanuel Vadot			reg = <0 0x15020000 0 0x1000>;
1911c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1912c66ec88fSEmmanuel Vadot		};
1913c66ec88fSEmmanuel Vadot
19145def4c47SEmmanuel Vadot		larb5: larb@15021000 {
19155def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
19165def4c47SEmmanuel Vadot			reg = <0 0x15021000 0 0x1000>;
19175def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
19185def4c47SEmmanuel Vadot			clocks = <&imgsys CLK_IMG_LARB5>, <&imgsys CLK_IMG_LARB5>,
19195def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_IMG2MM>;
19205def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
19215def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_ISP>;
19225def4c47SEmmanuel Vadot		};
19235def4c47SEmmanuel Vadot
19245def4c47SEmmanuel Vadot		larb2: larb@1502f000 {
19255def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
19265def4c47SEmmanuel Vadot			reg = <0 0x1502f000 0 0x1000>;
19275def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
19285def4c47SEmmanuel Vadot			clocks = <&imgsys CLK_IMG_LARB2>, <&imgsys CLK_IMG_LARB2>,
19295def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_IPU2MM>;
19305def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
19315def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_ISP>;
19325def4c47SEmmanuel Vadot		};
19335def4c47SEmmanuel Vadot
1934c66ec88fSEmmanuel Vadot		vdecsys: syscon@16000000 {
1935c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-vdecsys", "syscon";
1936c66ec88fSEmmanuel Vadot			reg = <0 0x16000000 0 0x1000>;
1937c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1938c66ec88fSEmmanuel Vadot		};
1939c66ec88fSEmmanuel Vadot
19405def4c47SEmmanuel Vadot		larb1: larb@16010000 {
19415def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
19425def4c47SEmmanuel Vadot			reg = <0 0x16010000 0 0x1000>;
19435def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
19445def4c47SEmmanuel Vadot			clocks = <&vdecsys CLK_VDEC_VDEC>, <&vdecsys CLK_VDEC_LARB1>;
19455def4c47SEmmanuel Vadot			clock-names = "apb", "smi";
19465def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_VDEC>;
19475def4c47SEmmanuel Vadot		};
19485def4c47SEmmanuel Vadot
1949c66ec88fSEmmanuel Vadot		vencsys: syscon@17000000 {
1950c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-vencsys", "syscon";
1951c66ec88fSEmmanuel Vadot			reg = <0 0x17000000 0 0x1000>;
1952c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1953c66ec88fSEmmanuel Vadot		};
1954c66ec88fSEmmanuel Vadot
19555def4c47SEmmanuel Vadot		larb4: larb@17010000 {
19565def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
19575def4c47SEmmanuel Vadot			reg = <0 0x17010000 0 0x1000>;
19585def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
19595def4c47SEmmanuel Vadot			clocks = <&vencsys CLK_VENC_LARB>,
19605def4c47SEmmanuel Vadot				 <&vencsys CLK_VENC_LARB>;
19615def4c47SEmmanuel Vadot			clock-names = "apb", "smi";
19625def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_VENC>;
19635def4c47SEmmanuel Vadot		};
19645def4c47SEmmanuel Vadot
1965c9ccf3a3SEmmanuel Vadot		venc_jpg: venc_jpg@17030000 {
1966c9ccf3a3SEmmanuel Vadot			compatible = "mediatek,mt8183-jpgenc", "mediatek,mtk-jpgenc";
1967c9ccf3a3SEmmanuel Vadot			reg = <0 0x17030000 0 0x1000>;
1968c9ccf3a3SEmmanuel Vadot			interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_LOW>;
1969c9ccf3a3SEmmanuel Vadot			iommus = <&iommu M4U_PORT_JPGENC_RDMA>,
1970c9ccf3a3SEmmanuel Vadot				 <&iommu M4U_PORT_JPGENC_BSDMA>;
1971c9ccf3a3SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_VENC>;
1972c9ccf3a3SEmmanuel Vadot			clocks = <&vencsys CLK_VENC_JPGENC>;
1973c9ccf3a3SEmmanuel Vadot			clock-names = "jpgenc";
1974c9ccf3a3SEmmanuel Vadot		};
1975c9ccf3a3SEmmanuel Vadot
1976c66ec88fSEmmanuel Vadot		ipu_conn: syscon@19000000 {
1977c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_conn", "syscon";
1978c66ec88fSEmmanuel Vadot			reg = <0 0x19000000 0 0x1000>;
1979c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1980c66ec88fSEmmanuel Vadot		};
1981c66ec88fSEmmanuel Vadot
1982c66ec88fSEmmanuel Vadot		ipu_adl: syscon@19010000 {
1983c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_adl", "syscon";
1984c66ec88fSEmmanuel Vadot			reg = <0 0x19010000 0 0x1000>;
1985c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1986c66ec88fSEmmanuel Vadot		};
1987c66ec88fSEmmanuel Vadot
1988c66ec88fSEmmanuel Vadot		ipu_core0: syscon@19180000 {
1989c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_core0", "syscon";
1990c66ec88fSEmmanuel Vadot			reg = <0 0x19180000 0 0x1000>;
1991c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1992c66ec88fSEmmanuel Vadot		};
1993c66ec88fSEmmanuel Vadot
1994c66ec88fSEmmanuel Vadot		ipu_core1: syscon@19280000 {
1995c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-ipu_core1", "syscon";
1996c66ec88fSEmmanuel Vadot			reg = <0 0x19280000 0 0x1000>;
1997c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
1998c66ec88fSEmmanuel Vadot		};
1999c66ec88fSEmmanuel Vadot
2000c66ec88fSEmmanuel Vadot		camsys: syscon@1a000000 {
2001c66ec88fSEmmanuel Vadot			compatible = "mediatek,mt8183-camsys", "syscon";
2002c66ec88fSEmmanuel Vadot			reg = <0 0x1a000000 0 0x1000>;
2003c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
2004c66ec88fSEmmanuel Vadot		};
20055def4c47SEmmanuel Vadot
20065def4c47SEmmanuel Vadot		larb6: larb@1a001000 {
20075def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
20085def4c47SEmmanuel Vadot			reg = <0 0x1a001000 0 0x1000>;
20095def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
20105def4c47SEmmanuel Vadot			clocks = <&camsys CLK_CAM_LARB6>, <&camsys CLK_CAM_LARB6>,
20115def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_CAM2MM>;
20125def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
20135def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_CAM>;
20145def4c47SEmmanuel Vadot		};
20155def4c47SEmmanuel Vadot
20165def4c47SEmmanuel Vadot		larb3: larb@1a002000 {
20175def4c47SEmmanuel Vadot			compatible = "mediatek,mt8183-smi-larb";
20185def4c47SEmmanuel Vadot			reg = <0 0x1a002000 0 0x1000>;
20195def4c47SEmmanuel Vadot			mediatek,smi = <&smi_common>;
20205def4c47SEmmanuel Vadot			clocks = <&camsys CLK_CAM_LARB3>, <&camsys CLK_CAM_LARB3>,
20215def4c47SEmmanuel Vadot				 <&mmsys CLK_MM_GALS_IPU12MM>;
20225def4c47SEmmanuel Vadot			clock-names = "apb", "smi", "gals";
20235def4c47SEmmanuel Vadot			power-domains = <&spm MT8183_POWER_DOMAIN_CAM>;
20245def4c47SEmmanuel Vadot		};
2025c66ec88fSEmmanuel Vadot	};
2026c66ec88fSEmmanuel Vadot};
2027