blob: 5359a063970e2e1bd9781b428e46063e6f2cee29 [file] [log] [blame]
developerfd40db22021-04-29 10:08:25 +08001/*
2 * Copyright (c) 2020 MediaTek Inc.
3 * Author: Sam.Shih <sam.shih@mediatek.com>
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 */
14
15#include <dt-bindings/interrupt-controller/irq.h>
16#include <dt-bindings/interrupt-controller/arm-gic.h>
17#include <dt-bindings/phy/phy.h>
18#include <dt-bindings/reset/ti-syscon.h>
developer15adbbf2021-05-24 22:20:07 +080019#include <dt-bindings/clock/mt7986-clk.h>
20
developerfd40db22021-04-29 10:08:25 +080021/ {
22 compatible = "mediatek,mt7986a-rfb";
23 interrupt-parent = <&gic>;
24 #address-cells = <2>;
25 #size-cells = <2>;
26 cpus {
27 #address-cells = <1>;
28 #size-cells = <0>;
29 cpu@0 {
30 device_type = "cpu";
31 compatible = "arm,cortex-a53";
32 enable-method = "psci";
33 reg = <0x0>;
34 };
35
36 cpu@1 {
37 device_type = "cpu";
38 compatible = "arm,cortex-a53";
39 enable-method = "psci";
40 reg = <0x1>;
41 };
42
43 cpu@2 {
44 device_type = "cpu";
45 compatible = "arm,cortex-a53";
46 enable-method = "psci";
47 reg = <0x2>;
48 };
49
50 cpu@3 {
51 device_type = "cpu";
52 enable-method = "psci";
53 compatible = "arm,cortex-a53";
54 reg = <0x3>;
55 };
56 };
57
58 wed: wed@15010000 {
59 compatible = "mediatek,wed";
60 wed_num = <2>;
61 /* add this property for wed get the pci slot number. */
62 pci_slot_map = <0>, <1>;
63 reg = <0 0x15010000 0 0x1000>,
64 <0 0x15011000 0 0x1000>;
65 interrupt-parent = <&gic>;
66 interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>,
67 <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
68 };
69
70 wed2: wed2@15011000 {
71 compatible = "mediatek,wed2";
72 wed_num = <2>;
73 reg = <0 0x15010000 0 0x1000>,
74 <0 0x15011000 0 0x1000>;
75 interrupt-parent = <&gic>;
76 interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>,
77 <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
78 };
79
80 wdma: wdma@15104800 {
81 compatible = "mediatek,wed-wdma";
82 reg = <0 0x15104800 0 0x400>,
83 <0 0x15104c00 0 0x400>;
84 };
85
86 ap2woccif: ap2woccif@151A5000 {
87 compatible = "mediatek,ap2woccif";
88 reg = <0 0x151A5000 0 0x1000>,
89 <0 0x151AD000 0 0x1000>;
90 interrupt-parent = <&gic>;
91 interrupts = <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
92 <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;
93 };
94
95 wocpu0_ilm: wocpu0_ilm@151E0000 {
96 compatible = "mediatek,wocpu0_ilm";
97 reg = <0 0x151E0000 0 0x8000>;
98 };
99
100 wocpu1_ilm: wocpu1_ilm@151F0000 {
101 compatible = "mediatek,wocpu1_ilm";
102 reg = <0 0x151F0000 0 0x8000>;
103 };
104
105 wocpu_dlm: wocpu_dlm@151E8000 {
106 compatible = "mediatek,wocpu_dlm";
107 reg = <0 0x151E8000 0 0x2000>,
108 <0 0x151F8000 0 0x2000>;
109
110 resets = <&ethsysrst 0>;
111 reset-names = "wocpu_rst";
112 };
113
114 cpu_boot: wocpu_boot@15194000 {
115 compatible = "mediatek,wocpu_boot";
116 reg = <0 0x15194000 0 0x1000>;
117 };
118
119 reserved-memory {
120 #address-cells = <2>;
121 #size-cells = <2>;
122 ranges;
123
124 /* 192 KiB reserved for ARM Trusted Firmware (BL31) */
125 secmon_reserved: secmon@43000000 {
126 reg = <0 0x43000000 0 0x30000>;
127 no-map;
128 };
129
130 wmcpu_emi: wmcpu-reserved@4FC00000 {
131 compatible = "mediatek,wmcpu-reserved";
132 no-map;
133 reg = <0 0x4FC00000 0 0x00100000>;
134 };
135
136 wocpu0_emi: wocpu0_emi@4FD00000 {
137 compatible = "mediatek,wocpu0_emi";
138 no-map;
139 reg = <0 0x4FD00000 0 0x40000>;
140 shared = <0>;
141 };
142
143 wocpu1_emi: wocpu1_emi@4FD80000 {
144 compatible = "mediatek,wocpu1_emi";
145 no-map;
146 reg = <0 0x4FD40000 0 0x40000>;
147 shared = <0>;
148 };
149
150 wocpu_data: wocpu_data@4FE00000 {
151 compatible = "mediatek,wocpu_data";
152 no-map;
153 reg = <0 0x4FD80000 0 0x200000>;
154 shared = <1>;
155 };
156 };
157
158 psci {
159 compatible = "arm,psci-0.2";
160 method = "smc";
161 };
162
developer15adbbf2021-05-24 22:20:07 +0800163 clk40m: oscillator@0 {
164 compatible = "fixed-clock";
165 #clock-cells = <0>;
166 clock-frequency = <40000000>;
167 clock-output-names = "clkxtal";
168 };
169
developerfd40db22021-04-29 10:08:25 +0800170 system_clk: dummy_system_clk {
171 compatible = "fixed-clock";
172 clock-frequency = <40000000>;
173 #clock-cells = <0>;
174 };
175
developerfd40db22021-04-29 10:08:25 +0800176 timer {
177 compatible = "arm,armv8-timer";
178 interrupt-parent = <&gic>;
developerf39022a2021-05-06 13:31:52 +0800179 clock-frequency = <13000000>;
developerfd40db22021-04-29 10:08:25 +0800180 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
181 <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
182 <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
183 <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
developerfd40db22021-04-29 10:08:25 +0800184 };
185
developer15adbbf2021-05-24 22:20:07 +0800186 infracfg_ao: infracfg_ao@10001000 {
187 compatible = "mediatek,mt7986-infracfg_ao", "syscon";
developer8b9f2852021-06-03 21:53:08 +0800188 reg = <0 0x10001000 0 0x68>;
developer15adbbf2021-05-24 22:20:07 +0800189 #clock-cells = <1>;
190 };
191
192 infracfg: infracfg@10001040 {
193 compatible = "mediatek,mt7986-infracfg", "syscon";
developer8b9f2852021-06-03 21:53:08 +0800194 reg = <0 0x1000106c 0 0x1000>;
developer15adbbf2021-05-24 22:20:07 +0800195 #clock-cells = <1>;
196 };
197
198 topckgen: topckgen@1001B000 {
199 compatible = "mediatek,mt7986-topckgen", "syscon";
200 reg = <0 0x1001B000 0 0x1000>;
201 #clock-cells = <1>;
202 };
203
204 apmixedsys: apmixedsys@1001E000 {
205 compatible = "mediatek,mt7986-apmixedsys", "syscon";
206 reg = <0 0x1001E000 0 0x1000>;
207 #clock-cells = <1>;
208 };
209
developerfd40db22021-04-29 10:08:25 +0800210 watchdog: watchdog@1001c000 {
211 compatible = "mediatek,mt7622-wdt",
212 "mediatek,mt6589-wdt";
213 reg = <0 0x1001c000 0 0x1000>;
214 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
215 #reset-cells = <1>;
216 };
217
218 gic: interrupt-controller@c000000 {
219 compatible = "arm,gic-v3";
220 #interrupt-cells = <3>;
221 interrupt-parent = <&gic>;
222 interrupt-controller;
223 reg = <0 0x0c000000 0 0x40000>, /* GICD */
224 <0 0x0c080000 0 0x200000>; /* GICR */
225
226 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
227 };
228
developer8b9f2852021-06-03 21:53:08 +0800229 pwm: pwm@10048000 {
230 compatible = "mediatek,mt7986-pwm";
231 reg = <0 0x10048000 0 0x1000>;
232 #clock-cells = <1>;
233 #pwm-cells = <2>;
234 interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
235 clocks = <&infracfg CK_INFRA_PWM>,
236 <&infracfg_ao CK_INFRA_PWM_BSEL>,
237 <&infracfg_ao CK_INFRA_PWM1_CK>,
238 <&infracfg_ao CK_INFRA_PWM2_CK>;
239 assigned-clocks = <&topckgen CK_TOP_PWM_SEL>,
240 <&infracfg_ao CK_INFRA_PWM_BSEL>,
241 <&infracfg_ao CK_INFRA_PWM1_SEL>,
242 <&infracfg_ao CK_INFRA_PWM2_SEL>;
243 assigned-clock-parents = <&topckgen CK_TOP_CB_M_D4>,
244 <&infracfg CK_INFRA_PWM>,
245 <&infracfg CK_INFRA_PWM>,
246 <&infracfg CK_INFRA_PWM>;
247 clock-names = "top", "main", "pwm1", "pwm2";
248 status = "disabled";
249 };
250
developerfd40db22021-04-29 10:08:25 +0800251 uart0: serial@11002000 {
252 compatible = "mediatek,mt7986-uart",
253 "mediatek,mt6577-uart";
254 reg = <0 0x11002000 0 0x400>;
255 interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800256 clocks = <&infracfg_ao CK_INFRA_UART0_CK>;
257 assigned-clocks = <&topckgen CK_TOP_UART_SEL>,
258 <&infracfg_ao CK_INFRA_UART0_SEL>;
259 assigned-clock-parents = <&topckgen CK_TOP_CB_CKSQ_40M>,
260 <&infracfg CK_INFRA_UART>;
developerfd40db22021-04-29 10:08:25 +0800261 status = "disabled";
262 };
263
264 uart1: serial@11003000 {
265 compatible = "mediatek,mt7986-uart",
266 "mediatek,mt6577-uart";
267 reg = <0 0x11003000 0 0x400>;
268 interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800269 clocks = <&infracfg_ao CK_INFRA_UART1_CK>;
270 assigned-clocks = <&infracfg_ao CK_INFRA_UART1_SEL>;
271 assigned-clock-parents = <&infracfg CK_INFRA_CK_F26M>;
developerfd40db22021-04-29 10:08:25 +0800272 status = "disabled";
273 };
274
275 uart2: serial@11004000 {
276 compatible = "mediatek,mt7986-uart",
277 "mediatek,mt6577-uart";
278 reg = <0 0x11004000 0 0x400>;
279 interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800280 clocks = <&infracfg_ao CK_INFRA_UART2_CK>;
281 assigned-clocks = <&infracfg_ao CK_INFRA_UART2_SEL>;
282 assigned-clock-parents = <&infracfg CK_INFRA_CK_F26M>;
developerfd40db22021-04-29 10:08:25 +0800283 status = "disabled";
284 };
285
developer8b9f2852021-06-03 21:53:08 +0800286 i2c0: i2c@11008000 {
287 compatible = "mediatek,mt7986-i2c";
288 reg = <0 0x11008000 0 0x90>,
289 <0 0x10217080 0 0x80>;
290 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
291 clock-div = <16>;
292 clocks = <&infracfg_ao CK_INFRA_I2CO_CK>,
293 <&infracfg_ao CK_INFRA_AP_DMA_CK>;
294 clock-names = "main", "dma";
295 #address-cells = <1>;
296 #size-cells = <0>;
297 status = "disabled";
298 };
299
developerfd40db22021-04-29 10:08:25 +0800300 pcie: pcie@11280000 {
301 compatible = "mediatek,mt7986-pcie";
302 device_type = "pci";
303 reg = <0 0x11280000 0 0x5000>;
304 reg-names = "port0";
305 #address-cells = <3>;
306 #size-cells = <2>;
307 interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
308 bus-range = <0x00 0xff>;
309 ranges = <0x82000000 0 0x20000000
310 0x0 0x20000000 0 0x10000000>;
311
312 pcie0: pcie@0,0 {
313 device_type = "pci";
314 reg = <0x0000 0 0 0 0>;
315 #address-cells = <3>;
316 #size-cells = <2>;
317 ranges;
318 #interrupt-cells = <1>;
319 interrupt-map-mask = <0 0 0 7>;
320 interrupt-map = <0 0 0 1 &pcie_intc0 0>,
321 <0 0 0 2 &pcie_intc0 1>,
322 <0 0 0 3 &pcie_intc0 2>,
323 <0 0 0 4 &pcie_intc0 3>;
324 pcie_intc0: interrupt-controller {
325 interrupt-controller;
326 #address-cells = <0>;
327 #interrupt-cells = <1>;
328 };
329 };
330 };
331
developer3e916422021-05-27 16:40:29 +0800332 crypto: crypto@10320000 {
333 compatible = "inside-secure,safexcel-eip97";
334 reg = <0 0x10320000 0 0x40000>;
335 interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
336 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
337 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
338 <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
339 interrupt-names = "ring0", "ring1", "ring2", "ring3";
340 };
341
developerfd40db22021-04-29 10:08:25 +0800342 pio: pinctrl@1001f000 {
343 compatible = "mediatek,mt7986-pinctrl";
344 reg = <0 0x1001f000 0 0x1000>,
345 <0 0x11c30000 0 0x1000>,
346 <0 0x11c40000 0 0x1000>,
347 <0 0x11e20000 0 0x1000>,
348 <0 0x11e30000 0 0x1000>,
349 <0 0x11f00000 0 0x1000>,
350 <0 0x11f10000 0 0x1000>,
351 <0 0x1000b000 0 0x1000>;
352 reg-names = "gpio_base", "iocfg_rt_base", "iocfg_rb_base",
353 "iocfg_lt_base", "iocfg_lb_base", "iocfg_tr_base",
354 "iocfg_tl_base", "eint";
355 gpio-controller;
356 #gpio-cells = <2>;
357 gpio-ranges = <&pio 0 0 100>;
358 interrupt-controller;
developera7f8fa42021-06-07 16:46:34 +0800359 interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>;
developerfd40db22021-04-29 10:08:25 +0800360 interrupt-parent = <&gic>;
361 #interrupt-cells = <2>;
362 };
363
364 ethsys: syscon@15000000 {
365 #address-cells = <1>;
366 #size-cells = <1>;
developer8b9f2852021-06-03 21:53:08 +0800367 compatible = "mediatek,mt7986-ethsys_ck",
developerfd40db22021-04-29 10:08:25 +0800368 "syscon";
369 reg = <0 0x15000000 0 0x1000>;
370 #clock-cells = <1>;
371 #reset-cells = <1>;
372
373 ethsysrst: reset-controller {
374 compatible = "ti,syscon-reset";
375 #reset-cells = <1>;
376 ti,reset-bits = <0x34 4 0x34 4 0x34 4 (ASSERT_SET | DEASSERT_CLEAR | STATUS_SET)>;
377 };
378 };
379
380 eth: ethernet@15100000 {
381 compatible = "mediatek,mt7986-eth";
382 reg = <0 0x15100000 0 0x80000>;
383 interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
384 <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
385 <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
386 <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800387 clocks = <&ethsys CK_ETH_FE_EN>,
388 <&ethsys CK_ETH_GP2_EN>,
389 <&ethsys CK_ETH_GP1_EN>,
390 <&ethsys CK_ETH_WOCPU1_EN>,
391 <&ethsys CK_ETH_WOCPU0_EN>,
developer77bbf432021-06-28 18:39:08 +0800392 <&sgmiisys0 CK_SGM0_TX_EN>,
393 <&sgmiisys0 CK_SGM0_RX_EN>,
394 <&sgmiisys0 CK_SGM0_CK0_EN>,
395 <&sgmiisys0 CK_SGM0_CDR_CK0_EN>,
396 <&sgmiisys1 CK_SGM1_TX_EN>,
397 <&sgmiisys1 CK_SGM1_RX_EN>,
398 <&sgmiisys1 CK_SGM1_CK1_EN>,
399 <&sgmiisys1 CK_SGM1_CDR_CK1_EN>;
developerfd40db22021-04-29 10:08:25 +0800400 clock-names = "fe", "gp2", "gp1", "wocpu1", "wocpu0",
401 "sgmii_tx250m", "sgmii_rx250m",
402 "sgmii_cdr_ref", "sgmii_cdr_fb",
403 "sgmii2_tx250m", "sgmii2_rx250m",
404 "sgmii2_cdr_ref", "sgmii2_cdr_fb";
developer8b9f2852021-06-03 21:53:08 +0800405 assigned-clocks = <&topckgen CK_TOP_NETSYS_2X_SEL>,
406 <&topckgen CK_TOP_SGM_325M_SEL>;
407 assigned-clock-parents = <&topckgen CK_TOP_CB_NET2_800M>,
408 <&topckgen CK_TOP_CB_SGM_325M>;
developerfd40db22021-04-29 10:08:25 +0800409 mediatek,ethsys = <&ethsys>;
410 mediatek,sgmiisys = <&sgmiisys0>, <&sgmiisys1>;
411 #reset-cells = <1>;
412 #address-cells = <1>;
413 #size-cells = <0>;
414 status = "disabled";
415 };
416
417 hnat: hnat@15000000 {
418 compatible = "mediatek,mtk-hnat_v4";
419 reg = <0 0x15100000 0 0x80000>;
420 resets = <&ethsys 0>;
421 reset-names = "mtketh";
422 status = "disabled";
423 };
424
425 sgmiisys0: syscon@10060000 {
developer15adbbf2021-05-24 22:20:07 +0800426 compatible = "mediatek,mt7986-sgmiisys",
427 "mediatek,mt7986-sgmiisys_0",
428 "syscon";
developerfd40db22021-04-29 10:08:25 +0800429 reg = <0 0x10060000 0 0x1000>;
430 #clock-cells = <1>;
431 };
432
433 sgmiisys1: syscon@10070000 {
developer15adbbf2021-05-24 22:20:07 +0800434 compatible = "mediatek,mt7986-sgmiisys",
435 "mediatek,mt7986-sgmiisys_1",
436 "syscon";
developerfd40db22021-04-29 10:08:25 +0800437 reg = <0 0x10070000 0 0x1000>;
438 #clock-cells = <1>;
439 };
440
441 snand: snfi@11005000 {
442 compatible = "mediatek,mt7986-snand";
443 reg = <0 0x11005000 0 0x1000>, <0 0x11006000 0 0x1000>;
444 reg-names = "nfi", "ecc";
445 interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800446 clocks = <&topckgen CK_TOP_SPINFI_SEL>,
447 <&infracfg_ao CK_INFRA_SPINFI1_CK>,
448 <&topckgen CK_TOP_NFI1X_SEL>;
developerfd40db22021-04-29 10:08:25 +0800449 clock-names = "nfi_clk", "pad_clk", "ecc_clk";
developer8b9f2852021-06-03 21:53:08 +0800450 assigned-clocks = <&topckgen CK_TOP_SPINFI_SEL>,
451 <&topckgen CK_TOP_NFI1X_SEL>;
452 assigned-clock-parents = <&topckgen CK_TOP_CB_CKSQ_40M_D2>,
453 <&topckgen CK_TOP_CB_CKSQ_40M>;
developerfd40db22021-04-29 10:08:25 +0800454 #address-cells = <1>;
455 #size-cells = <0>;
456 status = "disabled";
457 };
458
459 wbsys: wbsys@18000000 {
460 compatible = "mediatek,wbsys";
461 reg = <0 0x18000000 0 0x1000000>;
462 interrupts = <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>,
463 <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>,
464 <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
465 <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
466 chip_id = <0x7986>;
467 };
468
469 wed_pcie: wed_pcie@10003000 {
470 compatible = "mediatek,wed_pcie";
471 reg = <0 0x10003000 0 0x10>;
472 };
473
474 spi0: spi@1100a000 {
475 compatible = "mediatek,ipm-spi";
476 reg = <0 0x1100a000 0 0x100>;
477 interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800478 clocks = <&topckgen CK_TOP_CB_M_D2>,
479 <&infracfg_ao CK_INFRA_SPI0_CK>,
480 <&topckgen CK_TOP_SPI_SEL>;
developerfd40db22021-04-29 10:08:25 +0800481 clock-names = "parent-clk", "sel-clk", "spi-clk";
482 status = "disabled";
483 };
484
485 spi1: spi@1100b000 {
486 compatible = "mediatek,ipm-spi";
487 reg = <0 0x1100b000 0 0x100>;
488 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800489 clocks = <&topckgen CK_TOP_CB_M_D2>,
490 <&infracfg_ao CK_INFRA_SPI1_CK>,
491 <&topckgen CK_TOP_SPIM_MST_SEL>;
developerfd40db22021-04-29 10:08:25 +0800492 clock-names = "parent-clk", "sel-clk", "spi-clk";
493 status = "disabled";
494 };
495
developer637f5552021-05-27 17:45:27 +0800496 mmc0: mmc@11230000 {
497 compatible = "mediatek,mt7986-mmc";
498 reg = <0 0x11230000 0 0x1000>,
499 <0 0x11c20000 0 0x1000>;
500 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
developer8b9f2852021-06-03 21:53:08 +0800501 clocks = <&topckgen CK_TOP_EMMC_416M>,
502 <&topckgen CK_TOP_EMMC_250M>,
503 <&infracfg_ao CK_INFRA_MSDC_CK>;
developer637f5552021-05-27 17:45:27 +0800504 clock-names = "source", "hclk", "source_cg";
developer8b9f2852021-06-03 21:53:08 +0800505 assigned-clocks = <&topckgen CK_TOP_EMMC_416M_SEL>,
506 <&topckgen CK_TOP_EMMC_250M_SEL>;
507 assigned-clock-parents = <&topckgen CK_TOP_CB_CKSQ_40M>,
508 <&topckgen CK_TOP_CB_CKSQ_40M>;
developer637f5552021-05-27 17:45:27 +0800509 status = "disabled";
510 };
511
developeree2df732021-05-21 15:19:42 +0800512 auxadc: adc@1100d000 {
513 compatible = "mediatek,mt7986-auxadc",
514 "mediatek,mt7622-auxadc";
515 reg = <0 0x1100d000 0 0x1000>;
developer8b9f2852021-06-03 21:53:08 +0800516 clocks = <&infracfg_ao CK_INFRA_ADC_26M_CK>;
developeree2df732021-05-21 15:19:42 +0800517 clock-names = "main";
518 #io-channel-cells = <1>;
developer8b9f2852021-06-03 21:53:08 +0800519 status = "disabled";
developeree2df732021-05-21 15:19:42 +0800520 };
521
developerfd40db22021-04-29 10:08:25 +0800522 consys: consys@10000000 {
523 compatible = "mediatek,mt7986-consys";
524 reg = <0 0x10000000 0 0x8600000>;
525 memory-region = <&wmcpu_emi>;
526 };
527
528 xhci: xhci@11200000 {
529 compatible = "mediatek,mt7986-xhci",
530 "mediatek,mtk-xhci";
531 reg = <0 0x11200000 0 0x2e00>,
532 <0 0x11203e00 0 0x0100>;
533 reg-names = "mac", "ippc";
534 interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>;
535 phys = <&u2port0 PHY_TYPE_USB2>,
536 <&u3port0 PHY_TYPE_USB3>,
537 <&u2port1 PHY_TYPE_USB2>;
538 clocks = <&system_clk>,
539 <&system_clk>,
540 <&system_clk>,
541 <&system_clk>,
542 <&system_clk>;
543 clock-names = "sys_ck",
544 "xhci_ck",
545 "ref_ck",
546 "mcu_ck",
547 "dma_ck";
548 #address-cells = <2>;
549 #size-cells = <2>;
550 status = "okay";
551 };
552
553 usbtphy: usb-phy@11e10000 {
554 compatible = "mediatek,mt7986",
555 "mediatek,generic-tphy-v2";
556 #address-cells = <2>;
557 #size-cells = <2>;
558 ranges;
559 status = "okay";
560
561 u2port0: usb-phy@11e10000 {
562 reg = <0 0x11e10000 0 0x700>;
563 clocks = <&system_clk>;
564 clock-names = "ref";
565 #phy-cells = <1>;
566 status = "okay";
567 };
568
569 u3port0: usb-phy@11e10700 {
570 reg = <0 0x11e10700 0 0x900>;
571 clocks = <&system_clk>;
572 clock-names = "ref";
573 #phy-cells = <1>;
574 status = "okay";
575 };
576
577 u2port1: usb-phy@11e11000 {
578 reg = <0 0x11e11000 0 0x700>;
579 clocks = <&system_clk>;
580 clock-names = "ref";
581 #phy-cells = <1>;
582 status = "okay";
583 };
584 };
developer15adbbf2021-05-24 22:20:07 +0800585
586 clkitg: clkitg {
587 compatible = "simple-bus";
588 };
developerfbbf02b2021-06-25 09:30:28 +0800589
590 trng: trng@1020f000 {
591 compatible = "mediatek,mt7986-rng",
592 "mediatek,mt7623-rng";
593 reg = <0 0x1020f000 0 0x100>;
594 clocks = <&infracfg_ao CK_INFRA_TRNG_CK>;
595 clock-names = "rng";
596 };
developer86ee1e12021-06-30 11:18:53 +0800597
598 ice: ice_debug {
599 compatible = "mediatek,mt7986-ice_debug",
600 "mediatek,mt2701-ice_debug";
601 clocks = <&infracfg_ao CK_INFRA_DBG_CK>;
602 clock-names = "ice_dbg";
603 };
developerfd40db22021-04-29 10:08:25 +0800604};
developer15adbbf2021-05-24 22:20:07 +0800605
developer8b9f2852021-06-03 21:53:08 +0800606#include "mt7986-clkitg.dtsi"