Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
0002 /*
0003  * Copyright 2021-2022 TQ-Systems GmbH
0004  * Author: Alexander Stein <alexander.stein@tq-group.com>
0005  */
0006 
0007 /dts-v1/;
0008 
0009 #include <dt-bindings/leds/common.h>
0010 #include <dt-bindings/net/ti-dp83867.h>
0011 #include <dt-bindings/pwm/pwm.h>
0012 #include "imx8mp-tqma8mpql.dtsi"
0013 
0014 / {
0015         model = "TQ-Systems i.MX8MPlus TQMa8MPxL on MBa8MPxL";
0016         compatible = "tq,imx8mp-tqma8mpql-mba8mpxl", "tq,imx8mp-tqma8mpql", "fsl,imx8mp";
0017 
0018         chosen {
0019                 stdout-path = &uart4;
0020         };
0021 
0022         iio-hwmon {
0023                 compatible = "iio-hwmon";
0024                 io-channels = <&adc 0>, <&adc 1>;
0025         };
0026 
0027         aliases {
0028                 mmc0 = &usdhc3;
0029                 mmc1 = &usdhc2;
0030                 mmc2 = &usdhc1;
0031                 rtc0 = &pcf85063;
0032                 rtc1 = &snvs_rtc;
0033                 spi0 = &flexspi;
0034                 spi1 = &ecspi1;
0035                 spi2 = &ecspi2;
0036                 spi3 = &ecspi3;
0037         };
0038 
0039         backlight_lvds: backlight {
0040                 compatible = "pwm-backlight";
0041                 pinctrl-names = "default";
0042                 pinctrl-0 = <&pinctrl_backlight>;
0043                 pwms = <&pwm2 0 5000000 0>;
0044                 brightness-levels = <0 4 8 16 32 64 128 255>;
0045                 default-brightness-level = <7>;
0046                 power-supply = <&reg_vcc_12v0>;
0047                 enable-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
0048                 status = "disabled";
0049         };
0050 
0051         gpio-keys {
0052                 compatible = "gpio-keys";
0053                 pinctrl-names = "default";
0054                 pinctrl-0 = <&pinctrl_gpiobutton>;
0055                 autorepeat;
0056 
0057                 switch-1 {
0058                         label = "S12";
0059                         linux,code = <BTN_0>;
0060                         gpios = <&gpio5 27 GPIO_ACTIVE_LOW>;
0061                 };
0062 
0063                 switch-2 {
0064                         label = "S13";
0065                         linux,code = <BTN_1>;
0066                         gpios = <&gpio5 26 GPIO_ACTIVE_LOW>;
0067                 };
0068         };
0069 
0070         gpio-leds {
0071                 compatible = "gpio-leds";
0072                 pinctrl-names = "default";
0073                 pinctrl-0 = <&pinctrl_gpioled>;
0074 
0075                 led-0 {
0076                         color = <LED_COLOR_ID_GREEN>;
0077                         function = LED_FUNCTION_STATUS;
0078                         function-enumerator = <0>;
0079                         gpios = <&gpio5 5 GPIO_ACTIVE_HIGH>;
0080                         linux,default-trigger = "default-on";
0081                 };
0082 
0083                 led-1 {
0084                         color = <LED_COLOR_ID_GREEN>;
0085                         function = LED_FUNCTION_HEARTBEAT;
0086                         gpios = <&gpio5 4 GPIO_ACTIVE_HIGH>;
0087                         linux,default-trigger = "heartbeat";
0088                 };
0089 
0090                 led-2 {
0091                         color = <LED_COLOR_ID_YELLOW>;
0092                         function = LED_FUNCTION_STATUS;
0093                         function-enumerator = <1>;
0094                         gpios = <&gpio5 3 GPIO_ACTIVE_HIGH>;
0095                 };
0096         };
0097 
0098         display: display {
0099                 /*
0100                  * Display is not fixed, so compatible has to be added from
0101                  * DT overlay
0102                  */
0103                 pinctrl-names = "default";
0104                 pinctrl-0 = <&pinctrl_lvdsdisplay>;
0105                 power-supply = <&reg_vcc_3v3>;
0106                 enable-gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
0107                 backlight = <&backlight_lvds>;
0108                 status = "disabled";
0109         };
0110 
0111         reg_usdhc2_vmmc: regulator-usdhc2 {
0112                 compatible = "regulator-fixed";
0113                 pinctrl-names = "default";
0114                 pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
0115                 regulator-name = "VSD_3V3";
0116                 regulator-min-microvolt = <3300000>;
0117                 regulator-max-microvolt = <3300000>;
0118                 gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
0119                 enable-active-high;
0120                 startup-delay-us = <100>;
0121                 off-on-delay-us = <12000>;
0122         };
0123 
0124         reg_vcc_12v0: regulator-12v0 {
0125                 compatible = "regulator-fixed";
0126                 pinctrl-names = "default";
0127                 pinctrl-0 = <&pinctrl_reg12v0>;
0128                 regulator-name = "VCC_12V0";
0129                 regulator-min-microvolt = <12000000>;
0130                 regulator-max-microvolt = <12000000>;
0131                 gpio = <&gpio2 6 GPIO_ACTIVE_HIGH>;
0132                 enable-active-high;
0133         };
0134 
0135         reg_vcc_3v3: regulator-3v3 {
0136                 compatible = "regulator-fixed";
0137                 regulator-name = "VCC_3V3";
0138                 regulator-min-microvolt = <3300000>;
0139                 regulator-max-microvolt = <3300000>;
0140         };
0141 
0142         reserved-memory {
0143                 #address-cells = <2>;
0144                 #size-cells = <2>;
0145                 ranges;
0146 
0147                 ocram: ocram@900000 {
0148                         no-map;
0149                         reg = <0 0x900000 0 0x70000>;
0150                 };
0151 
0152                 /* global autoconfigured region for contiguous allocations */
0153                 linux,cma {
0154                         compatible = "shared-dma-pool";
0155                         reusable;
0156                         size = <0 0x38000000>;
0157                         alloc-ranges = <0 0x40000000 0 0xB0000000>;
0158                         linux,cma-default;
0159                 };
0160         };
0161 };
0162 
0163 &ecspi1 {
0164         pinctrl-names = "default";
0165         pinctrl-0 = <&pinctrl_ecspi1>;
0166         cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
0167         status = "okay";
0168 };
0169 
0170 &ecspi2 {
0171         pinctrl-names = "default";
0172         pinctrl-0 = <&pinctrl_ecspi2>;
0173         cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>;
0174         status = "okay";
0175 };
0176 
0177 &ecspi3 {
0178         pinctrl-names = "default";
0179         pinctrl-0 = <&pinctrl_ecspi3>;
0180         cs-gpios = <&gpio5 25 GPIO_ACTIVE_LOW>;
0181         status = "okay";
0182 
0183         adc: adc@0 {
0184                 reg = <0>;
0185                 compatible = "microchip,mcp3202";
0186                 /* 100 ksps * 18 */
0187                 spi-max-frequency = <1800000>;
0188                 vref-supply = <&reg_vcc_3v3>;
0189                 #io-channel-cells = <1>;
0190         };
0191 };
0192 
0193 &eqos {
0194         pinctrl-names = "default";
0195         pinctrl-0 = <&pinctrl_eqos>, <&pinctrl_eqos_phy>;
0196         phy-mode = "rgmii-id";
0197         phy-handle = <&ethphy3>;
0198         status = "okay";
0199 
0200         mdio {
0201                 compatible = "snps,dwmac-mdio";
0202                 #address-cells = <1>;
0203                 #size-cells = <0>;
0204 
0205                 ethphy3: ethernet-phy@3 {
0206                         compatible = "ethernet-phy-ieee802.3-c22";
0207                         reg = <3>;
0208                         ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
0209                         ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
0210                         ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
0211                         ti,dp83867-rxctrl-strap-quirk;
0212                         ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
0213                         reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
0214                         reset-assert-us = <500000>;
0215                         reset-deassert-us = <50000>;
0216                         enet-phy-lane-no-swap;
0217                         interrupt-parent = <&gpio4>;
0218                         interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
0219                 };
0220         };
0221 };
0222 
0223 &fec {
0224         pinctrl-names = "default";
0225         pinctrl-0 = <&pinctrl_fec>, <&pinctrl_fec_phy>;
0226         phy-mode = "rgmii-id";
0227         phy-handle = <&ethphy0>;
0228         fsl,magic-packet;
0229         status = "okay";
0230 
0231         mdio {
0232                 #address-cells = <1>;
0233                 #size-cells = <0>;
0234 
0235                 ethphy0: ethernet-phy@0 {
0236                         compatible = "ethernet-phy-ieee802.3-c22";
0237                         reg = <0>;
0238                         ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
0239                         ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
0240                         ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
0241                         ti,dp83867-rxctrl-strap-quirk;
0242                         ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
0243                         reset-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
0244                         reset-assert-us = <500000>;
0245                         reset-deassert-us = <50000>;
0246                         enet-phy-lane-no-swap;
0247                         interrupt-parent = <&gpio4>;
0248                         interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
0249                 };
0250         };
0251 };
0252 
0253 &flexcan1 {
0254         pinctrl-names = "default";
0255         pinctrl-0 = <&pinctrl_flexcan1>;
0256         xceiver-supply = <&reg_vcc_3v3>;
0257         status = "okay";
0258 };
0259 
0260 &flexcan2 {
0261         pinctrl-names = "default";
0262         pinctrl-0 = <&pinctrl_flexcan2>;
0263         xceiver-supply = <&reg_vcc_3v3>;
0264         status = "okay";
0265 };
0266 
0267 &gpio1 {
0268         pinctrl-names = "default";
0269         pinctrl-0 = <&pinctrl_gpio1>;
0270 
0271         gpio-line-names = "GPO1", "GPO0", "", "GPO3",
0272                           "", "", "GPO2", "GPI0",
0273                           "PMIC_IRQ", "GPI1", "OTG_ID", "USB_HUB_RST#",
0274                           "OTG_PWR", "", "GPI2", "GPI3",
0275                           "", "", "", "",
0276                           "", "", "", "",
0277                           "", "", "", "",
0278                           "", "", "", "";
0279 };
0280 
0281 &gpio2 {
0282         pinctrl-names = "default";
0283         pinctrl-0 = <&pinctrl_hoggpio2>;
0284 
0285         gpio-line-names = "", "", "", "",
0286                           "", "", "VCC12V_EN", "PERST#",
0287                           "", "", "CLKREQ#", "PEWAKE#",
0288                           "USDHC2_CD", "", "", "",
0289                           "", "", "", "V_SD3V3_EN",
0290                           "", "", "", "",
0291                           "", "", "", "",
0292                           "", "", "", "";
0293 
0294         perst-hog {
0295                 gpio-hog;
0296                 gpios = <7 0>;
0297                 output-high;
0298                 line-name = "PERST#";
0299         };
0300 
0301         clkreq-hog {
0302                 gpio-hog;
0303                 gpios = <10 0>;
0304                 input;
0305                 line-name = "CLKREQ#";
0306         };
0307 
0308         pewake-hog {
0309                 gpio-hog;
0310                 gpios = <11 0>;
0311                 input;
0312                 line-name = "PEWAKE#";
0313         };
0314 };
0315 
0316 &gpio3 {
0317         gpio-line-names = "", "", "", "",
0318                           "", "", "", "",
0319                           "", "", "", "",
0320                           "", "", "LVDS0_RESET#", "",
0321                           "", "", "", "LVDS0_BLT_EN",
0322                           "LVDS0_PWR_EN", "", "", "",
0323                           "", "", "", "",
0324                           "", "", "", "";
0325 };
0326 
0327 &gpio4 {
0328         pinctrl-names = "default";
0329         pinctrl-0 = <&pinctrl_gpio4>;
0330 
0331         gpio-line-names = "ENET0_RST#", "ENET0_INT#", "ENET1_RST#", "ENET1_INT#",
0332                           "", "", "", "",
0333                           "", "", "", "",
0334                           "", "", "", "",
0335                           "", "", "DP_IRQ", "DSI_EN",
0336                           "HDMI_OC#", "TEMP_EVENT#", "PCIE_CLK_OE#", "",
0337                           "", "", "", "FAN_PWR",
0338                           "RTC_EVENT#", "CODEC_RST#", "", "";
0339 };
0340 
0341 &gpio5 {
0342         gpio-line-names = "", "", "", "LED2",
0343                           "LED1", "LED0", "CSI0_RESET#", "CSI0_SYNC",
0344                           "CSI0_TRIGGER", "CSI0_ENABLE", "", "",
0345                           "", "ECSPI2_SS0", "", "",
0346                           "", "", "", "",
0347                           "", "", "", "",
0348                           "", "ECSPI3_SS0", "SWITCH_A", "SWITCH_B",
0349                           "", "", "", "";
0350 };
0351 
0352 &i2c2 {
0353         clock-frequency = <384000>;
0354         pinctrl-names = "default", "gpio";
0355         pinctrl-0 = <&pinctrl_i2c2>;
0356         pinctrl-1 = <&pinctrl_i2c2_gpio>;
0357         scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0358         sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0359         status = "okay";
0360 
0361         /* NXP SE97BTP with temperature sensor + eeprom */
0362         se97_1c: temperature-sensor-eeprom@1c {
0363                 compatible = "nxp,se97", "jedec,jc-42.4-temp";
0364                 reg = <0x1c>;
0365         };
0366 
0367         at24c02_54: eeprom@54 {
0368                 compatible = "nxp,se97b", "atmel,24c02";
0369                 reg = <0x54>;
0370                 pagesize = <16>;
0371                 vcc-supply = <&reg_vcc_3v3>;
0372         };
0373 };
0374 
0375 &i2c4 {
0376         clock-frequency = <384000>;
0377         pinctrl-names = "default", "gpio";
0378         pinctrl-0 = <&pinctrl_i2c4>;
0379         pinctrl-1 = <&pinctrl_i2c4_gpio>;
0380         scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0381         sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0382         status = "okay";
0383 };
0384 
0385 &i2c6 {
0386         clock-frequency = <384000>;
0387         pinctrl-names = "default", "gpio";
0388         pinctrl-0 = <&pinctrl_i2c6>;
0389         pinctrl-1 = <&pinctrl_i2c6_gpio>;
0390         scl-gpios = <&gpio2 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0391         sda-gpios = <&gpio2 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0392         status = "okay";
0393 };
0394 
0395 &pcf85063 {
0396         /* RTC_EVENT# is connected on MBa8MPxL */
0397         pinctrl-names = "default";
0398         pinctrl-0 = <&pinctrl_pcf85063>;
0399         interrupt-parent = <&gpio4>;
0400         interrupts = <28 IRQ_TYPE_EDGE_FALLING>;
0401 };
0402 
0403 &pwm2 {
0404         pinctrl-names = "default";
0405         pinctrl-0 = <&pinctrl_pwm2>;
0406         status = "disabled";
0407 };
0408 
0409 &pwm3 {
0410         pinctrl-names = "default";
0411         pinctrl-0 = <&pinctrl_pwm3>;
0412         status = "okay";
0413 };
0414 
0415 &snvs_pwrkey {
0416         status = "okay";
0417 };
0418 
0419 &uart1 {
0420         pinctrl-names = "default";
0421         pinctrl-0 = <&pinctrl_uart1>;
0422         assigned-clocks = <&clk IMX8MP_CLK_UART1>;
0423         assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>;
0424         status = "okay";
0425 };
0426 
0427 &uart2 {
0428         pinctrl-names = "default";
0429         pinctrl-0 = <&pinctrl_uart2>;
0430         assigned-clocks = <&clk IMX8MP_CLK_UART2>;
0431         assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>;
0432         status = "okay";
0433 };
0434 
0435 &uart3 {
0436         pinctrl-names = "default";
0437         pinctrl-0 = <&pinctrl_uart3>;
0438         assigned-clocks = <&clk IMX8MP_CLK_UART3>;
0439         assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>;
0440         status = "okay";
0441 };
0442 
0443 &uart4 {
0444         /* console */
0445         pinctrl-names = "default";
0446         pinctrl-0 = <&pinctrl_uart4>;
0447         status = "okay";
0448 };
0449 
0450 &usdhc2 {
0451         pinctrl-names = "default", "state_100mhz", "state_200mhz";
0452         pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
0453         pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
0454         pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
0455         cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
0456         vmmc-supply = <&reg_usdhc2_vmmc>;
0457         no-mmc;
0458         no-sdio;
0459         disable-wp;
0460         bus-width = <4>;
0461         status = "okay";
0462 };
0463 
0464 &iomuxc {
0465         pinctrl_backlight: backlightgrp {
0466                 fsl,pins = <MX8MP_IOMUXC_SAI5_RXFS__GPIO3_IO19          0x14>;
0467         };
0468 
0469         pinctrl_flexcan1: flexcan1grp {
0470                 fsl,pins = <MX8MP_IOMUXC_SAI5_RXD1__CAN1_TX             0x150>,
0471                            <MX8MP_IOMUXC_SAI5_RXD2__CAN1_RX             0x150>;
0472         };
0473 
0474         pinctrl_flexcan2: flexcan2grp {
0475                 fsl,pins = <MX8MP_IOMUXC_SAI5_RXD3__CAN2_TX             0x150>,
0476                            <MX8MP_IOMUXC_SAI5_MCLK__CAN2_RX             0x150>;
0477         };
0478 
0479         /* only on X57, primary used as CSI0 control signals */
0480         pinctrl_ecspi1: ecspi1grp {
0481                 fsl,pins = <MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO       0x1c0>,
0482                            <MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI       0x1c0>,
0483                            <MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK       0x1c0>,
0484                            <MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09         0x1c0>;
0485         };
0486 
0487         /* on X63 and optionally on X57, can also be used as CSI1 control signals */
0488         pinctrl_ecspi2: ecspi2grp {
0489                 fsl,pins = <MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO       0x1c0>,
0490                            <MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI       0x1c0>,
0491                            <MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK       0x1c0>,
0492                            <MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13         0x1c0>;
0493         };
0494 
0495         pinctrl_ecspi3: ecspi3grp {
0496                 fsl,pins = <MX8MP_IOMUXC_UART1_TXD__ECSPI3_MOSI         0x1c0>,
0497                            <MX8MP_IOMUXC_UART1_RXD__ECSPI3_SCLK         0x1c0>,
0498                            <MX8MP_IOMUXC_UART2_RXD__ECSPI3_MISO         0x1c0>,
0499                            <MX8MP_IOMUXC_UART2_TXD__GPIO5_IO25          0x1c0>;
0500         };
0501 
0502         pinctrl_eqos: eqosgrp {
0503                 fsl,pins = <MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC                         0x40000044>,
0504                            <MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO                       0x40000044>,
0505                            <MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0                   0x90>,
0506                            <MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1                   0x90>,
0507                            <MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2                   0x90>,
0508                            <MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3                   0x90>,
0509                            <MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK   0x90>,
0510                            <MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL             0x90>,
0511                            <MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0                   0x12>,
0512                            <MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1                   0x12>,
0513                            <MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2                   0x12>,
0514                            <MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3                   0x12>,
0515                            <MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL             0x12>,
0516                            <MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK   0x14>;
0517         };
0518 
0519         pinctrl_eqos_event: eqosevtgrp {
0520                 fsl,pins = <MX8MP_IOMUXC_SAI2_RXD0__ENET_QOS_1588_EVENT2_OUT            0x100>,
0521                            <MX8MP_IOMUXC_SAI2_TXD0__ENET_QOS_1588_EVENT2_IN             0x1c0>;
0522         };
0523 
0524         pinctrl_eqos_phy: eqosphygrp {
0525                 fsl,pins = <MX8MP_IOMUXC_SAI1_RXD0__GPIO4_IO02                          0x100>,
0526                            <MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03                          0x1c0>;
0527         };
0528 
0529         pinctrl_fec: fecgrp {
0530                 fsl,pins = <MX8MP_IOMUXC_SAI1_RXD2__ENET1_MDC           0x40000044>,
0531                            <MX8MP_IOMUXC_SAI1_RXD3__ENET1_MDIO          0x40000044>,
0532                            <MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0     0x90>,
0533                            <MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1     0x90>,
0534                            <MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2     0x90>,
0535                            <MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3     0x90>,
0536                            <MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC      0x90>,
0537                            <MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL  0x90>,
0538                            <MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0     0x12>,
0539                            <MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1     0x12>,
0540                            <MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2     0x12>,
0541                            <MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3     0x12>,
0542                            <MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL  0x12>,
0543                            <MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC     0x14>;
0544         };
0545 
0546         pinctrl_fec_event: fecevtgrp {
0547                 fsl,pins = <MX8MP_IOMUXC_SAI1_RXFS__ENET1_1588_EVENT0_IN        0x100>,
0548                            <MX8MP_IOMUXC_SAI1_RXC__ENET1_1588_EVENT0_OUT        0x1c0>;
0549         };
0550 
0551         pinctrl_fec_phy: fecphygrp {
0552                 fsl,pins = <MX8MP_IOMUXC_SAI1_RXFS__GPIO4_IO00          0x100>,
0553                            <MX8MP_IOMUXC_SAI1_RXC__GPIO4_IO01           0x1c0>;
0554         };
0555 
0556         pinctrl_fec_phyalt: fecphyaltgrp {
0557                 fsl,pins = <MX8MP_IOMUXC_SAI2_TXFS__GPIO4_IO24          0x180>,
0558                            <MX8MP_IOMUXC_SAI2_TXC__GPIO4_IO25           0x180>;
0559         };
0560 
0561         pinctrl_gpiobutton: gpiobuttongrp {
0562                 fsl,pins = <MX8MP_IOMUXC_UART3_RXD__GPIO5_IO26          0x10>,
0563                            <MX8MP_IOMUXC_UART3_TXD__GPIO5_IO27          0x10>;
0564         };
0565 
0566         pinctrl_gpioled: gpioledgrp {
0567                 fsl,pins = <MX8MP_IOMUXC_SPDIF_EXT_CLK__GPIO5_IO05      0x14>,
0568                            <MX8MP_IOMUXC_SPDIF_RX__GPIO5_IO04           0x14>,
0569                            <MX8MP_IOMUXC_SPDIF_TX__GPIO5_IO03           0x14>;
0570         };
0571 
0572         pinctrl_gpio1: gpio1grp {
0573                 fsl,pins = <MX8MP_IOMUXC_GPIO1_IO00__GPIO1_IO00         0x10>,
0574                            <MX8MP_IOMUXC_GPIO1_IO01__GPIO1_IO01         0x10>,
0575                            <MX8MP_IOMUXC_GPIO1_IO03__GPIO1_IO03         0x10>,
0576                            <MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06         0x10>,
0577                            <MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07         0x80>,
0578                            <MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09         0x80>,
0579                            <MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14         0x80>,
0580                            <MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15         0x80>;
0581         };
0582 
0583         pinctrl_gpio4: gpio4grp {
0584                 fsl,pins = <MX8MP_IOMUXC_SAI1_MCLK__GPIO4_IO20          0x180>,
0585                            <MX8MP_IOMUXC_SAI2_RXC__GPIO4_IO22           0x180>;
0586         };
0587 
0588         pinctrl_hdmi: hdmigrp {
0589                 fsl,pins = <MX8MP_IOMUXC_HDMI_DDC_SCL__HDMIMIX_HDMI_SCL 0x400001c2>,
0590                            <MX8MP_IOMUXC_HDMI_DDC_SDA__HDMIMIX_HDMI_SDA 0x400001c2>,
0591                            <MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD     0x40000010>,
0592                            <MX8MP_IOMUXC_HDMI_CEC__HDMIMIX_HDMI_CEC     0x40000010>;
0593         };
0594 
0595         pinctrl_hoggpio2: hoggpio2grp {
0596                 fsl,pins = <MX8MP_IOMUXC_SD1_DATA5__GPIO2_IO07          0x140>,
0597                            <MX8MP_IOMUXC_SD1_RESET_B__GPIO2_IO10        0x140>,
0598                            <MX8MP_IOMUXC_SD1_STROBE__GPIO2_IO11         0x140>;
0599         };
0600 
0601         pinctrl_i2c2: i2c2grp {
0602                 fsl,pins = <MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL             0x400001e2>,
0603                            <MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA             0x400001e2>;
0604         };
0605 
0606         pinctrl_i2c2_gpio: i2c2-gpiogrp {
0607                 fsl,pins = <MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16           0x400001e2>,
0608                            <MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17           0x400001e2>;
0609         };
0610 
0611         pinctrl_i2c4: i2c4grp {
0612                 fsl,pins = <MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL             0x400001e2>,
0613                            <MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA             0x400001e2>;
0614         };
0615 
0616         pinctrl_i2c4_gpio: i2c4-gpiogrp {
0617                 fsl,pins = <MX8MP_IOMUXC_I2C4_SCL__GPIO5_IO20           0x400001e2>,
0618                            <MX8MP_IOMUXC_I2C4_SDA__GPIO5_IO21           0x400001e2>;
0619         };
0620 
0621         pinctrl_i2c6: i2c6grp {
0622                 fsl,pins = <MX8MP_IOMUXC_SD1_DATA0__I2C6_SCL            0x400001e2>,
0623                            <MX8MP_IOMUXC_SD1_DATA1__I2C6_SDA            0x400001e2>;
0624         };
0625 
0626         pinctrl_i2c6_gpio: i2c6-gpiogrp {
0627                 fsl,pins = <MX8MP_IOMUXC_SD1_DATA0__GPIO2_IO02          0x400001e2>,
0628                            <MX8MP_IOMUXC_SD1_DATA1__GPIO2_IO03          0x400001e2>;
0629         };
0630 
0631         pinctrl_lvdsdisplay: lvdsdisplaygrp {
0632                 fsl,pins = <MX8MP_IOMUXC_SAI5_RXC__GPIO3_IO20           0x10>; /* Power enable */
0633         };
0634 
0635         pinctrl_pcf85063: pcf85063grp {
0636                 fsl,pins = <MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28          0x80>;
0637         };
0638 
0639         /* LVDS Backlight */
0640         pinctrl_pwm2: pwm2grp {
0641                 fsl,pins = <MX8MP_IOMUXC_SAI5_RXD0__PWM2_OUT            0x14>;
0642         };
0643 
0644         /* FAN */
0645         pinctrl_pwm3: pwm3grp {
0646                 fsl,pins = <MX8MP_IOMUXC_I2C3_SDA__PWM3_OUT             0x14>;
0647         };
0648 
0649         pinctrl_reg12v0: reg12v0grp {
0650                 fsl,pins = <MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06          0x140>; /* VCC12V enable */
0651         };
0652 
0653         /* X61 */
0654         pinctrl_uart1: uart1grp {
0655                 fsl,pins = <MX8MP_IOMUXC_SD1_CLK__UART1_DCE_TX          0x140>,
0656                            <MX8MP_IOMUXC_SD1_CMD__UART1_DCE_RX          0x140>;
0657         };
0658 
0659         /* X61 */
0660         pinctrl_uart2: uart2grp {
0661                 fsl,pins = <MX8MP_IOMUXC_SD1_DATA2__UART2_DCE_TX        0x140>,
0662                            <MX8MP_IOMUXC_SD1_DATA3__UART2_DCE_RX        0x140>;
0663         };
0664 
0665         pinctrl_uart3: uart3grp {
0666                 fsl,pins = <MX8MP_IOMUXC_SD1_DATA6__UART3_DCE_TX        0x140>,
0667                            <MX8MP_IOMUXC_SD1_DATA7__UART3_DCE_RX        0x140>;
0668         };
0669 
0670         pinctrl_uart4: uart4grp {
0671                 fsl,pins = <MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX        0x140>,
0672                            <MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX        0x140>;
0673         };
0674 
0675         pinctrl_usdhc2: usdhc2grp {
0676                 fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK            0x192>,
0677                            <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD            0x1d2>,
0678                            <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0        0x1d2>,
0679                            <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1        0x1d2>,
0680                            <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2        0x1d2>,
0681                            <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3        0x1d2>,
0682                            <MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT     0xc0>;
0683         };
0684 
0685         pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
0686                 fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK            0x194>,
0687                            <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD            0x1d4>,
0688                            <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0        0x1d4>,
0689                            <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1        0x1d4>,
0690                            <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2        0x1d4>,
0691                            <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3        0x1d4>,
0692                            <MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT     0xc0>;
0693         };
0694 
0695         pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
0696                 fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK            0x194>,
0697                            <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD            0x1d4>,
0698                            <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0        0x1d4>,
0699                            <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1        0x1d4>,
0700                            <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2        0x1d4>,
0701                            <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3        0x1d4>,
0702                            <MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT     0xc0>;
0703         };
0704 
0705         pinctrl_usdhc2_gpio: usdhc2-gpiogrp {
0706                 fsl,pins = <MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12           0x1c0>;
0707         };
0708 };