blob: 06b4c93c587650e2b001a875c2a647e9763b7774 [file] [log] [blame]
Tim Harvey0f5717f2022-04-13 11:31:09 -07001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
Marcel Ziswiler97bd6532022-07-21 15:44:32 +02003 * Copyright 2021 Gateworks Corporation
Tim Harvey0f5717f2022-04-13 11:31:09 -07004 */
5
6/dts-v1/;
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/input/linux-event-codes.h>
10#include <dt-bindings/leds/common.h>
Marcel Ziswilercdfde792022-11-07 22:22:39 +010011#include <dt-bindings/phy/phy-imx8-pcie.h>
Tim Harvey0f5717f2022-04-13 11:31:09 -070012
13#include "imx8mp.dtsi"
14
15/ {
16 model = "Gateworks Venice GW74xx i.MX8MP board";
17 compatible = "gateworks,imx8mp-gw74xx", "fsl,imx8mp";
18
19 aliases {
20 ethernet0 = &eqos;
21 ethernet1 = &fec;
22 ethernet2 = &lan1;
23 ethernet3 = &lan2;
24 ethernet4 = &lan3;
25 ethernet5 = &lan4;
26 ethernet6 = &lan5;
27 };
28
29 chosen {
30 stdout-path = &uart2;
31 };
32
33 memory@40000000 {
34 device_type = "memory";
35 reg = <0x0 0x40000000 0 0x80000000>;
36 };
37
38 gpio-keys {
39 compatible = "gpio-keys";
40
41 key-0 {
42 label = "user_pb";
43 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
44 linux,code = <BTN_0>;
45 };
46
47 key-1 {
48 label = "user_pb1x";
49 linux,code = <BTN_1>;
50 interrupt-parent = <&gsc>;
51 interrupts = <0>;
52 };
53
54 key-2 {
55 label = "key_erased";
56 linux,code = <BTN_2>;
57 interrupt-parent = <&gsc>;
58 interrupts = <1>;
59 };
60
61 key-3 {
62 label = "eeprom_wp";
63 linux,code = <BTN_3>;
64 interrupt-parent = <&gsc>;
65 interrupts = <2>;
66 };
67
68 key-4 {
69 label = "tamper";
70 linux,code = <BTN_4>;
71 interrupt-parent = <&gsc>;
72 interrupts = <5>;
73 };
74
75 key-5 {
76 label = "switch_hold";
77 linux,code = <BTN_5>;
78 interrupt-parent = <&gsc>;
79 interrupts = <7>;
80 };
81 };
82
83 led-controller {
84 compatible = "gpio-leds";
85 pinctrl-names = "default";
86 pinctrl-0 = <&pinctrl_gpio_leds>;
87
88 led-0 {
89 function = LED_FUNCTION_HEARTBEAT;
90 color = <LED_COLOR_ID_GREEN>;
91 gpios = <&gpio2 15 GPIO_ACTIVE_HIGH>;
92 default-state = "on";
93 linux,default-trigger = "heartbeat";
94 };
95
96 led-1 {
97 function = LED_FUNCTION_STATUS;
98 color = <LED_COLOR_ID_RED>;
99 gpios = <&gpio2 16 GPIO_ACTIVE_HIGH>;
100 default-state = "off";
101 };
102 };
103
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100104 pcie0_refclk: pcie0-refclk {
105 compatible = "fixed-clock";
106 #clock-cells = <0>;
107 clock-frequency = <100000000>;
108 };
109
Tim Harvey0f5717f2022-04-13 11:31:09 -0700110 pps {
111 compatible = "pps-gpio";
112 pinctrl-names = "default";
113 pinctrl-0 = <&pinctrl_pps>;
114 gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
115 };
116
117 reg_usb2_vbus: regulator-usb2 {
118 pinctrl-names = "default";
119 pinctrl-0 = <&pinctrl_reg_usb2>;
120 compatible = "regulator-fixed";
121 regulator-name = "usb_usb2_vbus";
122 gpio = <&gpio1 6 GPIO_ACTIVE_HIGH>;
123 enable-active-high;
124 regulator-min-microvolt = <5000000>;
125 regulator-max-microvolt = <5000000>;
126 };
127
128 reg_can2_stby: regulator-can2-stby {
129 compatible = "regulator-fixed";
130 pinctrl-names = "default";
131 pinctrl-0 = <&pinctrl_reg_can>;
132 regulator-name = "can2_stby";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100133 gpio = <&gpio3 19 GPIO_ACTIVE_LOW>;
Tim Harvey0f5717f2022-04-13 11:31:09 -0700134 regulator-min-microvolt = <3300000>;
135 regulator-max-microvolt = <3300000>;
136 };
137
138 reg_wifi_en: regulator-wifi-en {
139 pinctrl-names = "default";
140 pinctrl-0 = <&pinctrl_reg_wifi>;
141 compatible = "regulator-fixed";
142 regulator-name = "wl";
143 gpio = <&gpio3 9 GPIO_ACTIVE_HIGH>;
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100144 startup-delay-us = <70000>;
Tim Harvey0f5717f2022-04-13 11:31:09 -0700145 enable-active-high;
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100146 regulator-min-microvolt = <3300000>;
147 regulator-max-microvolt = <3300000>;
Tim Harvey0f5717f2022-04-13 11:31:09 -0700148 };
149};
150
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100151&A53_0 {
152 cpu-supply = <&reg_arm>;
153};
154
155&A53_1 {
156 cpu-supply = <&reg_arm>;
157};
158
159&A53_2 {
160 cpu-supply = <&reg_arm>;
161};
162
163&A53_3 {
164 cpu-supply = <&reg_arm>;
165};
166
Tim Harvey0f5717f2022-04-13 11:31:09 -0700167/* off-board header */
168&ecspi2 {
169 pinctrl-names = "default";
170 pinctrl-0 = <&pinctrl_spi2>;
171 cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>;
172 status = "okay";
173};
174
175&eqos {
176 pinctrl-names = "default";
177 pinctrl-0 = <&pinctrl_eqos>;
178 phy-mode = "rgmii-id";
179 phy-handle = <&ethphy0>;
180 status = "okay";
181
182 mdio {
183 compatible = "snps,dwmac-mdio";
184 #address-cells = <1>;
185 #size-cells = <0>;
186
187 ethphy0: ethernet-phy@0 {
188 compatible = "ethernet-phy-ieee802.3-c22";
189 reg = <0x0>;
190 };
191 };
192};
193
194&fec {
195 pinctrl-names = "default";
196 pinctrl-0 = <&pinctrl_fec>;
197 phy-mode = "rgmii-id";
198 local-mac-address = [00 00 00 00 00 00];
199 status = "okay";
200
201 fixed-link {
202 speed = <1000>;
203 full-duplex;
204 };
205};
206
207&flexcan2 {
208 pinctrl-names = "default";
209 pinctrl-0 = <&pinctrl_flexcan2>;
210 xceiver-supply = <&reg_can2_stby>;
211 status = "okay";
212};
213
214&gpio1 {
215 gpio-line-names =
216 "", "", "", "", "", "", "", "",
217 "", "", "dio0", "", "dio1", "", "", "",
218 "", "", "", "", "", "", "", "",
219 "", "", "", "", "", "", "", "";
220};
221
222&gpio2 {
223 gpio-line-names =
224 "", "", "", "", "", "", "", "",
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100225 "", "", "", "", "", "", "pcie3_wdis#", "",
226 "", "", "pcie2_wdis#", "", "", "", "", "",
Tim Harvey0f5717f2022-04-13 11:31:09 -0700227 "", "", "", "", "", "", "", "";
228};
229
230&gpio3 {
231 gpio-line-names =
232 "m2_gdis#", "", "", "", "", "", "", "m2_rst#",
233 "", "", "", "", "", "", "", "",
234 "m2_off#", "", "", "", "", "", "", "",
235 "", "", "", "", "", "", "", "";
236};
237
238&gpio4 {
239 gpio-line-names =
240 "", "", "", "", "", "", "", "",
241 "", "", "", "", "", "", "", "",
242 "", "", "", "", "m2_wdis#", "", "", "",
243 "", "", "", "", "", "", "", "uart_rs485";
244};
245
246&gpio5 {
247 gpio-line-names =
248 "uart_half", "uart_term", "", "", "", "", "", "",
249 "", "", "", "", "", "", "", "",
250 "", "", "", "", "", "", "", "",
251 "", "", "", "", "", "", "", "";
252};
253
254&i2c1 {
255 clock-frequency = <100000>;
256 pinctrl-names = "default";
257 pinctrl-0 = <&pinctrl_i2c1>;
258 status = "okay";
259
260 gsc: gsc@20 {
261 compatible = "gw,gsc";
262 reg = <0x20>;
263 pinctrl-0 = <&pinctrl_gsc>;
264 interrupt-parent = <&gpio4>;
265 interrupts = <20 IRQ_TYPE_EDGE_FALLING>;
266 interrupt-controller;
267 #interrupt-cells = <1>;
268
269 adc {
270 compatible = "gw,gsc-adc";
271 #address-cells = <1>;
272 #size-cells = <0>;
273
274 channel@6 {
275 gw,mode = <0>;
276 reg = <0x06>;
277 label = "temp";
278 };
279
280 channel@8 {
281 gw,mode = <1>;
282 reg = <0x08>;
283 label = "vdd_bat";
284 };
285
286 channel@82 {
287 gw,mode = <2>;
288 reg = <0x82>;
289 label = "vdd_adc1";
290 gw,voltage-divider-ohms = <10000 10000>;
291 };
292
293 channel@84 {
294 gw,mode = <2>;
295 reg = <0x84>;
296 label = "vdd_adc2";
297 gw,voltage-divider-ohms = <10000 10000>;
298 };
299
300 channel@86 {
301 gw,mode = <2>;
302 reg = <0x86>;
303 label = "vdd_vin";
304 gw,voltage-divider-ohms = <22100 1000>;
305 };
306
307 channel@88 {
308 gw,mode = <2>;
309 reg = <0x88>;
310 label = "vdd_3p3";
311 gw,voltage-divider-ohms = <10000 10000>;
312 };
313
314 channel@8c {
315 gw,mode = <2>;
316 reg = <0x8c>;
317 label = "vdd_2p5";
318 gw,voltage-divider-ohms = <10000 10000>;
319 };
320
321 channel@90 {
322 gw,mode = <2>;
323 reg = <0x90>;
324 label = "vdd_soc";
325 };
326
327 channel@92 {
328 gw,mode = <2>;
329 reg = <0x92>;
330 label = "vdd_arm";
331 };
332
333 channel@98 {
334 gw,mode = <2>;
335 reg = <0x98>;
336 label = "vdd_1p8";
337 };
338
339 channel@9a {
340 gw,mode = <2>;
341 reg = <0x9a>;
342 label = "vdd_1p2";
343 };
344
345 channel@9c {
346 gw,mode = <2>;
347 reg = <0x9c>;
348 label = "vdd_dram";
349 };
350
351 channel@a2 {
352 gw,mode = <2>;
353 reg = <0xa2>;
354 label = "vdd_gsc";
355 gw,voltage-divider-ohms = <10000 10000>;
356 };
357 };
358 };
359
360 gpio: gpio@23 {
361 compatible = "nxp,pca9555";
362 reg = <0x23>;
363 gpio-controller;
364 #gpio-cells = <2>;
365 interrupt-parent = <&gsc>;
366 interrupts = <4>;
367 };
368
369 pmic@25 {
370 compatible = "nxp,pca9450c";
371 reg = <0x25>;
372 pinctrl-names = "default";
373 pinctrl-0 = <&pinctrl_pmic>;
374 interrupt-parent = <&gpio3>;
375 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
376
377 regulators {
378 BUCK1 {
379 regulator-name = "BUCK1";
380 regulator-min-microvolt = <720000>;
381 regulator-max-microvolt = <1000000>;
382 regulator-boot-on;
383 regulator-always-on;
384 regulator-ramp-delay = <3125>;
385 };
386
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100387 reg_arm: BUCK2 {
Tim Harvey0f5717f2022-04-13 11:31:09 -0700388 regulator-name = "BUCK2";
389 regulator-min-microvolt = <720000>;
390 regulator-max-microvolt = <1025000>;
391 regulator-boot-on;
392 regulator-always-on;
393 regulator-ramp-delay = <3125>;
394 nxp,dvs-run-voltage = <950000>;
395 nxp,dvs-standby-voltage = <850000>;
396 };
397
398 BUCK4 {
399 regulator-name = "BUCK4";
400 regulator-min-microvolt = <3000000>;
401 regulator-max-microvolt = <3600000>;
402 regulator-boot-on;
403 regulator-always-on;
404 };
405
406 BUCK5 {
407 regulator-name = "BUCK5";
408 regulator-min-microvolt = <1650000>;
409 regulator-max-microvolt = <1950000>;
410 regulator-boot-on;
411 regulator-always-on;
412 };
413
414 BUCK6 {
415 regulator-name = "BUCK6";
416 regulator-min-microvolt = <1045000>;
417 regulator-max-microvolt = <1155000>;
418 regulator-boot-on;
419 regulator-always-on;
420 };
421
422 LDO1 {
423 regulator-name = "LDO1";
424 regulator-min-microvolt = <1650000>;
425 regulator-max-microvolt = <1950000>;
426 regulator-boot-on;
427 regulator-always-on;
428 };
429
430 LDO3 {
431 regulator-name = "LDO3";
432 regulator-min-microvolt = <1710000>;
433 regulator-max-microvolt = <1890000>;
434 regulator-boot-on;
435 regulator-always-on;
436 };
437
438 LDO5 {
439 regulator-name = "LDO5";
440 regulator-min-microvolt = <1800000>;
441 regulator-max-microvolt = <3300000>;
442 regulator-boot-on;
443 regulator-always-on;
444 };
445 };
446 };
447
448 eeprom@50 {
449 compatible = "atmel,24c02";
450 reg = <0x50>;
451 pagesize = <16>;
452 };
453
454 eeprom@51 {
455 compatible = "atmel,24c02";
456 reg = <0x51>;
457 pagesize = <16>;
458 };
459
460 eeprom@52 {
461 compatible = "atmel,24c02";
462 reg = <0x52>;
463 pagesize = <16>;
464 };
465
466 eeprom@53 {
467 compatible = "atmel,24c02";
468 reg = <0x53>;
469 pagesize = <16>;
470 };
471
472 rtc@68 {
473 compatible = "dallas,ds1672";
474 reg = <0x68>;
475 };
476};
477
478&i2c2 {
479 clock-frequency = <400000>;
480 pinctrl-names = "default";
481 pinctrl-0 = <&pinctrl_i2c2>;
482 status = "okay";
483
484 accelerometer@19 {
485 compatible = "st,lis2de12";
486 pinctrl-names = "default";
487 pinctrl-0 = <&pinctrl_accel>;
488 reg = <0x19>;
489 st,drdy-int-pin = <1>;
490 interrupt-parent = <&gpio1>;
491 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
492 interrupt-names = "INT1";
493 };
494
495 switch: switch@5f {
496 compatible = "microchip,ksz9897";
497 reg = <0x5f>;
498 pinctrl-0 = <&pinctrl_ksz>;
499 interrupt-parent = <&gpio4>;
500 interrupts = <29 IRQ_TYPE_EDGE_FALLING>;
501
502 ports {
503 #address-cells = <1>;
504 #size-cells = <0>;
505
506 lan1: port@0 {
507 reg = <0>;
508 label = "lan1";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100509 phy-mode = "internal";
Tim Harvey0f5717f2022-04-13 11:31:09 -0700510 local-mac-address = [00 00 00 00 00 00];
Tim Harvey0f5717f2022-04-13 11:31:09 -0700511 };
512
513 lan2: port@1 {
514 reg = <1>;
515 label = "lan2";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100516 phy-mode = "internal";
Tim Harvey0f5717f2022-04-13 11:31:09 -0700517 local-mac-address = [00 00 00 00 00 00];
Tim Harvey0f5717f2022-04-13 11:31:09 -0700518 };
519
520 lan3: port@2 {
521 reg = <2>;
522 label = "lan3";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100523 phy-mode = "internal";
Tim Harvey0f5717f2022-04-13 11:31:09 -0700524 local-mac-address = [00 00 00 00 00 00];
Tim Harvey0f5717f2022-04-13 11:31:09 -0700525 };
526
527 lan4: port@3 {
528 reg = <3>;
529 label = "lan4";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100530 phy-mode = "internal";
Tim Harvey0f5717f2022-04-13 11:31:09 -0700531 local-mac-address = [00 00 00 00 00 00];
Tim Harvey0f5717f2022-04-13 11:31:09 -0700532 };
533
534 lan5: port@4 {
535 reg = <4>;
536 label = "lan5";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100537 phy-mode = "internal";
Tim Harvey0f5717f2022-04-13 11:31:09 -0700538 local-mac-address = [00 00 00 00 00 00];
Tim Harvey0f5717f2022-04-13 11:31:09 -0700539 };
540
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100541 port@5 {
542 reg = <5>;
Tim Harvey0f5717f2022-04-13 11:31:09 -0700543 label = "cpu";
544 ethernet = <&fec>;
545 phy-mode = "rgmii-id";
546
547 fixed-link {
548 speed = <1000>;
549 full-duplex;
550 };
551 };
552 };
Tim Harvey0f5717f2022-04-13 11:31:09 -0700553 };
554};
555
556/* off-board header */
557&i2c3 {
558 clock-frequency = <400000>;
559 pinctrl-names = "default";
560 pinctrl-0 = <&pinctrl_i2c3>;
561 status = "okay";
562};
563
564/* off-board header */
565&i2c4 {
566 clock-frequency = <400000>;
567 pinctrl-names = "default";
568 pinctrl-0 = <&pinctrl_i2c4>;
569 status = "okay";
570};
571
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100572&pcie_phy {
573 fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>;
574 fsl,clkreq-unsupported;
575 clocks = <&pcie0_refclk>;
576 clock-names = "ref";
577 status = "okay";
578};
579
580&pcie {
581 pinctrl-names = "default";
582 pinctrl-0 = <&pinctrl_pcie0>;
583 reset-gpio = <&gpio2 17 GPIO_ACTIVE_LOW>;
584 clocks = <&clk IMX8MP_CLK_HSIO_ROOT>,
585 <&clk IMX8MP_CLK_PCIE_ROOT>,
586 <&clk IMX8MP_CLK_HSIO_AXI>;
587 clock-names = "pcie", "pcie_aux", "pcie_bus";
588 assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>;
589 assigned-clock-rates = <10000000>;
590 assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>;
591 status = "okay";
592};
593
Tim Harvey0f5717f2022-04-13 11:31:09 -0700594/* GPS / off-board header */
595&uart1 {
596 pinctrl-names = "default";
597 pinctrl-0 = <&pinctrl_uart1>;
598 status = "okay";
599};
600
601/* RS232 console */
602&uart2 {
603 pinctrl-names = "default";
604 pinctrl-0 = <&pinctrl_uart2>;
605 status = "okay";
606};
607
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100608/* bluetooth HCI */
609&uart3 {
610 pinctrl-names = "default";
611 pinctrl-0 = <&pinctrl_uart3>, <&pinctrl_uart3_gpio>;
612 cts-gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
613 rts-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>;
614 uart-has-rtscts;
615 status = "okay";
616
617 bluetooth {
618 compatible = "brcm,bcm4330-bt";
619 shutdown-gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>;
620 };
621};
622
Tim Harvey0f5717f2022-04-13 11:31:09 -0700623&uart4 {
624 pinctrl-names = "default";
625 pinctrl-0 = <&pinctrl_uart4>;
626 status = "okay";
627};
628
629/* USB1 - Type C front panel */
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100630&usb3_0 {
Tim Harvey0f5717f2022-04-13 11:31:09 -0700631 pinctrl-names = "default";
632 pinctrl-0 = <&pinctrl_usb1>;
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100633 fsl,over-current-active-low;
Tim Harvey0f5717f2022-04-13 11:31:09 -0700634 status = "okay";
635};
636
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100637&usb3_phy0 {
Tim Harvey0f5717f2022-04-13 11:31:09 -0700638 status = "okay";
639};
640
641&usb_dwc3_0 {
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100642 /* dual role is implemented but not a full featured OTG */
643 adp-disable;
644 hnp-disable;
645 srp-disable;
646 dr_mode = "otg";
647 usb-role-switch;
648 role-switch-default-mode = "peripheral";
Tim Harvey0f5717f2022-04-13 11:31:09 -0700649 status = "okay";
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100650
651 connector {
652 pinctrl-names = "default";
653 pinctrl-0 = <&pinctrl_usbcon1>;
654 compatible = "gpio-usb-b-connector", "usb-b-connector";
655 type = "micro";
656 label = "Type-C";
657 id-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
658 };
Tim Harvey0f5717f2022-04-13 11:31:09 -0700659};
660
661/* USB2 - USB3.0 Hub */
662&usb3_phy1 {
663 vbus-supply = <&reg_usb2_vbus>;
664 status = "okay";
665};
666
667&usb3_1 {
668 fsl,permanently-attached;
669 fsl,disable-port-power-control;
670 status = "okay";
671};
672
673&usb_dwc3_1 {
674 dr_mode = "host";
675 status = "okay";
676};
677
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100678/* SDIO WiFi */
679&usdhc1 {
680 pinctrl-names = "default", "state_100mhz", "state_200mhz";
681 pinctrl-0 = <&pinctrl_usdhc1>;
682 pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
683 pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
684 bus-width = <4>;
685 non-removable;
686 vmmc-supply = <&reg_wifi_en>;
687 #address-cells = <1>;
688 #size-cells = <0>;
689 status = "okay";
690
691 wifi@0 {
692 compatible = "cypress,cyw4373-fmac";
693 reg = <0>;
694 };
695};
696
Tim Harvey0f5717f2022-04-13 11:31:09 -0700697/* eMMC */
698&usdhc3 {
699 assigned-clocks = <&clk IMX8MP_CLK_USDHC3>;
700 assigned-clock-rates = <400000000>;
701 pinctrl-names = "default", "state_100mhz", "state_200mhz";
702 pinctrl-0 = <&pinctrl_usdhc3>;
703 pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
704 pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
705 bus-width = <8>;
706 non-removable;
707 status = "okay";
708};
709
710&wdog1 {
711 pinctrl-names = "default";
712 pinctrl-0 = <&pinctrl_wdog>;
713 fsl,ext-reset-output;
714 status = "okay";
715};
716
717&iomuxc {
718 pinctrl-names = "default";
719 pinctrl-0 = <&pinctrl_hog>;
720
721 pinctrl_hog: hoggrp {
722 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100723 MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 0x40000040 /* DIO0 */
724 MX8MP_IOMUXC_GPIO1_IO11__GPIO1_IO11 0x40000040 /* DIO1 */
725 MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14 0x40000040 /* M2SKT_OFF# */
726 MX8MP_IOMUXC_SD2_DATA3__GPIO2_IO18 0x40000150 /* PCIE2_WDIS# */
727 MX8MP_IOMUXC_SD2_CMD__GPIO2_IO14 0x40000150 /* PCIE3_WDIS# */
728 MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06 0x40000040 /* M2SKT_RST# */
729 MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18 0x40000150 /* M2SKT_WDIS# */
730 MX8MP_IOMUXC_NAND_ALE__GPIO3_IO00 0x40000150 /* M2SKT_GDIS# */
Tim Harvey0f5717f2022-04-13 11:31:09 -0700731 MX8MP_IOMUXC_SAI3_TXD__GPIO5_IO01 0x40000104 /* UART_TERM */
732 MX8MP_IOMUXC_SAI3_TXFS__GPIO4_IO31 0x40000104 /* UART_RS485 */
733 MX8MP_IOMUXC_SAI3_TXC__GPIO5_IO00 0x40000104 /* UART_HALF */
734 >;
735 };
736
737 pinctrl_accel: accelgrp {
738 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100739 MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 0x150
Tim Harvey0f5717f2022-04-13 11:31:09 -0700740 >;
741 };
742
743 pinctrl_eqos: eqosgrp {
744 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100745 MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC 0x2
746 MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO 0x2
747 MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0 0x90
748 MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1 0x90
749 MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2 0x90
750 MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3 0x90
751 MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x90
752 MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x90
753 MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0 0x16
754 MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1 0x16
755 MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2 0x16
756 MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x16
757 MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x16
758 MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x16
759 MX8MP_IOMUXC_SAI3_RXD__GPIO4_IO30 0x140 /* RST# */
760 MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28 0x150 /* IRQ# */
Tim Harvey0f5717f2022-04-13 11:31:09 -0700761 >;
762 };
763
764 pinctrl_fec: fecgrp {
765 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100766 MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0 0x90
767 MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1 0x90
768 MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2 0x90
769 MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3 0x90
770 MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC 0x90
771 MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL 0x90
772 MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0 0x16
773 MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1 0x16
774 MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2 0x16
775 MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3 0x16
776 MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL 0x16
777 MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC 0x16
778 MX8MP_IOMUXC_SAI1_RXFS__ENET1_1588_EVENT0_IN 0x140
779 MX8MP_IOMUXC_SAI1_RXC__ENET1_1588_EVENT0_OUT 0x140
Tim Harvey0f5717f2022-04-13 11:31:09 -0700780 >;
781 };
782
783 pinctrl_flexcan2: flexcan2grp {
784 fsl,pins = <
785 MX8MP_IOMUXC_SAI5_RXD3__CAN2_TX 0x154
786 MX8MP_IOMUXC_SAI5_MCLK__CAN2_RX 0x154
787 >;
788 };
789
790 pinctrl_gsc: gscgrp {
791 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100792 MX8MP_IOMUXC_SAI1_MCLK__GPIO4_IO20 0x150
Tim Harvey0f5717f2022-04-13 11:31:09 -0700793 >;
794 };
795
796 pinctrl_i2c1: i2c1grp {
797 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100798 MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001c2
799 MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001c2
Tim Harvey0f5717f2022-04-13 11:31:09 -0700800 >;
801 };
802
803 pinctrl_i2c2: i2c2grp {
804 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100805 MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL 0x400001c2
806 MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA 0x400001c2
Tim Harvey0f5717f2022-04-13 11:31:09 -0700807 >;
808 };
809
810 pinctrl_i2c3: i2c3grp {
811 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100812 MX8MP_IOMUXC_I2C3_SCL__I2C3_SCL 0x400001c2
813 MX8MP_IOMUXC_I2C3_SDA__I2C3_SDA 0x400001c2
Tim Harvey0f5717f2022-04-13 11:31:09 -0700814 >;
815 };
816
817 pinctrl_i2c4: i2c4grp {
818 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100819 MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL 0x400001c2
820 MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA 0x400001c2
Tim Harvey0f5717f2022-04-13 11:31:09 -0700821 >;
822 };
823
824 pinctrl_ksz: kszgrp {
825 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100826 MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29 0x150 /* IRQ# */
827 MX8MP_IOMUXC_SAI3_MCLK__GPIO5_IO02 0x140 /* RST# */
Tim Harvey0f5717f2022-04-13 11:31:09 -0700828 >;
829 };
830
831 pinctrl_gpio_leds: ledgrp {
832 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100833 MX8MP_IOMUXC_SD2_DATA0__GPIO2_IO15 0x10
834 MX8MP_IOMUXC_SD2_DATA1__GPIO2_IO16 0x10
835 >;
836 };
837
838 pinctrl_pcie0: pciegrp {
839 fsl,pins = <
840 MX8MP_IOMUXC_SD2_DATA2__GPIO2_IO17 0x110
Tim Harvey0f5717f2022-04-13 11:31:09 -0700841 >;
842 };
843
844 pinctrl_pmic: pmicgrp {
845 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100846 MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07 0x140
Tim Harvey0f5717f2022-04-13 11:31:09 -0700847 >;
848 };
849
850 pinctrl_pps: ppsgrp {
851 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100852 MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x140
Tim Harvey0f5717f2022-04-13 11:31:09 -0700853 >;
854 };
855
856 pinctrl_reg_can: regcangrp {
857 fsl,pins = <
858 MX8MP_IOMUXC_SAI5_RXFS__GPIO3_IO19 0x154
859 >;
860 };
861
862 pinctrl_reg_usb2: regusb2grp {
863 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100864 MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06 0x140
Tim Harvey0f5717f2022-04-13 11:31:09 -0700865 >;
866 };
867
868 pinctrl_reg_wifi: regwifigrp {
869 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100870 MX8MP_IOMUXC_NAND_DATA03__GPIO3_IO09 0x110
Tim Harvey0f5717f2022-04-13 11:31:09 -0700871 >;
872 };
873
874 pinctrl_sai2: sai2grp {
875 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100876 MX8MP_IOMUXC_SAI2_TXFS__AUDIOMIX_SAI2_TX_SYNC 0xd6
877 MX8MP_IOMUXC_SAI2_TXD0__AUDIOMIX_SAI2_TX_DATA00 0xd6
878 MX8MP_IOMUXC_SAI2_TXC__AUDIOMIX_SAI2_TX_BCLK 0xd6
879 MX8MP_IOMUXC_SAI2_MCLK__AUDIOMIX_SAI2_MCLK 0xd6
Tim Harvey0f5717f2022-04-13 11:31:09 -0700880 >;
881 };
882
883 pinctrl_spi2: spi2grp {
884 fsl,pins = <
885 MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK 0x82
886 MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI 0x82
887 MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO 0x82
888 MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13 0x140
889 >;
890 };
891
892 pinctrl_uart1: uart1grp {
893 fsl,pins = <
894 MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 0x140
895 MX8MP_IOMUXC_UART1_TXD__UART1_DCE_TX 0x140
896 >;
897 };
898
899 pinctrl_uart2: uart2grp {
900 fsl,pins = <
901 MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 0x140
902 MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 0x140
903 >;
904 };
905
Marcel Ziswiler97bd6532022-07-21 15:44:32 +0200906 pinctrl_uart3: uart3grp {
907 fsl,pins = <
908 MX8MP_IOMUXC_UART3_RXD__UART3_DCE_RX 0x140
909 MX8MP_IOMUXC_UART3_TXD__UART3_DCE_TX 0x140
910 MX8MP_IOMUXC_SAI5_RXD0__GPIO3_IO21 0x140
911 MX8MP_IOMUXC_SAI5_RXD1__GPIO3_IO22 0x140
912 >;
913 };
914
915 pinctrl_uart3_gpio: uart3gpiogrp {
916 fsl,pins = <
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100917 MX8MP_IOMUXC_NAND_DATA02__GPIO3_IO08 0x110
Marcel Ziswiler97bd6532022-07-21 15:44:32 +0200918 >;
919 };
920
Tim Harvey0f5717f2022-04-13 11:31:09 -0700921 pinctrl_uart4: uart4grp {
922 fsl,pins = <
923 MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX 0x140
924 MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX 0x140
925 >;
926 };
927
928 pinctrl_usb1: usb1grp {
929 fsl,pins = <
930 MX8MP_IOMUXC_GPIO1_IO13__USB1_OTG_OC 0x140
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100931 >;
932 };
933
934 pinctrl_usbcon1: usb1congrp {
935 fsl,pins = <
936 MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x140
Tim Harvey0f5717f2022-04-13 11:31:09 -0700937 >;
938 };
939
940 pinctrl_usdhc1: usdhc1grp {
941 fsl,pins = <
942 MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x190
943 MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d0
944 MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d0
945 MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d0
946 MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d0
947 MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d0
948 >;
949 };
950
Marcel Ziswilercdfde792022-11-07 22:22:39 +0100951 pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
952 fsl,pins = <
953 MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x194
954 MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d4
955 MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d4
956 MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d4
957 MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d4
958 MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d4
959 >;
960 };
961
962 pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
963 fsl,pins = <
964 MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x196
965 MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d6
966 MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d6
967 MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d6
968 MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d6
969 MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d6
970 >;
971 };
972
Tim Harvey0f5717f2022-04-13 11:31:09 -0700973 pinctrl_usdhc3: usdhc3grp {
974 fsl,pins = <
975 MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x190
976 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d0
977 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d0
978 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d0
979 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d0
980 MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d0
981 MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d0
982 MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d0
983 MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d0
984 MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d0
985 MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x190
986 >;
987 };
988
989 pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp {
990 fsl,pins = <
991 MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194
992 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4
993 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4
994 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4
995 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4
996 MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4
997 MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4
998 MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4
999 MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4
1000 MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4
1001 MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x194
1002 >;
1003 };
1004
1005 pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp {
1006 fsl,pins = <
1007 MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x196
1008 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d6
1009 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d6
1010 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d6
1011 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d6
1012 MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d6
1013 MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d6
1014 MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d6
1015 MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d6
1016 MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d6
1017 MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x196
1018 >;
1019 };
1020
1021 pinctrl_wdog: wdoggrp {
1022 fsl,pins = <
1023 MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 0x166
1024 >;
1025 };
1026};