1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright 2021 Gateworks Corporation 4 */ 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> 11#include <dt-bindings/phy/phy-imx8-pcie.h> 12 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 104 pcie0_refclk: pcie0-refclk { 105 compatible = "fixed-clock"; 106 #clock-cells = <0>; 107 clock-frequency = <100000000>; 108 }; 109 110 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_can1_stby: regulator-can1-stby { 129 compatible = "regulator-fixed"; 130 pinctrl-names = "default"; 131 pinctrl-0 = <&pinctrl_reg_can1>; 132 regulator-name = "can1_stby"; 133 gpio = <&gpio3 19 GPIO_ACTIVE_LOW>; 134 regulator-min-microvolt = <3300000>; 135 regulator-max-microvolt = <3300000>; 136 }; 137 138 reg_can2_stby: regulator-can2-stby { 139 compatible = "regulator-fixed"; 140 pinctrl-names = "default"; 141 pinctrl-0 = <&pinctrl_reg_can2>; 142 regulator-name = "can2_stby"; 143 gpio = <&gpio5 5 GPIO_ACTIVE_LOW>; 144 regulator-min-microvolt = <3300000>; 145 regulator-max-microvolt = <3300000>; 146 }; 147 148 reg_wifi_en: regulator-wifi-en { 149 pinctrl-names = "default"; 150 pinctrl-0 = <&pinctrl_reg_wifi>; 151 compatible = "regulator-fixed"; 152 regulator-name = "wl"; 153 gpio = <&gpio3 9 GPIO_ACTIVE_HIGH>; 154 startup-delay-us = <70000>; 155 enable-active-high; 156 regulator-min-microvolt = <3300000>; 157 regulator-max-microvolt = <3300000>; 158 }; 159}; 160 161&A53_0 { 162 cpu-supply = <®_arm>; 163}; 164 165&A53_1 { 166 cpu-supply = <®_arm>; 167}; 168 169&A53_2 { 170 cpu-supply = <®_arm>; 171}; 172 173&A53_3 { 174 cpu-supply = <®_arm>; 175}; 176 177&ecspi1 { 178 pinctrl-names = "default"; 179 pinctrl-0 = <&pinctrl_spi1>; 180 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 181 status = "okay"; 182 183 tpm@0 { 184 compatible = "tcg,tpm_tis-spi"; 185 #address-cells = <0x1>; 186 #size-cells = <0x1>; 187 reg = <0x0>; 188 spi-max-frequency = <36000000>; 189 }; 190}; 191 192/* off-board header */ 193&ecspi2 { 194 pinctrl-names = "default"; 195 pinctrl-0 = <&pinctrl_spi2>; 196 cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>; 197 status = "okay"; 198}; 199 200&eqos { 201 pinctrl-names = "default"; 202 pinctrl-0 = <&pinctrl_eqos>; 203 phy-mode = "rgmii-id"; 204 phy-handle = <ðphy0>; 205 status = "okay"; 206 207 mdio { 208 compatible = "snps,dwmac-mdio"; 209 #address-cells = <1>; 210 #size-cells = <0>; 211 212 ethphy0: ethernet-phy@0 { 213 compatible = "ethernet-phy-ieee802.3-c22"; 214 reg = <0x0>; 215 }; 216 }; 217}; 218 219&fec { 220 pinctrl-names = "default"; 221 pinctrl-0 = <&pinctrl_fec>; 222 phy-mode = "rgmii-id"; 223 local-mac-address = [00 00 00 00 00 00]; 224 status = "okay"; 225 226 fixed-link { 227 speed = <1000>; 228 full-duplex; 229 }; 230}; 231 232&flexcan1 { 233 pinctrl-names = "default"; 234 pinctrl-0 = <&pinctrl_flexcan1>; 235 xceiver-supply = <®_can1_stby>; 236 status = "okay"; 237}; 238 239&flexcan2 { 240 pinctrl-names = "default"; 241 pinctrl-0 = <&pinctrl_flexcan2>; 242 xceiver-supply = <®_can2_stby>; 243 status = "okay"; 244}; 245 246&gpio1 { 247 gpio-line-names = 248 "", "", "", "", "", "", "", "", 249 "", "dio0", "", "dio1", "", "", "", "", 250 "", "", "", "", "", "", "", "", 251 "", "", "", "", "", "", "", ""; 252}; 253 254&gpio2 { 255 gpio-line-names = 256 "", "", "", "", "", "", "m2_pin20", "", 257 "", "", "", "", "", "pcie1_wdis#", "pcie3_wdis#", "", 258 "", "", "pcie2_wdis#", "", "", "", "", "", 259 "", "", "", "", "", "", "", ""; 260}; 261 262&gpio3 { 263 gpio-line-names = 264 "", "", "", "", "", "", "m2_rst", "", 265 "", "", "", "", "", "", "", "", 266 "", "", "", "", "", "", "", "", 267 "", "", "", "", "", "", "", ""; 268}; 269 270&gpio4 { 271 gpio-line-names = 272 "", "", "m2_off#", "", "", "", "", "", 273 "", "", "", "", "", "", "", "", 274 "", "", "m2_wdis#", "", "", "", "", "", 275 "", "", "", "", "", "", "", "rs485_en"; 276}; 277 278&gpio5 { 279 gpio-line-names = 280 "rs485_hd", "rs485_term", "", "", "", "", "", "", 281 "", "", "", "", "", "", "", "", 282 "", "", "", "", "", "", "", "", 283 "", "", "", "", "", "", "", ""; 284}; 285 286&i2c1 { 287 clock-frequency = <100000>; 288 pinctrl-names = "default", "gpio"; 289 pinctrl-0 = <&pinctrl_i2c1>; 290 pinctrl-1 = <&pinctrl_i2c1_gpio>; 291 scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 292 sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 293 status = "okay"; 294 295 gsc: gsc@20 { 296 compatible = "gw,gsc"; 297 reg = <0x20>; 298 pinctrl-0 = <&pinctrl_gsc>; 299 interrupt-parent = <&gpio4>; 300 interrupts = <20 IRQ_TYPE_EDGE_FALLING>; 301 interrupt-controller; 302 #interrupt-cells = <1>; 303 #address-cells = <1>; 304 #size-cells = <0>; 305 306 adc { 307 compatible = "gw,gsc-adc"; 308 #address-cells = <1>; 309 #size-cells = <0>; 310 311 channel@6 { 312 gw,mode = <0>; 313 reg = <0x06>; 314 label = "temp"; 315 }; 316 317 channel@8 { 318 gw,mode = <3>; 319 reg = <0x08>; 320 label = "vdd_bat"; 321 }; 322 323 channel@16 { 324 gw,mode = <4>; 325 reg = <0x16>; 326 label = "fan_tach"; 327 }; 328 329 channel@82 { 330 gw,mode = <2>; 331 reg = <0x82>; 332 label = "vdd_adc1"; 333 gw,voltage-divider-ohms = <10000 10000>; 334 }; 335 336 channel@84 { 337 gw,mode = <2>; 338 reg = <0x84>; 339 label = "vdd_adc2"; 340 gw,voltage-divider-ohms = <10000 10000>; 341 }; 342 343 channel@86 { 344 gw,mode = <2>; 345 reg = <0x86>; 346 label = "vdd_vin"; 347 gw,voltage-divider-ohms = <22100 1000>; 348 }; 349 350 channel@88 { 351 gw,mode = <2>; 352 reg = <0x88>; 353 label = "vdd_3p3"; 354 gw,voltage-divider-ohms = <10000 10000>; 355 }; 356 357 channel@8c { 358 gw,mode = <2>; 359 reg = <0x8c>; 360 label = "vdd_2p5"; 361 gw,voltage-divider-ohms = <10000 10000>; 362 }; 363 364 channel@90 { 365 gw,mode = <2>; 366 reg = <0x90>; 367 label = "vdd_soc"; 368 }; 369 370 channel@92 { 371 gw,mode = <2>; 372 reg = <0x92>; 373 label = "vdd_arm"; 374 }; 375 376 channel@98 { 377 gw,mode = <2>; 378 reg = <0x98>; 379 label = "vdd_1p8"; 380 }; 381 382 channel@9a { 383 gw,mode = <2>; 384 reg = <0x9a>; 385 label = "vdd_1p2"; 386 }; 387 388 channel@9c { 389 gw,mode = <2>; 390 reg = <0x9c>; 391 label = "vdd_dram"; 392 }; 393 394 channel@a2 { 395 gw,mode = <2>; 396 reg = <0xa2>; 397 label = "vdd_gsc"; 398 gw,voltage-divider-ohms = <10000 10000>; 399 }; 400 }; 401 402 fan-controller@a { 403 compatible = "gw,gsc-fan"; 404 reg = <0x0a>; 405 }; 406 }; 407 408 gpio: gpio@23 { 409 compatible = "nxp,pca9555"; 410 reg = <0x23>; 411 gpio-controller; 412 #gpio-cells = <2>; 413 interrupt-parent = <&gsc>; 414 interrupts = <4>; 415 }; 416 417 eeprom@50 { 418 compatible = "atmel,24c02"; 419 reg = <0x50>; 420 pagesize = <16>; 421 }; 422 423 eeprom@51 { 424 compatible = "atmel,24c02"; 425 reg = <0x51>; 426 pagesize = <16>; 427 }; 428 429 eeprom@52 { 430 compatible = "atmel,24c02"; 431 reg = <0x52>; 432 pagesize = <16>; 433 }; 434 435 eeprom@53 { 436 compatible = "atmel,24c02"; 437 reg = <0x53>; 438 pagesize = <16>; 439 }; 440 441 rtc@68 { 442 compatible = "dallas,ds1672"; 443 reg = <0x68>; 444 }; 445}; 446 447&i2c2 { 448 clock-frequency = <400000>; 449 pinctrl-names = "default", "gpio"; 450 pinctrl-0 = <&pinctrl_i2c2>; 451 pinctrl-1 = <&pinctrl_i2c2_gpio>; 452 scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 453 sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 454 status = "okay"; 455 456 accelerometer@19 { 457 compatible = "st,lis2de12"; 458 pinctrl-names = "default"; 459 pinctrl-0 = <&pinctrl_accel>; 460 reg = <0x19>; 461 st,drdy-int-pin = <1>; 462 interrupt-parent = <&gpio1>; 463 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 464 }; 465 466 switch: switch@5f { 467 compatible = "microchip,ksz9897"; 468 reg = <0x5f>; 469 pinctrl-0 = <&pinctrl_ksz>; 470 interrupt-parent = <&gpio4>; 471 interrupts = <29 IRQ_TYPE_EDGE_FALLING>; 472 473 ports { 474 #address-cells = <1>; 475 #size-cells = <0>; 476 477 lan1: port@0 { 478 reg = <0>; 479 label = "lan1"; 480 phy-mode = "internal"; 481 local-mac-address = [00 00 00 00 00 00]; 482 }; 483 484 lan2: port@1 { 485 reg = <1>; 486 label = "lan2"; 487 phy-mode = "internal"; 488 local-mac-address = [00 00 00 00 00 00]; 489 }; 490 491 lan3: port@2 { 492 reg = <2>; 493 label = "lan3"; 494 phy-mode = "internal"; 495 local-mac-address = [00 00 00 00 00 00]; 496 }; 497 498 lan4: port@3 { 499 reg = <3>; 500 label = "lan4"; 501 phy-mode = "internal"; 502 local-mac-address = [00 00 00 00 00 00]; 503 }; 504 505 lan5: port@4 { 506 reg = <4>; 507 label = "lan5"; 508 phy-mode = "internal"; 509 local-mac-address = [00 00 00 00 00 00]; 510 }; 511 512 port@5 { 513 reg = <5>; 514 ethernet = <&fec>; 515 phy-mode = "rgmii-id"; 516 517 fixed-link { 518 speed = <1000>; 519 full-duplex; 520 }; 521 }; 522 }; 523 }; 524}; 525 526&i2c3 { 527 clock-frequency = <400000>; 528 pinctrl-names = "default", "gpio"; 529 pinctrl-0 = <&pinctrl_i2c3>; 530 pinctrl-1 = <&pinctrl_i2c3_gpio>; 531 scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 532 sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 533 status = "okay"; 534 535 pmic@25 { 536 compatible = "nxp,pca9450c"; 537 reg = <0x25>; 538 pinctrl-names = "default"; 539 pinctrl-0 = <&pinctrl_pmic>; 540 interrupt-parent = <&gpio3>; 541 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 542 543 regulators { 544 BUCK1 { 545 regulator-name = "BUCK1"; 546 regulator-min-microvolt = <720000>; 547 regulator-max-microvolt = <1000000>; 548 regulator-boot-on; 549 regulator-always-on; 550 regulator-ramp-delay = <3125>; 551 }; 552 553 reg_arm: BUCK2 { 554 regulator-name = "BUCK2"; 555 regulator-min-microvolt = <720000>; 556 regulator-max-microvolt = <1025000>; 557 regulator-boot-on; 558 regulator-always-on; 559 regulator-ramp-delay = <3125>; 560 nxp,dvs-run-voltage = <950000>; 561 nxp,dvs-standby-voltage = <850000>; 562 }; 563 564 BUCK4 { 565 regulator-name = "BUCK4"; 566 regulator-min-microvolt = <3000000>; 567 regulator-max-microvolt = <3600000>; 568 regulator-boot-on; 569 regulator-always-on; 570 }; 571 572 BUCK5 { 573 regulator-name = "BUCK5"; 574 regulator-min-microvolt = <1650000>; 575 regulator-max-microvolt = <1950000>; 576 regulator-boot-on; 577 regulator-always-on; 578 }; 579 580 BUCK6 { 581 regulator-name = "BUCK6"; 582 regulator-min-microvolt = <1045000>; 583 regulator-max-microvolt = <1155000>; 584 regulator-boot-on; 585 regulator-always-on; 586 }; 587 588 LDO1 { 589 regulator-name = "LDO1"; 590 regulator-min-microvolt = <1650000>; 591 regulator-max-microvolt = <1950000>; 592 regulator-boot-on; 593 regulator-always-on; 594 }; 595 596 LDO3 { 597 regulator-name = "LDO3"; 598 regulator-min-microvolt = <1710000>; 599 regulator-max-microvolt = <1890000>; 600 regulator-boot-on; 601 regulator-always-on; 602 }; 603 604 LDO5 { 605 regulator-name = "LDO5"; 606 regulator-min-microvolt = <1800000>; 607 regulator-max-microvolt = <3300000>; 608 regulator-boot-on; 609 regulator-always-on; 610 }; 611 }; 612 }; 613}; 614 615/* off-board header */ 616&i2c4 { 617 clock-frequency = <400000>; 618 pinctrl-names = "default", "gpio"; 619 pinctrl-0 = <&pinctrl_i2c4>; 620 pinctrl-1 = <&pinctrl_i2c4_gpio>; 621 scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 622 sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 623 status = "okay"; 624}; 625 626&pcie_phy { 627 fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>; 628 fsl,clkreq-unsupported; 629 clocks = <&pcie0_refclk>; 630 clock-names = "ref"; 631 status = "okay"; 632}; 633 634&pcie { 635 pinctrl-names = "default"; 636 pinctrl-0 = <&pinctrl_pcie0>; 637 reset-gpio = <&gpio2 17 GPIO_ACTIVE_LOW>; 638 status = "okay"; 639}; 640 641/* GPS / off-board header */ 642&uart1 { 643 pinctrl-names = "default"; 644 pinctrl-0 = <&pinctrl_uart1>; 645 status = "okay"; 646}; 647 648/* RS232 console */ 649&uart2 { 650 pinctrl-names = "default"; 651 pinctrl-0 = <&pinctrl_uart2>; 652 status = "okay"; 653}; 654 655/* bluetooth HCI */ 656&uart3 { 657 pinctrl-names = "default"; 658 pinctrl-0 = <&pinctrl_uart3>, <&pinctrl_uart3_gpio>; 659 cts-gpios = <&gpio3 21 GPIO_ACTIVE_LOW>; 660 rts-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>; 661 status = "okay"; 662 663 bluetooth { 664 compatible = "brcm,bcm4330-bt"; 665 shutdown-gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>; 666 }; 667}; 668 669&uart4 { 670 pinctrl-names = "default"; 671 pinctrl-0 = <&pinctrl_uart4>; 672 status = "okay"; 673}; 674 675/* USB1 - Type C front panel */ 676&usb3_0 { 677 pinctrl-names = "default"; 678 pinctrl-0 = <&pinctrl_usb1>; 679 fsl,over-current-active-low; 680 status = "okay"; 681}; 682 683&usb3_phy0 { 684 status = "okay"; 685}; 686 687&usb_dwc3_0 { 688 /* dual role is implemented but not a full featured OTG */ 689 adp-disable; 690 hnp-disable; 691 srp-disable; 692 dr_mode = "otg"; 693 usb-role-switch; 694 role-switch-default-mode = "peripheral"; 695 status = "okay"; 696 697 connector { 698 pinctrl-names = "default"; 699 pinctrl-0 = <&pinctrl_usbcon1>; 700 compatible = "gpio-usb-b-connector", "usb-b-connector"; 701 type = "micro"; 702 label = "Type-C"; 703 id-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; 704 }; 705}; 706 707/* USB2 - USB3.0 Hub */ 708&usb3_phy1 { 709 vbus-supply = <®_usb2_vbus>; 710 status = "okay"; 711}; 712 713&usb3_1 { 714 fsl,permanently-attached; 715 fsl,disable-port-power-control; 716 status = "okay"; 717}; 718 719&usb_dwc3_1 { 720 dr_mode = "host"; 721 status = "okay"; 722}; 723 724/* SDIO WiFi */ 725&usdhc1 { 726 pinctrl-names = "default", "state_100mhz", "state_200mhz"; 727 pinctrl-0 = <&pinctrl_usdhc1>; 728 pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 729 pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 730 bus-width = <4>; 731 non-removable; 732 vmmc-supply = <®_wifi_en>; 733 #address-cells = <1>; 734 #size-cells = <0>; 735 status = "okay"; 736 737 wifi@0 { 738 compatible = "cypress,cyw4373-fmac", "brcm,bcm4329-fmac"; 739 reg = <0>; 740 }; 741}; 742 743/* eMMC */ 744&usdhc3 { 745 assigned-clocks = <&clk IMX8MP_CLK_USDHC3>; 746 assigned-clock-rates = <400000000>; 747 pinctrl-names = "default", "state_100mhz", "state_200mhz"; 748 pinctrl-0 = <&pinctrl_usdhc3>; 749 pinctrl-1 = <&pinctrl_usdhc3_100mhz>; 750 pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 751 bus-width = <8>; 752 non-removable; 753 status = "okay"; 754}; 755 756&wdog1 { 757 pinctrl-names = "default"; 758 pinctrl-0 = <&pinctrl_wdog>; 759 fsl,ext-reset-output; 760 status = "okay"; 761}; 762 763&iomuxc { 764 pinctrl-names = "default"; 765 pinctrl-0 = <&pinctrl_hog>; 766 767 pinctrl_hog: hoggrp { 768 fsl,pins = < 769 MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 0x40000040 /* DIO0 */ 770 MX8MP_IOMUXC_GPIO1_IO11__GPIO1_IO11 0x40000040 /* DIO1 */ 771 MX8MP_IOMUXC_SAI1_RXD0__GPIO4_IO02 0x40000040 /* M2SKT_OFF# */ 772 MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18 0x40000150 /* M2SKT_WDIS# */ 773 MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06 0x40000040 /* M2SKT_PIN20 */ 774 MX8MP_IOMUXC_SD1_STROBE__GPIO2_IO11 0x40000040 /* M2SKT_PIN22 */ 775 MX8MP_IOMUXC_SD2_CLK__GPIO2_IO13 0x40000150 /* PCIE1_WDIS# */ 776 MX8MP_IOMUXC_SD2_CMD__GPIO2_IO14 0x40000150 /* PCIE3_WDIS# */ 777 MX8MP_IOMUXC_SD2_DATA3__GPIO2_IO18 0x40000150 /* PCIE2_WDIS# */ 778 MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06 0x40000040 /* M2SKT_RST# */ 779 MX8MP_IOMUXC_SAI3_TXD__GPIO5_IO01 0x40000104 /* UART_TERM */ 780 MX8MP_IOMUXC_SAI3_TXFS__GPIO4_IO31 0x40000104 /* UART_RS485 */ 781 MX8MP_IOMUXC_SAI3_TXC__GPIO5_IO00 0x40000104 /* UART_HALF */ 782 >; 783 }; 784 785 pinctrl_accel: accelgrp { 786 fsl,pins = < 787 MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 0x150 788 >; 789 }; 790 791 pinctrl_eqos: eqosgrp { 792 fsl,pins = < 793 MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC 0x2 794 MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO 0x2 795 MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0 0x90 796 MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1 0x90 797 MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2 0x90 798 MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3 0x90 799 MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x90 800 MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x90 801 MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0 0x16 802 MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1 0x16 803 MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2 0x16 804 MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x16 805 MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x16 806 MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x16 807 MX8MP_IOMUXC_SAI3_RXD__GPIO4_IO30 0x140 /* RST# */ 808 MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28 0x150 /* IRQ# */ 809 >; 810 }; 811 812 pinctrl_fec: fecgrp { 813 fsl,pins = < 814 MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0 0x90 815 MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1 0x90 816 MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2 0x90 817 MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3 0x90 818 MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC 0x90 819 MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL 0x90 820 MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0 0x16 821 MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1 0x16 822 MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2 0x16 823 MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3 0x16 824 MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL 0x16 825 MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC 0x16 826 MX8MP_IOMUXC_SAI1_RXFS__ENET1_1588_EVENT0_IN 0x140 827 MX8MP_IOMUXC_SAI1_RXC__ENET1_1588_EVENT0_OUT 0x140 828 >; 829 }; 830 831 pinctrl_flexcan1: flexcan1grp { 832 fsl,pins = < 833 MX8MP_IOMUXC_SPDIF_RX__CAN1_RX 0x154 834 MX8MP_IOMUXC_SPDIF_TX__CAN1_TX 0x154 835 >; 836 }; 837 838 pinctrl_flexcan2: flexcan2grp { 839 fsl,pins = < 840 MX8MP_IOMUXC_SAI5_RXD3__CAN2_TX 0x154 841 MX8MP_IOMUXC_SAI5_MCLK__CAN2_RX 0x154 842 >; 843 }; 844 845 pinctrl_gsc: gscgrp { 846 fsl,pins = < 847 MX8MP_IOMUXC_SAI1_MCLK__GPIO4_IO20 0x150 848 >; 849 }; 850 851 pinctrl_i2c1: i2c1grp { 852 fsl,pins = < 853 MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001c2 854 MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001c2 855 >; 856 }; 857 858 pinctrl_i2c1_gpio: i2c1gpiogrp { 859 fsl,pins = < 860 MX8MP_IOMUXC_I2C1_SCL__GPIO5_IO14 0x400001c2 861 MX8MP_IOMUXC_I2C1_SDA__GPIO5_IO15 0x400001c2 862 >; 863 }; 864 865 pinctrl_i2c2: i2c2grp { 866 fsl,pins = < 867 MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL 0x400001c2 868 MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA 0x400001c2 869 >; 870 }; 871 872 pinctrl_i2c2_gpio: i2c2gpiogrp { 873 fsl,pins = < 874 MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16 0x400001c3 875 MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17 0x400001c3 876 >; 877 }; 878 879 pinctrl_i2c3: i2c3grp { 880 fsl,pins = < 881 MX8MP_IOMUXC_I2C3_SCL__I2C3_SCL 0x400001c2 882 MX8MP_IOMUXC_I2C3_SDA__I2C3_SDA 0x400001c2 883 >; 884 }; 885 886 pinctrl_i2c3_gpio: i2c3gpiogrp { 887 fsl,pins = < 888 MX8MP_IOMUXC_I2C3_SCL__GPIO5_IO18 0x400001c3 889 MX8MP_IOMUXC_I2C3_SDA__GPIO5_IO19 0x400001c3 890 >; 891 }; 892 893 pinctrl_i2c4: i2c4grp { 894 fsl,pins = < 895 MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL 0x400001c2 896 MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA 0x400001c2 897 >; 898 }; 899 900 pinctrl_i2c4_gpio: i2c4gpiogrp { 901 fsl,pins = < 902 MX8MP_IOMUXC_I2C4_SCL__GPIO5_IO20 0x400001c3 903 MX8MP_IOMUXC_I2C4_SDA__GPIO5_IO21 0x400001c3 904 >; 905 }; 906 907 pinctrl_ksz: kszgrp { 908 fsl,pins = < 909 MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29 0x150 /* IRQ# */ 910 MX8MP_IOMUXC_SAI3_MCLK__GPIO5_IO02 0x140 /* RST# */ 911 >; 912 }; 913 914 pinctrl_gpio_leds: ledgrp { 915 fsl,pins = < 916 MX8MP_IOMUXC_SD2_DATA0__GPIO2_IO15 0x10 917 MX8MP_IOMUXC_SD2_DATA1__GPIO2_IO16 0x10 918 >; 919 }; 920 921 pinctrl_pcie0: pciegrp { 922 fsl,pins = < 923 MX8MP_IOMUXC_SD2_DATA2__GPIO2_IO17 0x106 924 >; 925 }; 926 927 pinctrl_pmic: pmicgrp { 928 fsl,pins = < 929 MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07 0x140 930 >; 931 }; 932 933 pinctrl_pps: ppsgrp { 934 fsl,pins = < 935 MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x140 936 >; 937 }; 938 939 pinctrl_reg_can1: regcan1grp { 940 fsl,pins = < 941 MX8MP_IOMUXC_SAI5_RXFS__GPIO3_IO19 0x154 942 >; 943 }; 944 945 pinctrl_reg_can2: regcan2grp { 946 fsl,pins = < 947 MX8MP_IOMUXC_SPDIF_EXT_CLK__GPIO5_IO05 0x154 948 >; 949 }; 950 951 pinctrl_reg_usb2: regusb2grp { 952 fsl,pins = < 953 MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06 0x140 954 >; 955 }; 956 957 pinctrl_reg_wifi: regwifigrp { 958 fsl,pins = < 959 MX8MP_IOMUXC_NAND_DATA03__GPIO3_IO09 0x110 960 >; 961 }; 962 963 pinctrl_spi1: spi1grp { 964 fsl,pins = < 965 MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK 0x82 966 MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI 0x82 967 MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO 0x82 968 MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09 0x140 969 >; 970 }; 971 972 pinctrl_spi2: spi2grp { 973 fsl,pins = < 974 MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK 0x82 975 MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI 0x82 976 MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO 0x82 977 MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13 0x140 978 >; 979 }; 980 981 pinctrl_uart1: uart1grp { 982 fsl,pins = < 983 MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 0x140 984 MX8MP_IOMUXC_UART1_TXD__UART1_DCE_TX 0x140 985 >; 986 }; 987 988 pinctrl_uart2: uart2grp { 989 fsl,pins = < 990 MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 0x140 991 MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 0x140 992 >; 993 }; 994 995 pinctrl_uart3: uart3grp { 996 fsl,pins = < 997 MX8MP_IOMUXC_UART3_RXD__UART3_DCE_RX 0x140 998 MX8MP_IOMUXC_UART3_TXD__UART3_DCE_TX 0x140 999 MX8MP_IOMUXC_SAI5_RXD0__GPIO3_IO21 0x140 1000 MX8MP_IOMUXC_SAI5_RXD1__GPIO3_IO22 0x140 1001 >; 1002 }; 1003 1004 pinctrl_uart3_gpio: uart3gpiogrp { 1005 fsl,pins = < 1006 MX8MP_IOMUXC_NAND_DATA02__GPIO3_IO08 0x110 1007 >; 1008 }; 1009 1010 pinctrl_uart4: uart4grp { 1011 fsl,pins = < 1012 MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX 0x140 1013 MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX 0x140 1014 >; 1015 }; 1016 1017 pinctrl_usb1: usb1grp { 1018 fsl,pins = < 1019 MX8MP_IOMUXC_GPIO1_IO13__USB1_OTG_OC 0x140 1020 >; 1021 }; 1022 1023 pinctrl_usbcon1: usb1congrp { 1024 fsl,pins = < 1025 MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x140 1026 >; 1027 }; 1028 1029 pinctrl_usdhc1: usdhc1grp { 1030 fsl,pins = < 1031 MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x190 1032 MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d0 1033 MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d0 1034 MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d0 1035 MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d0 1036 MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d0 1037 >; 1038 }; 1039 1040 pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp { 1041 fsl,pins = < 1042 MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x194 1043 MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d4 1044 MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d4 1045 MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d4 1046 MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d4 1047 MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d4 1048 >; 1049 }; 1050 1051 pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp { 1052 fsl,pins = < 1053 MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x196 1054 MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d6 1055 MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d6 1056 MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d6 1057 MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d6 1058 MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d6 1059 >; 1060 }; 1061 1062 pinctrl_usdhc3: usdhc3grp { 1063 fsl,pins = < 1064 MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x190 1065 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d0 1066 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d0 1067 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d0 1068 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d0 1069 MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d0 1070 MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d0 1071 MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d0 1072 MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d0 1073 MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d0 1074 MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x190 1075 >; 1076 }; 1077 1078 pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp { 1079 fsl,pins = < 1080 MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194 1081 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4 1082 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4 1083 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4 1084 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4 1085 MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4 1086 MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4 1087 MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4 1088 MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4 1089 MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4 1090 MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x194 1091 >; 1092 }; 1093 1094 pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp { 1095 fsl,pins = < 1096 MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x196 1097 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d6 1098 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d6 1099 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d6 1100 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d6 1101 MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d6 1102 MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d6 1103 MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d6 1104 MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d6 1105 MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d6 1106 MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x196 1107 >; 1108 }; 1109 1110 pinctrl_wdog: wdoggrp { 1111 fsl,pins = < 1112 MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 0x166 1113 >; 1114 }; 1115}; 1116