aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Wang <sean.wang@mediatek.com>2018-02-17 14:54:43 -0500
committerMatthias Brugger <matthias.bgg@gmail.com>2018-03-11 15:30:19 -0400
commitae457b7679c4175115c58ec90b36f9ecc855731c (patch)
tree4db1d55608ccda1d984d2cc9aa594a8b07ef749c
parent13f36c326cef1aaf373b83f46df95fa42b70f426 (diff)
arm64: dts: mt7622: add SoC and peripheral related device nodes
Add watchdog, rtc, auxadc, cir, efuse, rng, uart[1-4], pwm, i2c[0-2], spi[0-1], btif and thermal related nodes. Signed-off-by: Sean Wang <sean.wang@mediatek.com> Cc: Andrew-CT Chen <andrew-ct.chen@mediatek.com> Cc: Zhiyong Tao <zhiyong.tao@mediatek.com> Cc: Zhi Mao <zhi.mao@mediatek.com> Cc: Jun Gao <jun.gao@mediatek.com> Cc: Leilk Liu <leilk.liu@mediatek.com> Cc: Matthias Brugger <matthias.bgg@gmail.com> Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
-rw-r--r--arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts54
-rw-r--r--arch/arm64/boot/dts/mediatek/mt7622.dtsi264
2 files changed, 318 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
index b3878656475c..ba6a79caca21 100644
--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
@@ -235,6 +235,34 @@
235 }; 235 };
236}; 236};
237 237
238&btif {
239 status = "okay";
240};
241
242&cir {
243 pinctrl-names = "default";
244 pinctrl-0 = <&irrx_pins>;
245 status = "okay";
246};
247
248&i2c1 {
249 pinctrl-names = "default";
250 pinctrl-0 = <&i2c1_pins>;
251 status = "okay";
252};
253
254&i2c2 {
255 pinctrl-names = "default";
256 pinctrl-0 = <&i2c2_pins>;
257 status = "okay";
258};
259
260&pwm {
261 pinctrl-names = "default";
262 pinctrl-0 = <&pwm7_pins>;
263 status = "okay";
264};
265
238&pwrap { 266&pwrap {
239 pinctrl-names = "default"; 267 pinctrl-names = "default";
240 pinctrl-0 = <&pmic_bus_pins>; 268 pinctrl-0 = <&pmic_bus_pins>;
@@ -242,6 +270,32 @@
242 status = "okay"; 270 status = "okay";
243}; 271};
244 272
273&spi0 {
274 pinctrl-names = "default";
275 pinctrl-0 = <&spic0_pins>;
276 status = "okay";
277};
278
279&spi1 {
280 pinctrl-names = "default";
281 pinctrl-0 = <&spic1_pins>;
282 status = "okay";
283};
284
245&uart0 { 285&uart0 {
286 pinctrl-names = "default";
287 pinctrl-0 = <&uart0_pins>;
288 status = "okay";
289};
290
291&uart2 {
292 pinctrl-names = "default";
293 pinctrl-0 = <&uart2_pins>;
294 status = "okay";
295};
296
297&watchdog {
298 pinctrl-names = "default";
299 pinctrl-0 = <&watchdog_pins>;
246 status = "okay"; 300 status = "okay";
247}; 301};
diff --git a/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
index 10ad69c02da8..755b1c57a074 100644
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -11,6 +11,7 @@
11#include <dt-bindings/clock/mt7622-clk.h> 11#include <dt-bindings/clock/mt7622-clk.h>
12#include <dt-bindings/power/mt7622-power.h> 12#include <dt-bindings/power/mt7622-power.h>
13#include <dt-bindings/reset/mt7622-reset.h> 13#include <dt-bindings/reset/mt7622-reset.h>
14#include <dt-bindings/thermal/thermal.h>
14 15
15/ { 16/ {
16 compatible = "mediatek,mt7622"; 17 compatible = "mediatek,mt7622";
@@ -74,6 +75,7 @@
74 <&apmixedsys CLK_APMIXED_MAIN_CORE_EN>; 75 <&apmixedsys CLK_APMIXED_MAIN_CORE_EN>;
75 clock-names = "cpu", "intermediate"; 76 clock-names = "cpu", "intermediate";
76 operating-points-v2 = <&cpu_opp_table>; 77 operating-points-v2 = <&cpu_opp_table>;
78 #cooling-cells = <2>;
77 enable-method = "psci"; 79 enable-method = "psci";
78 clock-frequency = <1300000000>; 80 clock-frequency = <1300000000>;
79 }; 81 };
@@ -121,6 +123,58 @@
121 }; 123 };
122 }; 124 };
123 125
126 thermal-zones {
127 cpu_thermal: cpu-thermal {
128 polling-delay-passive = <1000>;
129 polling-delay = <1000>;
130
131 thermal-sensors = <&thermal 0>;
132
133 trips {
134 cpu_passive: cpu-passive {
135 temperature = <47000>;
136 hysteresis = <2000>;
137 type = "passive";
138 };
139
140 cpu_active: cpu-active {
141 temperature = <67000>;
142 hysteresis = <2000>;
143 type = "active";
144 };
145
146 cpu_hot: cpu-hot {
147 temperature = <87000>;
148 hysteresis = <2000>;
149 type = "hot";
150 };
151
152 cpu-crit {
153 temperature = <107000>;
154 hysteresis = <2000>;
155 type = "critical";
156 };
157 };
158
159 cooling-maps {
160 map0 {
161 trip = <&cpu_passive>;
162 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
163 };
164
165 map1 {
166 trip = <&cpu_active>;
167 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
168 };
169
170 map2 {
171 trip = <&cpu_hot>;
172 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
173 };
174 };
175 };
176 };
177
124 timer { 178 timer {
125 compatible = "arm,armv8-timer"; 179 compatible = "arm,armv8-timer";
126 interrupt-parent = <&gic>; 180 interrupt-parent = <&gic>;
@@ -176,6 +230,16 @@
176 clock-names = "hif_sel"; 230 clock-names = "hif_sel";
177 }; 231 };
178 232
233 cir: cir@10009000 {
234 compatible = "mediatek,mt7622-cir";
235 reg = <0 0x10009000 0 0x1000>;
236 interrupts = <GIC_SPI 175 IRQ_TYPE_LEVEL_LOW>;
237 clocks = <&infracfg CLK_INFRA_IRRX_PD>,
238 <&topckgen CLK_TOP_AXI_SEL>;
239 clock-names = "clk", "bus";
240 status = "disabled";
241 };
242
179 sysirq: interrupt-controller@10200620 { 243 sysirq: interrupt-controller@10200620 {
180 compatible = "mediatek,mt7622-sysirq", 244 compatible = "mediatek,mt7622-sysirq",
181 "mediatek,mt6577-sysirq"; 245 "mediatek,mt6577-sysirq";
@@ -185,6 +249,18 @@
185 reg = <0 0x10200620 0 0x20>; 249 reg = <0 0x10200620 0 0x20>;
186 }; 250 };
187 251
252 efuse: efuse@10206000 {
253 compatible = "mediatek,mt7622-efuse",
254 "mediatek,efuse";
255 reg = <0 0x10206000 0 0x1000>;
256 #address-cells = <1>;
257 #size-cells = <1>;
258
259 thermal_calibration: calib@198 {
260 reg = <0x198 0xc>;
261 };
262 };
263
188 apmixedsys: apmixedsys@10209000 { 264 apmixedsys: apmixedsys@10209000 {
189 compatible = "mediatek,mt7622-apmixedsys", 265 compatible = "mediatek,mt7622-apmixedsys",
190 "syscon"; 266 "syscon";
@@ -199,6 +275,14 @@
199 #clock-cells = <1>; 275 #clock-cells = <1>;
200 }; 276 };
201 277
278 rng: rng@1020f000 {
279 compatible = "mediatek,mt7622-rng",
280 "mediatek,mt7623-rng";
281 reg = <0 0x1020f000 0 0x1000>;
282 clocks = <&infracfg CLK_INFRA_TRNG>;
283 clock-names = "rng";
284 };
285
202 pio: pinctrl@10211000 { 286 pio: pinctrl@10211000 {
203 compatible = "mediatek,mt7622-pinctrl"; 287 compatible = "mediatek,mt7622-pinctrl";
204 reg = <0 0x10211000 0 0x1000>; 288 reg = <0 0x10211000 0 0x1000>;
@@ -206,6 +290,21 @@
206 #gpio-cells = <2>; 290 #gpio-cells = <2>;
207 }; 291 };
208 292
293 watchdog: watchdog@10212000 {
294 compatible = "mediatek,mt7622-wdt",
295 "mediatek,mt6589-wdt";
296 reg = <0 0x10212000 0 0x800>;
297 };
298
299 rtc: rtc@10212800 {
300 compatible = "mediatek,mt7622-rtc",
301 "mediatek,soc-rtc";
302 reg = <0 0x10212800 0 0x200>;
303 interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_LOW>;
304 clocks = <&topckgen CLK_TOP_RTC>;
305 clock-names = "rtc";
306 };
307
209 gic: interrupt-controller@10300000 { 308 gic: interrupt-controller@10300000 {
210 compatible = "arm,gic-400"; 309 compatible = "arm,gic-400";
211 interrupt-controller; 310 interrupt-controller;
@@ -217,6 +316,14 @@
217 <0 0x10360000 0 0x2000>; 316 <0 0x10360000 0 0x2000>;
218 }; 317 };
219 318
319 auxadc: adc@11001000 {
320 compatible = "mediatek,mt7622-auxadc";
321 reg = <0 0x11001000 0 0x1000>;
322 clocks = <&pericfg CLK_PERI_AUXADC_PD>;
323 clock-names = "main";
324 #io-channel-cells = <1>;
325 };
326
220 uart0: serial@11002000 { 327 uart0: serial@11002000 {
221 compatible = "mediatek,mt7622-uart", 328 compatible = "mediatek,mt7622-uart",
222 "mediatek,mt6577-uart"; 329 "mediatek,mt6577-uart";
@@ -228,6 +335,163 @@
228 status = "disabled"; 335 status = "disabled";
229 }; 336 };
230 337
338 uart1: serial@11003000 {
339 compatible = "mediatek,mt7622-uart",
340 "mediatek,mt6577-uart";
341 reg = <0 0x11003000 0 0x400>;
342 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>;
343 clocks = <&topckgen CLK_TOP_UART_SEL>,
344 <&pericfg CLK_PERI_UART1_PD>;
345 clock-names = "baud", "bus";
346 status = "disabled";
347 };
348
349 uart2: serial@11004000 {
350 compatible = "mediatek,mt7622-uart",
351 "mediatek,mt6577-uart";
352 reg = <0 0x11004000 0 0x400>;
353 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>;
354 clocks = <&topckgen CLK_TOP_UART_SEL>,
355 <&pericfg CLK_PERI_UART2_PD>;
356 clock-names = "baud", "bus";
357 status = "disabled";
358 };
359
360 uart3: serial@11005000 {
361 compatible = "mediatek,mt7622-uart",
362 "mediatek,mt6577-uart";
363 reg = <0 0x11005000 0 0x400>;
364 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_LOW>;
365 clocks = <&topckgen CLK_TOP_UART_SEL>,
366 <&pericfg CLK_PERI_UART3_PD>;
367 clock-names = "baud", "bus";
368 status = "disabled";
369 };
370
371 pwm: pwm@11006000 {
372 compatible = "mediatek,mt7622-pwm";
373 reg = <0 0x11006000 0 0x1000>;
374 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_LOW>;
375 clocks = <&topckgen CLK_TOP_PWM_SEL>,
376 <&pericfg CLK_PERI_PWM_PD>,
377 <&pericfg CLK_PERI_PWM1_PD>,
378 <&pericfg CLK_PERI_PWM2_PD>,
379 <&pericfg CLK_PERI_PWM3_PD>,
380 <&pericfg CLK_PERI_PWM4_PD>,
381 <&pericfg CLK_PERI_PWM5_PD>,
382 <&pericfg CLK_PERI_PWM6_PD>;
383 clock-names = "top", "main", "pwm1", "pwm2", "pwm3", "pwm4",
384 "pwm5", "pwm6";
385 status = "disabled";
386 };
387
388 i2c0: i2c@11007000 {
389 compatible = "mediatek,mt7622-i2c";
390 reg = <0 0x11007000 0 0x90>,
391 <0 0x11000100 0 0x80>;
392 interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>;
393 clock-div = <16>;
394 clocks = <&pericfg CLK_PERI_I2C0_PD>,
395 <&pericfg CLK_PERI_AP_DMA_PD>;
396 clock-names = "main", "dma";
397 #address-cells = <1>;
398 #size-cells = <0>;
399 status = "disabled";
400 };
401
402 i2c1: i2c@11008000 {
403 compatible = "mediatek,mt7622-i2c";
404 reg = <0 0x11008000 0 0x90>,
405 <0 0x11000180 0 0x80>;
406 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>;
407 clock-div = <16>;
408 clocks = <&pericfg CLK_PERI_I2C1_PD>,
409 <&pericfg CLK_PERI_AP_DMA_PD>;
410 clock-names = "main", "dma";
411 #address-cells = <1>;
412 #size-cells = <0>;
413 status = "disabled";
414 };
415
416 i2c2: i2c@11009000 {
417 compatible = "mediatek,mt7622-i2c";
418 reg = <0 0x11009000 0 0x90>,
419 <0 0x11000200 0 0x80>;
420 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_LOW>;
421 clock-div = <16>;
422 clocks = <&pericfg CLK_PERI_I2C2_PD>,
423 <&pericfg CLK_PERI_AP_DMA_PD>;
424 clock-names = "main", "dma";
425 #address-cells = <1>;
426 #size-cells = <0>;
427 status = "disabled";
428 };
429
430 spi0: spi@1100a000 {
431 compatible = "mediatek,mt7622-spi";
432 reg = <0 0x1100a000 0 0x100>;
433 interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_LOW>;
434 clocks = <&topckgen CLK_TOP_SYSPLL3_D2>,
435 <&topckgen CLK_TOP_SPI0_SEL>,
436 <&pericfg CLK_PERI_SPI0_PD>;
437 clock-names = "parent-clk", "sel-clk", "spi-clk";
438 #address-cells = <1>;
439 #size-cells = <0>;
440 status = "disabled";
441 };
442
443 thermal: thermal@1100b000 {
444 #thermal-sensor-cells = <1>;
445 compatible = "mediatek,mt7622-thermal";
446 reg = <0 0x1100b000 0 0x1000>;
447 interrupts = <0 78 IRQ_TYPE_LEVEL_LOW>;
448 clocks = <&pericfg CLK_PERI_THERM_PD>,
449 <&pericfg CLK_PERI_AUXADC_PD>;
450 clock-names = "therm", "auxadc";
451 resets = <&pericfg MT7622_PERI_THERM_SW_RST>;
452 reset-names = "therm";
453 mediatek,auxadc = <&auxadc>;
454 mediatek,apmixedsys = <&apmixedsys>;
455 nvmem-cells = <&thermal_calibration>;
456 nvmem-cell-names = "calibration-data";
457 };
458
459 btif: serial@1100c000 {
460 compatible = "mediatek,mt7622-btif",
461 "mediatek,mtk-btif";
462 reg = <0 0x1100c000 0 0x1000>;
463 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_LOW>;
464 clocks = <&pericfg CLK_PERI_BTIF_PD>;
465 clock-names = "main";
466 reg-shift = <2>;
467 reg-io-width = <4>;
468 status = "disabled";
469 };
470
471 spi1: spi@11016000 {
472 compatible = "mediatek,mt7622-spi";
473 reg = <0 0x11016000 0 0x100>;
474 interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_LOW>;
475 clocks = <&topckgen CLK_TOP_SYSPLL3_D2>,
476 <&topckgen CLK_TOP_SPI1_SEL>,
477 <&pericfg CLK_PERI_SPI1_PD>;
478 clock-names = "parent-clk", "sel-clk", "spi-clk";
479 #address-cells = <1>;
480 #size-cells = <0>;
481 status = "disabled";
482 };
483
484 uart4: serial@11019000 {
485 compatible = "mediatek,mt7622-uart",
486 "mediatek,mt6577-uart";
487 reg = <0 0x11019000 0 0x400>;
488 interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_LOW>;
489 clocks = <&topckgen CLK_TOP_UART_SEL>,
490 <&pericfg CLK_PERI_UART4_PD>;
491 clock-names = "baud", "bus";
492 status = "disabled";
493 };
494
231 ssusbsys: ssusbsys@1a000000 { 495 ssusbsys: ssusbsys@1a000000 {
232 compatible = "mediatek,mt7622-ssusbsys", 496 compatible = "mediatek,mt7622-ssusbsys",
233 "syscon"; 497 "syscon";