aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2018-10-02 05:47:21 -0400
committerArnd Bergmann <arnd@arndb.de>2018-10-02 05:53:19 -0400
commite9a4dd999917006274b2479ec898a5385f5bc5a1 (patch)
tree7c7f3d8c9a9e1ba5abce477bfd71dc0569155424
parent3a7c41e59939b1cfb08dcd4cfef51e5633ae0e19 (diff)
parent620cfb31bad4c5be7d9250f1e47a592750fc364b (diff)
Merge tag 'mvebu-dt64-4.20-1' of git://git.infradead.org/linux-mvebu into next/dt
mvebu dt64 for 4.20 (part 1) - Add watchdog node on Armada 37xx - Update PPv2 interrupts name - Add support for the SolidRun Clearfog GT 8K (Aramda 8040 based) - Add thermal-zone nodes for Aramda 7K/8K * tag 'mvebu-dt64-4.20-1' of git://git.infradead.org/linux-mvebu: arm64: dts: marvell: armada-37xx: add nodes to support watchdog arm64: dts: marvell: armada-cp110: describe more PPv2 interrupts arm64: dts: marvell: armada-cp110: change the PPv2 IRQ names arm64: dts: add support for SolidRun Clearfog GT 8K arm64: dts: marvell: add thermal-zone node in cp110 DTSI file arm64: dts: marvell: add macro to make distinction between node names arm64: dts: marvell: add thermal-zone node in ap806 DTSI file arm64: dts: marvell: move AP806/CP110 thermal nodes into a new syscon Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r--arch/arm64/boot/dts/marvell/Makefile1
-rw-r--r--arch/arm64/boot/dts/marvell/armada-37xx.dtsi13
-rw-r--r--arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts434
-rw-r--r--arch/arm64/boot/dts/marvell/armada-ap806.dtsi74
-rw-r--r--arch/arm64/boot/dts/marvell/armada-common.dtsi1
-rw-r--r--arch/arm64/boot/dts/marvell/armada-cp110.dtsi64
6 files changed, 571 insertions, 16 deletions
diff --git a/arch/arm64/boot/dts/marvell/Makefile b/arch/arm64/boot/dts/marvell/Makefile
index ea9d49f2a911..eca8bac6303a 100644
--- a/arch/arm64/boot/dts/marvell/Makefile
+++ b/arch/arm64/boot/dts/marvell/Makefile
@@ -3,6 +3,7 @@
3dtb-$(CONFIG_ARCH_MVEBU) += armada-3720-db.dtb 3dtb-$(CONFIG_ARCH_MVEBU) += armada-3720-db.dtb
4dtb-$(CONFIG_ARCH_MVEBU) += armada-3720-espressobin.dtb 4dtb-$(CONFIG_ARCH_MVEBU) += armada-3720-espressobin.dtb
5dtb-$(CONFIG_ARCH_MVEBU) += armada-7040-db.dtb 5dtb-$(CONFIG_ARCH_MVEBU) += armada-7040-db.dtb
6dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-clearfog-gt-8k.dtb
6dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-db.dtb 7dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-db.dtb
7dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb 8dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb
8dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb 9dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb
diff --git a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
index d9531e242eb4..f5eaec531aa8 100644
--- a/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-37xx.dtsi
@@ -80,6 +80,19 @@
80 /* 32M internal register @ 0xd000_0000 */ 80 /* 32M internal register @ 0xd000_0000 */
81 ranges = <0x0 0x0 0xd0000000 0x2000000>; 81 ranges = <0x0 0x0 0xd0000000 0x2000000>;
82 82
83 wdt: watchdog@8300 {
84 compatible = "marvell,armada-3700-wdt";
85 reg = <0x8300 0x40>;
86 marvell,system-controller = <&cpu_misc>;
87 clocks = <&xtalclk>;
88 };
89
90 cpu_misc: system-controller@d000 {
91 compatible = "marvell,armada-3700-cpu-misc",
92 "syscon";
93 reg = <0xd000 0x1000>;
94 };
95
83 spi0: spi@10600 { 96 spi0: spi@10600 {
84 compatible = "marvell,armada-3700-spi"; 97 compatible = "marvell,armada-3700-spi";
85 #address-cells = <1>; 98 #address-cells = <1>;
diff --git a/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts b/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts
new file mode 100644
index 000000000000..1db44b0ec030
--- /dev/null
+++ b/arch/arm64/boot/dts/marvell/armada-8040-clearfog-gt-8k.dts
@@ -0,0 +1,434 @@
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (C) 2018 SolidRun ltd.
4 * Based on Marvell MACCHIATOBin board
5 *
6 * Device Tree file for SolidRun's ClearFog GT 8K
7 */
8
9#include "armada-8040.dtsi"
10
11#include <dt-bindings/input/input.h>
12#include <dt-bindings/gpio/gpio.h>
13
14/ {
15 model = "SolidRun ClearFog GT 8K";
16 compatible = "solidrun,clearfog-gt-8k", "marvell,armada8040",
17 "marvell,armada-ap806-quad", "marvell,armada-ap806";
18
19 chosen {
20 stdout-path = "serial0:115200n8";
21 };
22
23 memory@00000000 {
24 device_type = "memory";
25 reg = <0x0 0x0 0x0 0x80000000>;
26 };
27
28 aliases {
29 ethernet0 = &cp1_eth1;
30 ethernet1 = &cp0_eth0;
31 ethernet2 = &cp1_eth2;
32 };
33
34 v_3_3: regulator-3-3v {
35 compatible = "regulator-fixed";
36 regulator-name = "v_3_3";
37 regulator-min-microvolt = <3300000>;
38 regulator-max-microvolt = <3300000>;
39 regulator-always-on;
40 status = "okay";
41 };
42
43 v_5v0_usb3_hst_vbus: regulator-usb3-vbus0 {
44 compatible = "regulator-fixed";
45 gpio = <&cp0_gpio2 15 GPIO_ACTIVE_HIGH>;
46 pinctrl-names = "default";
47 pinctrl-0 = <&cp0_xhci_vbus_pins>;
48 regulator-name = "v_5v0_usb3_hst_vbus";
49 regulator-min-microvolt = <5000000>;
50 regulator-max-microvolt = <5000000>;
51 status = "okay";
52 };
53
54 usb3h0_phy: usb3_phy0 {
55 compatible = "usb-nop-xceiv";
56 vcc-supply = <&v_5v0_usb3_hst_vbus>;
57 };
58
59 sfp_cp0_eth0: sfp-cp0-eth0 {
60 compatible = "sff,sfp";
61 i2c-bus = <&cp0_i2c1>;
62 mod-def0-gpio = <&cp0_gpio2 17 GPIO_ACTIVE_LOW>;
63 tx-disable-gpio = <&cp1_gpio1 29 GPIO_ACTIVE_HIGH>;
64 pinctrl-names = "default";
65 pinctrl-0 = <&cp0_sfp_present_pins &cp1_sfp_tx_disable_pins>;
66 };
67
68 leds {
69 compatible = "gpio-leds";
70 pinctrl-0 = <&cp0_led0_pins
71 &cp0_led1_pins>;
72 pinctrl-names = "default";
73 /* No designated function for these LEDs at the moment */
74 led0 {
75 label = "clearfog-gt-8k:green:led0";
76 gpios = <&cp0_gpio2 8 GPIO_ACTIVE_LOW>;
77 default-state = "on";
78 };
79 led1 {
80 label = "clearfog-gt-8k:green:led1";
81 gpios = <&cp0_gpio2 9 GPIO_ACTIVE_LOW>;
82 default-state = "on";
83 };
84 };
85
86 keys {
87 compatible = "gpio-keys";
88 pinctrl-0 = <&cp0_gpio_reset_pins &cp1_wps_button_pins>;
89 pinctrl-names = "default";
90
91 button_0 {
92 /* The rear button */
93 label = "Rear Button";
94 gpios = <&cp0_gpio2 7 GPIO_ACTIVE_LOW>;
95 linux,can-disable;
96 linux,code = <BTN_0>;
97 };
98
99 button_1 {
100 /* The wps button */
101 label = "WPS Button";
102 gpios = <&cp1_gpio1 30 GPIO_ACTIVE_LOW>;
103 linux,can-disable;
104 linux,code = <KEY_WPS_BUTTON>;
105 };
106 };
107};
108
109&uart0 {
110 status = "okay";
111 pinctrl-0 = <&uart0_pins>;
112 pinctrl-names = "default";
113};
114
115&ap_sdhci0 {
116 bus-width = <8>;
117 no-1-8-v;
118 no-sd;
119 no-sdio;
120 non-removable;
121 status = "okay";
122 vqmmc-supply = <&v_3_3>;
123};
124
125&cp0_i2c0 {
126 clock-frequency = <100000>;
127 pinctrl-names = "default";
128 pinctrl-0 = <&cp0_i2c0_pins>;
129 status = "okay";
130};
131
132&cp0_i2c1 {
133 clock-frequency = <100000>;
134 pinctrl-names = "default";
135 pinctrl-0 = <&cp0_i2c1_pins>;
136 status = "okay";
137};
138
139&cp0_pinctrl {
140 /*
141 * MPP Bus:
142 * [0-31] = 0xff: Keep default CP0_shared_pins:
143 * [11] CLKOUT_MPP_11 (out)
144 * [23] LINK_RD_IN_CP2CP (in)
145 * [25] CLKOUT_MPP_25 (out)
146 * [29] AVS_FB_IN_CP2CP (in)
147 * [32, 33, 34] pci0/1/2 reset
148 * [35-38] CP0 I2C1 and I2C0
149 * [39] GPIO reset button
150 * [40,41] LED0 and LED1
151 * [43] 1512 phy reset
152 * [47] USB VBUS EN (active low)
153 * [48] FAN PWM
154 * [49] SFP+ present signal
155 * [50] TPM interrupt
156 * [51] WLAN0 disable
157 * [52] WLAN1 disable
158 * [53] LTE disable
159 * [54] NFC reset
160 * [55] Micro SD card detect
161 * [56-61] Micro SD
162 */
163
164 cp0_pci0_reset_pins: pci0-reset-pins {
165 marvell,pins = "mpp32";
166 marvell,function = "gpio";
167 };
168
169 cp0_pci1_reset_pins: pci1-reset-pins {
170 marvell,pins = "mpp33";
171 marvell,function = "gpio";
172 };
173
174 cp0_pci2_reset_pins: pci2-reset-pins {
175 marvell,pins = "mpp34";
176 marvell,function = "gpio";
177 };
178
179 cp0_i2c1_pins: i2c1-pins {
180 marvell,pins = "mpp35", "mpp36";
181 marvell,function = "i2c1";
182 };
183
184 cp0_i2c0_pins: i2c0-pins {
185 marvell,pins = "mpp37", "mpp38";
186 marvell,function = "i2c0";
187 };
188
189 cp0_gpio_reset_pins: gpio-reset-pins {
190 marvell,pins = "mpp39";
191 marvell,function = "gpio";
192 };
193
194 cp0_led0_pins: led0-pins {
195 marvell,pins = "mpp40";
196 marvell,function = "gpio";
197 };
198
199 cp0_led1_pins: led1-pins {
200 marvell,pins = "mpp41";
201 marvell,function = "gpio";
202 };
203
204 cp0_copper_eth_phy_reset: copper-eth-phy-reset {
205 marvell,pins = "mpp43";
206 marvell,function = "gpio";
207 };
208
209 cp0_xhci_vbus_pins: xhci0-vbus-pins {
210 marvell,pins = "mpp47";
211 marvell,function = "gpio";
212 };
213
214 cp0_fan_pwm_pins: fan-pwm-pins {
215 marvell,pins = "mpp48";
216 marvell,function = "gpio";
217 };
218
219 cp0_sfp_present_pins: sfp-present-pins {
220 marvell,pins = "mpp49";
221 marvell,function = "gpio";
222 };
223
224 cp0_tpm_irq_pins: tpm-irq-pins {
225 marvell,pins = "mpp50";
226 marvell,function = "gpio";
227 };
228
229 cp0_sdhci_pins: sdhci-pins {
230 marvell,pins = "mpp55", "mpp56", "mpp57", "mpp58", "mpp59",
231 "mpp60", "mpp61";
232 marvell,function = "sdio";
233 };
234};
235
236&cp0_gpio2 {
237 sata_reset {
238 gpio-hog;
239 gpios = <1 GPIO_ACTIVE_HIGH>;
240 output-high;
241 };
242};
243
244&cp0_ethernet {
245 status = "okay";
246};
247
248/* SFP */
249&cp0_eth0 {
250 status = "okay";
251 phy-mode = "10gbase-kr";
252 managed = "in-band-status";
253 phys = <&cp0_comphy2 0>;
254 sfp = <&sfp_cp0_eth0>;
255};
256
257&cp0_sdhci0 {
258 broken-cd;
259 bus-width = <4>;
260 pinctrl-names = "default";
261 pinctrl-0 = <&cp0_sdhci_pins>;
262 status = "okay";
263 vqmmc-supply = <&v_3_3>;
264};
265
266&cp1_pinctrl {
267 /*
268 * MPP Bus:
269 * [0-5] TDM
270 * [6] VHV Enable
271 * [7] CP1 SPI0 CSn1 (FXS)
272 * [8] CP1 SPI0 CSn0 (TPM)
273 * [9.11]CP1 SPI0 MOSI/MISO/CLK
274 * [13] CP1 SPI1 MISO (TDM and SPI ROM shared)
275 * [14] CP1 SPI1 CS0n (64Mb SPI ROM)
276 * [15] CP1 SPI1 MOSI (TDM and SPI ROM shared)
277 * [16] CP1 SPI1 CLK (TDM and SPI ROM shared)
278 * [24] Topaz switch reset
279 * [26] Buzzer
280 * [27] CP1 SMI MDIO
281 * [28] CP1 SMI MDC
282 * [29] CP0 10G SFP TX Disable
283 * [30] WPS button
284 * [31] Front panel button
285 */
286
287 cp1_spi1_pins: spi1-pins {
288 marvell,pins = "mpp13", "mpp14", "mpp15", "mpp16";
289 marvell,function = "spi1";
290 };
291
292 cp1_switch_reset_pins: switch-reset-pins {
293 marvell,pins = "mpp24";
294 marvell,function = "gpio";
295 };
296
297 cp1_ge_mdio_pins: ge-mdio-pins {
298 marvell,pins = "mpp27", "mpp28";
299 marvell,function = "ge";
300 };
301
302 cp1_sfp_tx_disable_pins: sfp-tx-disable-pins {
303 marvell,pins = "mpp29";
304 marvell,function = "gpio";
305 };
306
307 cp1_wps_button_pins: wps-button-pins {
308 marvell,pins = "mpp30";
309 marvell,function = "gpio";
310 };
311};
312
313&cp1_sata0 {
314 pinctrl-0 = <&cp0_pci1_reset_pins>;
315 status = "okay";
316};
317
318&cp1_mdio {
319 pinctrl-names = "default";
320 pinctrl-0 = <&cp1_ge_mdio_pins>;
321 status = "okay";
322
323 ge_phy: ethernet-phy@0 {
324 /* LED0 - GB link
325 * LED1 - on: link, blink: activity
326 */
327 marvell,reg-init = <3 16 0 0x1017>;
328 reg = <0>;
329 };
330
331 switch0: switch0@4 {
332 compatible = "marvell,mv88e6085";
333 reg = <4>;
334 pinctrl-names = "default";
335 pinctrl-0 = <&cp1_switch_reset_pins>;
336 reset-gpios = <&cp1_gpio1 24 GPIO_ACTIVE_LOW>;
337
338 ports {
339 #address-cells = <1>;
340 #size-cells = <0>;
341
342 port@1 {
343 reg = <1>;
344 label = "lan2";
345 phy-handle = <&switch0phy0>;
346 };
347
348 port@2 {
349 reg = <2>;
350 label = "lan1";
351 phy-handle = <&switch0phy1>;
352 };
353
354 port@3 {
355 reg = <3>;
356 label = "lan4";
357 phy-handle = <&switch0phy2>;
358 };
359
360 port@4 {
361 reg = <4>;
362 label = "lan3";
363 phy-handle = <&switch0phy3>;
364 };
365
366 port@5 {
367 reg = <5>;
368 label = "cpu";
369 ethernet = <&cp1_eth2>;
370 };
371 };
372
373 mdio {
374 #address-cells = <1>;
375 #size-cells = <0>;
376
377 switch0phy0: switch0phy0@11 {
378 reg = <0x11>;
379 };
380
381 switch0phy1: switch0phy1@12 {
382 reg = <0x12>;
383 };
384
385 switch0phy2: switch0phy2@13 {
386 reg = <0x13>;
387 };
388
389 switch0phy3: switch0phy3@14 {
390 reg = <0x14>;
391 };
392 };
393 };
394};
395
396&cp1_ethernet {
397 status = "okay";
398};
399
400/* 1G copper */
401&cp1_eth1 {
402 status = "okay";
403 phy-mode = "sgmii";
404 phy = <&ge_phy>;
405 phys = <&cp1_comphy3 1>;
406};
407
408/* Switch uplink */
409&cp1_eth2 {
410 status = "okay";
411 phy-mode = "2500base-x";
412 phys = <&cp1_comphy5 2>;
413 fixed-link {
414 speed = <2500>;
415 full-duplex;
416 };
417};
418
419&cp1_spi1 {
420 pinctrl-names = "default";
421 pinctrl-0 = <&cp1_spi1_pins>;
422 status = "okay";
423
424 spi-flash@0 {
425 compatible = "st,w25q32";
426 spi-max-frequency = <50000000>;
427 reg = <0>;
428 };
429};
430
431&cp1_usb3_0 {
432 usb-phy = <&usb3h0_phy>;
433 status = "okay";
434};
diff --git a/arch/arm64/boot/dts/marvell/armada-ap806.dtsi b/arch/arm64/boot/dts/marvell/armada-ap806.dtsi
index 176e38d54872..9a5abad72b66 100644
--- a/arch/arm64/boot/dts/marvell/armada-ap806.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-ap806.dtsi
@@ -6,6 +6,7 @@
6 */ 6 */
7 7
8#include <dt-bindings/interrupt-controller/arm-gic.h> 8#include <dt-bindings/interrupt-controller/arm-gic.h>
9#include <dt-bindings/thermal/thermal.h>
9 10
10/dts-v1/; 11/dts-v1/;
11 12
@@ -247,11 +248,76 @@
247 }; 248 };
248 }; 249 };
249 250
250 ap_thermal: thermal@6f808c { 251 ap_syscon1: system-controller@6f8000 {
251 compatible = "marvell,armada-ap806-thermal"; 252 compatible = "syscon", "simple-mfd";
252 reg = <0x6f808c 0x4>, 253 reg = <0x6f8000 0x1000>;
253 <0x6f8084 0x8>; 254 #address-cells = <1>;
255 #size-cells = <1>;
256
257 ap_thermal: thermal-sensor@80 {
258 compatible = "marvell,armada-ap806-thermal";
259 reg = <0x80 0x10>;
260 #thermal-sensor-cells = <1>;
261 };
254 }; 262 };
255 }; 263 };
256 }; 264 };
265
266 /*
267 * The thermal IP features one internal sensor plus, if applicable, one
268 * remote channel wired to one sensor per CPU.
269 *
270 * The cooling maps are always empty as there are no cooling devices.
271 */
272 thermal-zones {
273 ap_thermal_ic: ap-thermal-ic {
274 polling-delay-passive = <1000>;
275 polling-delay = <1000>;
276
277 thermal-sensors = <&ap_thermal 0>;
278
279 trips { };
280 cooling-maps { };
281 };
282
283 ap_thermal_cpu1: ap-thermal-cpu1 {
284 polling-delay-passive = <1000>;
285 polling-delay = <1000>;
286
287 thermal-sensors = <&ap_thermal 1>;
288
289 trips { };
290 cooling-maps { };
291 };
292
293 ap_thermal_cpu2: ap-thermal-cpu2 {
294 polling-delay-passive = <1000>;
295 polling-delay = <1000>;
296
297 thermal-sensors = <&ap_thermal 2>;
298
299 trips { };
300 cooling-maps { };
301 };
302
303 ap_thermal_cpu3: ap-thermal-cpu3 {
304 polling-delay-passive = <1000>;
305 polling-delay = <1000>;
306
307 thermal-sensors = <&ap_thermal 3>;
308
309 trips { };
310 cooling-maps { };
311 };
312
313 ap_thermal_cpu4: ap-thermal-cpu4 {
314 polling-delay-passive = <1000>;
315 polling-delay = <1000>;
316
317 thermal-sensors = <&ap_thermal 4>;
318
319 trips { };
320 cooling-maps { };
321 };
322 };
257}; 323};
diff --git a/arch/arm64/boot/dts/marvell/armada-common.dtsi b/arch/arm64/boot/dts/marvell/armada-common.dtsi
index d5e8aedec188..b29c6405d214 100644
--- a/arch/arm64/boot/dts/marvell/armada-common.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-common.dtsi
@@ -7,4 +7,5 @@
7#define PASTER(x, y) x ## y 7#define PASTER(x, y) x ## y
8#define EVALUATOR(x, y) PASTER(x, y) 8#define EVALUATOR(x, y) PASTER(x, y)
9#define CP110_LABEL(name) EVALUATOR(CP110_NAME, EVALUATOR(_, name)) 9#define CP110_LABEL(name) EVALUATOR(CP110_NAME, EVALUATOR(_, name))
10#define CP110_NODE_NAME(name) EVALUATOR(CP110_NAME, EVALUATOR(-, name))
10#define ADDRESSIFY(addr) EVALUATOR(0x, addr) 11#define ADDRESSIFY(addr) EVALUATOR(0x, addr)
diff --git a/arch/arm64/boot/dts/marvell/armada-cp110.dtsi b/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
index 840c8454d03e..f3a630efcf3a 100644
--- a/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
+++ b/arch/arm64/boot/dts/marvell/armada-cp110.dtsi
@@ -6,6 +6,7 @@
6 */ 6 */
7 7
8#include <dt-bindings/interrupt-controller/mvebu-icu.h> 8#include <dt-bindings/interrupt-controller/mvebu-icu.h>
9#include <dt-bindings/thermal/thermal.h>
9 10
10#include "armada-common.dtsi" 11#include "armada-common.dtsi"
11 12
@@ -19,6 +20,23 @@
19 * save one indentation level 20 * save one indentation level
20 */ 21 */
21 CP110_NAME: CP110_NAME { }; 22 CP110_NAME: CP110_NAME { };
23
24 /*
25 * CPs only have one sensor in the thermal IC.
26 *
27 * The cooling maps are empty as there are no cooling devices.
28 */
29 thermal-zones {
30 CP110_LABEL(thermal_ic): CP110_NODE_NAME(thermal-ic) {
31 polling-delay-passive = <1000>;
32 polling-delay = <1000>;
33
34 thermal-sensors = <&CP110_LABEL(thermal) 0>;
35
36 trips { };
37 cooling-maps { };
38 };
39 };
22}; 40};
23 41
24&CP110_NAME { 42&CP110_NAME {
@@ -52,9 +70,14 @@
52 <ICU_GRP_NSR 47 IRQ_TYPE_LEVEL_HIGH>, 70 <ICU_GRP_NSR 47 IRQ_TYPE_LEVEL_HIGH>,
53 <ICU_GRP_NSR 51 IRQ_TYPE_LEVEL_HIGH>, 71 <ICU_GRP_NSR 51 IRQ_TYPE_LEVEL_HIGH>,
54 <ICU_GRP_NSR 55 IRQ_TYPE_LEVEL_HIGH>, 72 <ICU_GRP_NSR 55 IRQ_TYPE_LEVEL_HIGH>,
73 <ICU_GRP_NSR 59 IRQ_TYPE_LEVEL_HIGH>,
74 <ICU_GRP_NSR 63 IRQ_TYPE_LEVEL_HIGH>,
75 <ICU_GRP_NSR 67 IRQ_TYPE_LEVEL_HIGH>,
76 <ICU_GRP_NSR 71 IRQ_TYPE_LEVEL_HIGH>,
55 <ICU_GRP_NSR 129 IRQ_TYPE_LEVEL_HIGH>; 77 <ICU_GRP_NSR 129 IRQ_TYPE_LEVEL_HIGH>;
56 interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2", 78 interrupt-names = "hif0", "hif1", "hif2",
57 "tx-cpu3", "rx-shared", "link"; 79 "hif3", "hif4", "hif5", "hif6", "hif7",
80 "hif8", "link";
58 port-id = <0>; 81 port-id = <0>;
59 gop-port-id = <0>; 82 gop-port-id = <0>;
60 status = "disabled"; 83 status = "disabled";
@@ -66,9 +89,14 @@
66 <ICU_GRP_NSR 48 IRQ_TYPE_LEVEL_HIGH>, 89 <ICU_GRP_NSR 48 IRQ_TYPE_LEVEL_HIGH>,
67 <ICU_GRP_NSR 52 IRQ_TYPE_LEVEL_HIGH>, 90 <ICU_GRP_NSR 52 IRQ_TYPE_LEVEL_HIGH>,
68 <ICU_GRP_NSR 56 IRQ_TYPE_LEVEL_HIGH>, 91 <ICU_GRP_NSR 56 IRQ_TYPE_LEVEL_HIGH>,
92 <ICU_GRP_NSR 60 IRQ_TYPE_LEVEL_HIGH>,
93 <ICU_GRP_NSR 64 IRQ_TYPE_LEVEL_HIGH>,
94 <ICU_GRP_NSR 68 IRQ_TYPE_LEVEL_HIGH>,
95 <ICU_GRP_NSR 72 IRQ_TYPE_LEVEL_HIGH>,
69 <ICU_GRP_NSR 128 IRQ_TYPE_LEVEL_HIGH>; 96 <ICU_GRP_NSR 128 IRQ_TYPE_LEVEL_HIGH>;
70 interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2", 97 interrupt-names = "hif0", "hif1", "hif2",
71 "tx-cpu3", "rx-shared", "link"; 98 "hif3", "hif4", "hif5", "hif6", "hif7",
99 "hif8", "link";
72 port-id = <1>; 100 port-id = <1>;
73 gop-port-id = <2>; 101 gop-port-id = <2>;
74 status = "disabled"; 102 status = "disabled";
@@ -80,9 +108,14 @@
80 <ICU_GRP_NSR 49 IRQ_TYPE_LEVEL_HIGH>, 108 <ICU_GRP_NSR 49 IRQ_TYPE_LEVEL_HIGH>,
81 <ICU_GRP_NSR 53 IRQ_TYPE_LEVEL_HIGH>, 109 <ICU_GRP_NSR 53 IRQ_TYPE_LEVEL_HIGH>,
82 <ICU_GRP_NSR 57 IRQ_TYPE_LEVEL_HIGH>, 110 <ICU_GRP_NSR 57 IRQ_TYPE_LEVEL_HIGH>,
111 <ICU_GRP_NSR 61 IRQ_TYPE_LEVEL_HIGH>,
112 <ICU_GRP_NSR 65 IRQ_TYPE_LEVEL_HIGH>,
113 <ICU_GRP_NSR 69 IRQ_TYPE_LEVEL_HIGH>,
114 <ICU_GRP_NSR 73 IRQ_TYPE_LEVEL_HIGH>,
83 <ICU_GRP_NSR 127 IRQ_TYPE_LEVEL_HIGH>; 115 <ICU_GRP_NSR 127 IRQ_TYPE_LEVEL_HIGH>;
84 interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2", 116 interrupt-names = "hif0", "hif1", "hif2",
85 "tx-cpu3", "rx-shared", "link"; 117 "hif3", "hif4", "hif5", "hif6", "hif7",
118 "hif8", "link";
86 port-id = <2>; 119 port-id = <2>;
87 gop-port-id = <3>; 120 gop-port-id = <3>;
88 status = "disabled"; 121 status = "disabled";
@@ -162,12 +195,6 @@
162 interrupts = <ICU_GRP_NSR 77 IRQ_TYPE_LEVEL_HIGH>; 195 interrupts = <ICU_GRP_NSR 77 IRQ_TYPE_LEVEL_HIGH>;
163 }; 196 };
164 197
165 CP110_LABEL(thermal): thermal@400078 {
166 compatible = "marvell,armada-cp110-thermal";
167 reg = <0x400078 0x4>,
168 <0x400070 0x8>;
169 };
170
171 CP110_LABEL(syscon0): system-controller@440000 { 198 CP110_LABEL(syscon0): system-controller@440000 {
172 compatible = "syscon", "simple-mfd"; 199 compatible = "syscon", "simple-mfd";
173 reg = <0x440000 0x2000>; 200 reg = <0x440000 0x2000>;
@@ -208,6 +235,19 @@
208 }; 235 };
209 }; 236 };
210 237
238 CP110_LABEL(syscon1): system-controller@400000 {
239 compatible = "syscon", "simple-mfd";
240 reg = <0x400000 0x1000>;
241 #address-cells = <1>;
242 #size-cells = <1>;
243
244 CP110_LABEL(thermal): thermal-sensor@70 {
245 compatible = "marvell,armada-cp110-thermal";
246 reg = <0x70 0x10>;
247 #thermal-sensor-cells = <1>;
248 };
249 };
250
211 CP110_LABEL(usb3_0): usb3@500000 { 251 CP110_LABEL(usb3_0): usb3@500000 {
212 compatible = "marvell,armada-8k-xhci", 252 compatible = "marvell,armada-8k-xhci",
213 "generic-xhci"; 253 "generic-xhci";