1*833e5d42SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2*833e5d42SEmmanuel Vadot/* 3*833e5d42SEmmanuel Vadot * Copyright 2025 GOcontroll B.V. 4*833e5d42SEmmanuel Vadot * Author: Maud Spierings <maudspierings@gocontroll.com> 5*833e5d42SEmmanuel Vadot */ 6*833e5d42SEmmanuel Vadot 7*833e5d42SEmmanuel Vadot/dts-v1/; 8*833e5d42SEmmanuel Vadot 9*833e5d42SEmmanuel Vadot#include "imx8mp-tx8p-ml81.dtsi" 10*833e5d42SEmmanuel Vadot 11*833e5d42SEmmanuel Vadot/ { 12*833e5d42SEmmanuel Vadot compatible = "gocontroll,moduline-display", "fsl,imx8mp"; 13*833e5d42SEmmanuel Vadot chassis-type = "embedded"; 14*833e5d42SEmmanuel Vadot hardware = "Moduline Display V1.06"; 15*833e5d42SEmmanuel Vadot model = "GOcontroll Moduline Display baseboard"; 16*833e5d42SEmmanuel Vadot 17*833e5d42SEmmanuel Vadot aliases { 18*833e5d42SEmmanuel Vadot can0 = &flexcan1; 19*833e5d42SEmmanuel Vadot can1 = &flexcan2; 20*833e5d42SEmmanuel Vadot ethernet0 = &eqos; 21*833e5d42SEmmanuel Vadot ethernet1 = &fec; 22*833e5d42SEmmanuel Vadot mmc0 = &usdhc3; 23*833e5d42SEmmanuel Vadot mmc1 = &usdhc2; 24*833e5d42SEmmanuel Vadot rtc0 = &rtc_pcf; /* i2c rtc is the main rtc */ 25*833e5d42SEmmanuel Vadot rtc1 = &snvs_rtc; 26*833e5d42SEmmanuel Vadot spi0 = &ecspi2; /* spidev number compatibility */ 27*833e5d42SEmmanuel Vadot spi1 = &ecspi1; /* spidev number compatibility */ 28*833e5d42SEmmanuel Vadot }; 29*833e5d42SEmmanuel Vadot 30*833e5d42SEmmanuel Vadot chosen { 31*833e5d42SEmmanuel Vadot stdout-path = "serial0:115200n8"; 32*833e5d42SEmmanuel Vadot }; 33*833e5d42SEmmanuel Vadot 34*833e5d42SEmmanuel Vadot external-sensor-supply { 35*833e5d42SEmmanuel Vadot compatible = "regulator-output"; 36*833e5d42SEmmanuel Vadot vout-supply = <®_5v0_sensor>; 37*833e5d42SEmmanuel Vadot }; 38*833e5d42SEmmanuel Vadot 39*833e5d42SEmmanuel Vadot reg_1v8_per: regulator-1v8-per { 40*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 41*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_reg_1v8>; 42*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 43*833e5d42SEmmanuel Vadot power-supply = <®_3v3_per>; 44*833e5d42SEmmanuel Vadot regulator-max-microvolt = <1800000>; 45*833e5d42SEmmanuel Vadot regulator-min-microvolt = <1800000>; 46*833e5d42SEmmanuel Vadot regulator-name = "1v8-per"; 47*833e5d42SEmmanuel Vadot gpio = <&gpio3 25 GPIO_ACTIVE_HIGH>; 48*833e5d42SEmmanuel Vadot enable-active-high; 49*833e5d42SEmmanuel Vadot }; 50*833e5d42SEmmanuel Vadot 51*833e5d42SEmmanuel Vadot reg_3v3_per: regulator-3v3-per { 52*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 53*833e5d42SEmmanuel Vadot power-supply = <®_6v4>; 54*833e5d42SEmmanuel Vadot regulator-always-on; 55*833e5d42SEmmanuel Vadot regulator-max-microvolt = <3300000>; 56*833e5d42SEmmanuel Vadot regulator-min-microvolt = <3300000>; 57*833e5d42SEmmanuel Vadot regulator-name = "3v3-per"; 58*833e5d42SEmmanuel Vadot }; 59*833e5d42SEmmanuel Vadot 60*833e5d42SEmmanuel Vadot reg_5v0: regulator-5v0 { 61*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 62*833e5d42SEmmanuel Vadot power-supply = <®_6v4>; 63*833e5d42SEmmanuel Vadot regulator-always-on; 64*833e5d42SEmmanuel Vadot regulator-max-microvolt = <5000000>; 65*833e5d42SEmmanuel Vadot regulator-min-microvolt = <5000000>; 66*833e5d42SEmmanuel Vadot regulator-name = "5v0"; 67*833e5d42SEmmanuel Vadot }; 68*833e5d42SEmmanuel Vadot 69*833e5d42SEmmanuel Vadot reg_5v0_sensor: regulator-5v0-sensor { 70*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 71*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_reg_5v0_sensor>; 72*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 73*833e5d42SEmmanuel Vadot regulator-max-microvolt = <5000000>; 74*833e5d42SEmmanuel Vadot regulator-min-microvolt = <5000000>; 75*833e5d42SEmmanuel Vadot regulator-name = "5v0-supply-external-sensor"; 76*833e5d42SEmmanuel Vadot gpio = <&gpio4 9 GPIO_ACTIVE_HIGH>; 77*833e5d42SEmmanuel Vadot enable-active-high; 78*833e5d42SEmmanuel Vadot }; 79*833e5d42SEmmanuel Vadot 80*833e5d42SEmmanuel Vadot reg_6v4: regulator-6v4 { 81*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 82*833e5d42SEmmanuel Vadot regulator-always-on; 83*833e5d42SEmmanuel Vadot regulator-max-microvolt = <6400000>; 84*833e5d42SEmmanuel Vadot regulator-min-microvolt = <6400000>; 85*833e5d42SEmmanuel Vadot regulator-name = "6v4"; 86*833e5d42SEmmanuel Vadot }; 87*833e5d42SEmmanuel Vadot 88*833e5d42SEmmanuel Vadot reg_can1_stby: regulator-can1-stby { 89*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 90*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_flexcan1_reg>; 91*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 92*833e5d42SEmmanuel Vadot regulator-max-microvolt = <3300000>; 93*833e5d42SEmmanuel Vadot regulator-min-microvolt = <3300000>; 94*833e5d42SEmmanuel Vadot regulator-name = "can1-stby"; 95*833e5d42SEmmanuel Vadot gpio = <&gpio4 3 GPIO_ACTIVE_LOW>; 96*833e5d42SEmmanuel Vadot }; 97*833e5d42SEmmanuel Vadot 98*833e5d42SEmmanuel Vadot reg_can2_stby: regulator-can2-stby { 99*833e5d42SEmmanuel Vadot compatible = "regulator-fixed"; 100*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_flexcan2_reg>; 101*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 102*833e5d42SEmmanuel Vadot regulator-max-microvolt = <3300000>; 103*833e5d42SEmmanuel Vadot regulator-min-microvolt = <3300000>; 104*833e5d42SEmmanuel Vadot regulator-name = "can2-stby"; 105*833e5d42SEmmanuel Vadot gpio = <&gpio5 9 GPIO_ACTIVE_LOW>; 106*833e5d42SEmmanuel Vadot }; 107*833e5d42SEmmanuel Vadot 108*833e5d42SEmmanuel Vadot sound { 109*833e5d42SEmmanuel Vadot compatible = "simple-audio-card"; 110*833e5d42SEmmanuel Vadot simple-audio-card,bitclock-master = <&cpudai>; 111*833e5d42SEmmanuel Vadot simple-audio-card,format = "i2s"; 112*833e5d42SEmmanuel Vadot simple-audio-card,frame-master = <&cpudai>; 113*833e5d42SEmmanuel Vadot simple-audio-card,name = "tas2505-audio"; 114*833e5d42SEmmanuel Vadot simple-audio-card,routing = "Speaker", "DAC"; 115*833e5d42SEmmanuel Vadot simple-audio-card,widgets = "Speaker", "Speaker External"; 116*833e5d42SEmmanuel Vadot 117*833e5d42SEmmanuel Vadot simple-audio-card,codec { 118*833e5d42SEmmanuel Vadot sound-dai = <&tas2505>; 119*833e5d42SEmmanuel Vadot }; 120*833e5d42SEmmanuel Vadot 121*833e5d42SEmmanuel Vadot cpudai: simple-audio-card,cpu { 122*833e5d42SEmmanuel Vadot sound-dai = <&sai6>; 123*833e5d42SEmmanuel Vadot }; 124*833e5d42SEmmanuel Vadot }; 125*833e5d42SEmmanuel Vadot 126*833e5d42SEmmanuel Vadot wifi_powerseq: wifi-powerseq { 127*833e5d42SEmmanuel Vadot compatible = "mmc-pwrseq-simple"; 128*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_wl_reg>; 129*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 130*833e5d42SEmmanuel Vadot post-power-on-delay-ms = <100>; 131*833e5d42SEmmanuel Vadot power-off-delay-us = <500000>; 132*833e5d42SEmmanuel Vadot reset-gpios = <&gpio2 19 GPIO_ACTIVE_LOW>; 133*833e5d42SEmmanuel Vadot }; 134*833e5d42SEmmanuel Vadot}; 135*833e5d42SEmmanuel Vadot 136*833e5d42SEmmanuel Vadot&ecspi1 { 137*833e5d42SEmmanuel Vadot cs-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>, 138*833e5d42SEmmanuel Vadot <&gpio1 11 GPIO_ACTIVE_LOW>, 139*833e5d42SEmmanuel Vadot <&gpio1 10 GPIO_ACTIVE_LOW>; 140*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_ecspi1>; 141*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 142*833e5d42SEmmanuel Vadot status = "okay"; 143*833e5d42SEmmanuel Vadot 144*833e5d42SEmmanuel Vadot connector@0 { 145*833e5d42SEmmanuel Vadot compatible = "gocontroll,moduline-module-slot"; 146*833e5d42SEmmanuel Vadot reg = <0>; 147*833e5d42SEmmanuel Vadot interrupt-parent = <&gpio4>; 148*833e5d42SEmmanuel Vadot interrupts = <5 IRQ_TYPE_EDGE_FALLING>; 149*833e5d42SEmmanuel Vadot i2c-bus = <&i2c2>; 150*833e5d42SEmmanuel Vadot reset-gpios = <&gpio5 10 GPIO_ACTIVE_LOW>; 151*833e5d42SEmmanuel Vadot slot-number = <1>; 152*833e5d42SEmmanuel Vadot spi-max-frequency = <54000000>; 153*833e5d42SEmmanuel Vadot sync-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>; 154*833e5d42SEmmanuel Vadot vddhpp-supply = <®_6v4>; 155*833e5d42SEmmanuel Vadot vddp-supply = <®_5v0>; 156*833e5d42SEmmanuel Vadot vdd-supply = <®_3v3_per>; 157*833e5d42SEmmanuel Vadot }; 158*833e5d42SEmmanuel Vadot 159*833e5d42SEmmanuel Vadot connector@1 { 160*833e5d42SEmmanuel Vadot compatible = "gocontroll,moduline-module-slot"; 161*833e5d42SEmmanuel Vadot reg = <1>; 162*833e5d42SEmmanuel Vadot interrupt-parent = <&gpio1>; 163*833e5d42SEmmanuel Vadot interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 164*833e5d42SEmmanuel Vadot i2c-bus = <&i2c2>; 165*833e5d42SEmmanuel Vadot reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; 166*833e5d42SEmmanuel Vadot slot-number = <2>; 167*833e5d42SEmmanuel Vadot spi-max-frequency = <54000000>; 168*833e5d42SEmmanuel Vadot sync-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>; 169*833e5d42SEmmanuel Vadot vddhpp-supply = <®_6v4>; 170*833e5d42SEmmanuel Vadot vddp-supply = <®_5v0>; 171*833e5d42SEmmanuel Vadot vdd-supply = <®_3v3_per>; 172*833e5d42SEmmanuel Vadot }; 173*833e5d42SEmmanuel Vadot 174*833e5d42SEmmanuel Vadot adc@2 { 175*833e5d42SEmmanuel Vadot compatible = "microchip,mcp3004"; 176*833e5d42SEmmanuel Vadot reg = <2>; 177*833e5d42SEmmanuel Vadot spi-max-frequency = <2300000>; 178*833e5d42SEmmanuel Vadot vref-supply = <®_vdd_3v3>; 179*833e5d42SEmmanuel Vadot }; 180*833e5d42SEmmanuel Vadot}; 181*833e5d42SEmmanuel Vadot 182*833e5d42SEmmanuel Vadot&flexcan1 { 183*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_flexcan1>; 184*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 185*833e5d42SEmmanuel Vadot xceiver-supply = <®_can1_stby>; 186*833e5d42SEmmanuel Vadot status = "okay"; 187*833e5d42SEmmanuel Vadot}; 188*833e5d42SEmmanuel Vadot 189*833e5d42SEmmanuel Vadot&flexcan2 { 190*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_flexcan2>; 191*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 192*833e5d42SEmmanuel Vadot xceiver-supply = <®_can2_stby>; 193*833e5d42SEmmanuel Vadot status = "okay"; 194*833e5d42SEmmanuel Vadot}; 195*833e5d42SEmmanuel Vadot 196*833e5d42SEmmanuel Vadot&i2c2 { 197*833e5d42SEmmanuel Vadot clock-frequency = <400000>; 198*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_i2c2>; 199*833e5d42SEmmanuel Vadot pinctrl-1 = <&pinctrl_i2c2_gpio>; 200*833e5d42SEmmanuel Vadot pinctrl-names = "default", "gpio"; 201*833e5d42SEmmanuel Vadot scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 202*833e5d42SEmmanuel Vadot sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 203*833e5d42SEmmanuel Vadot status = "okay"; 204*833e5d42SEmmanuel Vadot}; 205*833e5d42SEmmanuel Vadot 206*833e5d42SEmmanuel Vadot&i2c4 { 207*833e5d42SEmmanuel Vadot clock-frequency = <400000>; 208*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_i2c4>; 209*833e5d42SEmmanuel Vadot pinctrl-1 = <&pinctrl_i2c4_gpio>; 210*833e5d42SEmmanuel Vadot pinctrl-names = "default", "gpio"; 211*833e5d42SEmmanuel Vadot scl-gpios = <&gpio5 12 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 212*833e5d42SEmmanuel Vadot sda-gpios = <&gpio5 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 213*833e5d42SEmmanuel Vadot status = "okay"; 214*833e5d42SEmmanuel Vadot 215*833e5d42SEmmanuel Vadot tas2505: audio-codec@18 { 216*833e5d42SEmmanuel Vadot compatible = "ti,tas2505"; 217*833e5d42SEmmanuel Vadot reg = <0x18>; 218*833e5d42SEmmanuel Vadot clocks = <&clk IMX8MP_CLK_AUDIOMIX_SAI6_MCLK1>; 219*833e5d42SEmmanuel Vadot clock-names = "mclk"; 220*833e5d42SEmmanuel Vadot #sound-dai-cells = <0>; 221*833e5d42SEmmanuel Vadot aic32x4-gpio-func = <0xff 0xff 0xff 0xff 0xff>; 222*833e5d42SEmmanuel Vadot av-supply = <®_1v8_per>; 223*833e5d42SEmmanuel Vadot dv-supply = <®_1v8_per>; 224*833e5d42SEmmanuel Vadot iov-supply = <®_vdd_3v3>; 225*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_tas_reset>; 226*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 227*833e5d42SEmmanuel Vadot reset-gpios = <&gpio3 24 GPIO_ACTIVE_LOW>; 228*833e5d42SEmmanuel Vadot }; 229*833e5d42SEmmanuel Vadot 230*833e5d42SEmmanuel Vadot rtc_pcf: rtc@51 { 231*833e5d42SEmmanuel Vadot compatible = "nxp,pcf85063a"; 232*833e5d42SEmmanuel Vadot reg = <0x51>; 233*833e5d42SEmmanuel Vadot quartz-load-femtofarads = <7000>; 234*833e5d42SEmmanuel Vadot 235*833e5d42SEmmanuel Vadot clock { 236*833e5d42SEmmanuel Vadot compatible = "fixed-clock"; 237*833e5d42SEmmanuel Vadot #clock-cells = <0>; 238*833e5d42SEmmanuel Vadot clock-frequency = <32768>; 239*833e5d42SEmmanuel Vadot }; 240*833e5d42SEmmanuel Vadot }; 241*833e5d42SEmmanuel Vadot}; 242*833e5d42SEmmanuel Vadot 243*833e5d42SEmmanuel Vadot&iomuxc { 244*833e5d42SEmmanuel Vadot pinctrl_bt: btgrp { 245*833e5d42SEmmanuel Vadot fsl,pins = < 246*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14 247*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 248*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 249*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE | MX8MP_HYS_SCHMITT) 250*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15 251*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 252*833e5d42SEmmanuel Vadot >; 253*833e5d42SEmmanuel Vadot }; 254*833e5d42SEmmanuel Vadot 255*833e5d42SEmmanuel Vadot pinctrl_ecspi1: ecspi1grp { 256*833e5d42SEmmanuel Vadot fsl,pins = < 257*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI 258*833e5d42SEmmanuel Vadot MX8MP_DSE_X4 259*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO 260*833e5d42SEmmanuel Vadot (MX8MP_DSE_X4 | MX8MP_HYS_SCHMITT) 261*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK 262*833e5d42SEmmanuel Vadot MX8MP_DSE_X4 263*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12 264*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 265*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO11__GPIO1_IO11 266*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 267*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 268*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 269*833e5d42SEmmanuel Vadot >; 270*833e5d42SEmmanuel Vadot }; 271*833e5d42SEmmanuel Vadot 272*833e5d42SEmmanuel Vadot pinctrl_flexcan1: flexcan1grp { 273*833e5d42SEmmanuel Vadot fsl,pins = < 274*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SPDIF_RX__CAN1_RX 275*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 276*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SPDIF_TX__CAN1_TX 277*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 278*833e5d42SEmmanuel Vadot >; 279*833e5d42SEmmanuel Vadot }; 280*833e5d42SEmmanuel Vadot 281*833e5d42SEmmanuel Vadot pinctrl_flexcan1_reg: flexcan1reggrp { 282*833e5d42SEmmanuel Vadot fsl,pins = < 283*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03 284*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 285*833e5d42SEmmanuel Vadot >; 286*833e5d42SEmmanuel Vadot }; 287*833e5d42SEmmanuel Vadot 288*833e5d42SEmmanuel Vadot pinctrl_flexcan2: flexcan2grp { 289*833e5d42SEmmanuel Vadot fsl,pins = < 290*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_UART3_TXD__CAN2_RX 291*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 292*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_UART3_RXD__CAN2_TX 293*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 294*833e5d42SEmmanuel Vadot >; 295*833e5d42SEmmanuel Vadot }; 296*833e5d42SEmmanuel Vadot 297*833e5d42SEmmanuel Vadot pinctrl_flexcan2_reg: flexcan2reggrp { 298*833e5d42SEmmanuel Vadot fsl,pins = < 299*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09 300*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 301*833e5d42SEmmanuel Vadot >; 302*833e5d42SEmmanuel Vadot }; 303*833e5d42SEmmanuel Vadot 304*833e5d42SEmmanuel Vadot pinctrl_i2c2: i2c2grp { 305*833e5d42SEmmanuel Vadot fsl,pins = < 306*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL 307*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 308*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA 309*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 310*833e5d42SEmmanuel Vadot >; 311*833e5d42SEmmanuel Vadot }; 312*833e5d42SEmmanuel Vadot 313*833e5d42SEmmanuel Vadot pinctrl_i2c2_gpio: i2c2-gpiogrp { 314*833e5d42SEmmanuel Vadot fsl,pins = < 315*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16 316*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 317*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17 318*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 319*833e5d42SEmmanuel Vadot >; 320*833e5d42SEmmanuel Vadot }; 321*833e5d42SEmmanuel Vadot 322*833e5d42SEmmanuel Vadot pinctrl_i2c4: i2c4grp { 323*833e5d42SEmmanuel Vadot fsl,pins = < 324*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI2_MISO__I2C4_SCL 325*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 326*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI2_SS0__I2C4_SDA 327*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 328*833e5d42SEmmanuel Vadot >; 329*833e5d42SEmmanuel Vadot }; 330*833e5d42SEmmanuel Vadot 331*833e5d42SEmmanuel Vadot pinctrl_i2c4_gpio: i2c4-gpiogrp { 332*833e5d42SEmmanuel Vadot fsl,pins = < 333*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI2_MISO__GPIO5_IO12 334*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 335*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13 336*833e5d42SEmmanuel Vadot MX8MP_I2C_DEFAULT 337*833e5d42SEmmanuel Vadot >; 338*833e5d42SEmmanuel Vadot }; 339*833e5d42SEmmanuel Vadot 340*833e5d42SEmmanuel Vadot pinctrl_usdhc2: pinctrlusdhc2grp { 341*833e5d42SEmmanuel Vadot fsl,pins = < 342*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 343*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_ENABLE) 344*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 345*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_USDHC_DATA_DEFAULT) 346*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 347*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_USDHC_DATA_DEFAULT) 348*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 349*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_USDHC_DATA_DEFAULT) 350*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 351*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_USDHC_DATA_DEFAULT) 352*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 353*833e5d42SEmmanuel Vadot (MX8MP_DSE_X2 | MX8MP_USDHC_DATA_DEFAULT) 354*833e5d42SEmmanuel Vadot >; 355*833e5d42SEmmanuel Vadot }; 356*833e5d42SEmmanuel Vadot 357*833e5d42SEmmanuel Vadot pinctrl_reg_1v8: reg-1v8-grp { 358*833e5d42SEmmanuel Vadot fsl,pins = < 359*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI5_MCLK__GPIO3_IO25 360*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 361*833e5d42SEmmanuel Vadot >; 362*833e5d42SEmmanuel Vadot }; 363*833e5d42SEmmanuel Vadot 364*833e5d42SEmmanuel Vadot pinctrl_reg_5v0_sensor: reg-5v0-sensorgrp { 365*833e5d42SEmmanuel Vadot fsl,pins = < 366*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_RXD7__GPIO4_IO09 367*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 368*833e5d42SEmmanuel Vadot >; 369*833e5d42SEmmanuel Vadot }; 370*833e5d42SEmmanuel Vadot 371*833e5d42SEmmanuel Vadot pinctrl_sai6: sai6grp { 372*833e5d42SEmmanuel Vadot fsl,pins = < 373*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_TXD6__AUDIOMIX_SAI6_TX_SYNC 374*833e5d42SEmmanuel Vadot (MX8MP_DSE_X6 | MX8MP_FSEL_FAST | MX8MP_HYS_SCHMITT) 375*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_RXD4__AUDIOMIX_SAI6_TX_BCLK 376*833e5d42SEmmanuel Vadot (MX8MP_DSE_X6 | MX8MP_FSEL_FAST | MX8MP_HYS_SCHMITT) 377*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_TXD5__AUDIOMIX_SAI6_TX_DATA00 378*833e5d42SEmmanuel Vadot (MX8MP_DSE_X6 | MX8MP_FSEL_FAST | MX8MP_HYS_SCHMITT) 379*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_TXD7__AUDIOMIX_SAI6_MCLK 380*833e5d42SEmmanuel Vadot (MX8MP_DSE_X6 | MX8MP_FSEL_FAST | MX8MP_HYS_SCHMITT) 381*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI1_RXD5__AUDIOMIX_SAI6_RX_DATA00 382*833e5d42SEmmanuel Vadot (MX8MP_DSE_X6 | MX8MP_FSEL_FAST | MX8MP_HYS_SCHMITT) 383*833e5d42SEmmanuel Vadot >; 384*833e5d42SEmmanuel Vadot }; 385*833e5d42SEmmanuel Vadot 386*833e5d42SEmmanuel Vadot pinctrl_tas_reset: tasresetgrp { 387*833e5d42SEmmanuel Vadot fsl,pins = < 388*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI5_RXD3__GPIO3_IO24 389*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 390*833e5d42SEmmanuel Vadot >; 391*833e5d42SEmmanuel Vadot }; 392*833e5d42SEmmanuel Vadot 393*833e5d42SEmmanuel Vadot pinctrl_uart1: uart1grp { 394*833e5d42SEmmanuel Vadot fsl,pins = < 395*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 396*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 397*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_UART1_TXD__UART1_DCE_TX 398*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 399*833e5d42SEmmanuel Vadot >; 400*833e5d42SEmmanuel Vadot }; 401*833e5d42SEmmanuel Vadot 402*833e5d42SEmmanuel Vadot pinctrl_uart2: uart2grp { 403*833e5d42SEmmanuel Vadot fsl,pins = < 404*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 405*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 406*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 407*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 408*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI3_RXD__UART2_DCE_RTS 409*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 410*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SAI3_RXC__UART2_DCE_CTS 411*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_PULL_ENABLE) 412*833e5d42SEmmanuel Vadot >; 413*833e5d42SEmmanuel Vadot }; 414*833e5d42SEmmanuel Vadot 415*833e5d42SEmmanuel Vadot pinctrl_wdog: wdoggrp { 416*833e5d42SEmmanuel Vadot fsl,pins = < 417*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 418*833e5d42SEmmanuel Vadot (MX8MP_DSE_X6 | MX8MP_HYS_SCHMITT) 419*833e5d42SEmmanuel Vadot >; 420*833e5d42SEmmanuel Vadot }; 421*833e5d42SEmmanuel Vadot 422*833e5d42SEmmanuel Vadot pinctrl_wl_int: wlintgrp { 423*833e5d42SEmmanuel Vadot fsl,pins = < 424*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO13__GPIO1_IO13 425*833e5d42SEmmanuel Vadot (MX8MP_PULL_UP | MX8MP_HYS_SCHMITT | MX8MP_PULL_ENABLE) 426*833e5d42SEmmanuel Vadot >; 427*833e5d42SEmmanuel Vadot }; 428*833e5d42SEmmanuel Vadot 429*833e5d42SEmmanuel Vadot pinctrl_wl_reg: wlreggrp { 430*833e5d42SEmmanuel Vadot fsl,pins = < 431*833e5d42SEmmanuel Vadot MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 432*833e5d42SEmmanuel Vadot MX8MP_DSE_X1 433*833e5d42SEmmanuel Vadot >; 434*833e5d42SEmmanuel Vadot }; 435*833e5d42SEmmanuel Vadot}; 436*833e5d42SEmmanuel Vadot 437*833e5d42SEmmanuel Vadot&sai6 { 438*833e5d42SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_SAI6>; 439*833e5d42SEmmanuel Vadot assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; 440*833e5d42SEmmanuel Vadot assigned-clock-rates = <12288000>; 441*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_sai6>; 442*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 443*833e5d42SEmmanuel Vadot fsl,sai-mclk-direction-output; 444*833e5d42SEmmanuel Vadot status = "okay"; 445*833e5d42SEmmanuel Vadot}; 446*833e5d42SEmmanuel Vadot 447*833e5d42SEmmanuel Vadot&uart1 { 448*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_uart1>; 449*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 450*833e5d42SEmmanuel Vadot status = "okay"; 451*833e5d42SEmmanuel Vadot}; 452*833e5d42SEmmanuel Vadot 453*833e5d42SEmmanuel Vadot&uart2 { 454*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_uart2>; 455*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 456*833e5d42SEmmanuel Vadot uart-has-rtscts; 457*833e5d42SEmmanuel Vadot status = "okay"; 458*833e5d42SEmmanuel Vadot 459*833e5d42SEmmanuel Vadot bluetooth { 460*833e5d42SEmmanuel Vadot compatible = "infineon,cyw43439-bt", "brcm,bcm4329-bt"; 461*833e5d42SEmmanuel Vadot interrupt-parent = <&gpio1>; 462*833e5d42SEmmanuel Vadot interrupts = <12 IRQ_TYPE_EDGE_FALLING>; 463*833e5d42SEmmanuel Vadot interrupt-names = "host-wakeup"; 464*833e5d42SEmmanuel Vadot device-wakeup-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; 465*833e5d42SEmmanuel Vadot max-speed = <921600>; 466*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_bt>; 467*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 468*833e5d42SEmmanuel Vadot shutdown-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>; 469*833e5d42SEmmanuel Vadot vbat-supply = <®_3v3_per>; 470*833e5d42SEmmanuel Vadot vddio-supply = <®_3v3_per>; 471*833e5d42SEmmanuel Vadot }; 472*833e5d42SEmmanuel Vadot}; 473*833e5d42SEmmanuel Vadot 474*833e5d42SEmmanuel Vadot&usb3_0 { 475*833e5d42SEmmanuel Vadot status = "okay"; 476*833e5d42SEmmanuel Vadot}; 477*833e5d42SEmmanuel Vadot 478*833e5d42SEmmanuel Vadot&usb3_1 { 479*833e5d42SEmmanuel Vadot status = "okay"; 480*833e5d42SEmmanuel Vadot}; 481*833e5d42SEmmanuel Vadot 482*833e5d42SEmmanuel Vadot&usb3_phy0 { 483*833e5d42SEmmanuel Vadot status = "okay"; 484*833e5d42SEmmanuel Vadot}; 485*833e5d42SEmmanuel Vadot 486*833e5d42SEmmanuel Vadot&usb3_phy1 { 487*833e5d42SEmmanuel Vadot status = "okay"; 488*833e5d42SEmmanuel Vadot}; 489*833e5d42SEmmanuel Vadot 490*833e5d42SEmmanuel Vadot&usb_dwc3_0 { 491*833e5d42SEmmanuel Vadot dr_mode = "peripheral"; 492*833e5d42SEmmanuel Vadot}; 493*833e5d42SEmmanuel Vadot 494*833e5d42SEmmanuel Vadot&usdhc2 { 495*833e5d42SEmmanuel Vadot #address-cells = <1>; 496*833e5d42SEmmanuel Vadot #size-cells = <0>; 497*833e5d42SEmmanuel Vadot assigned-clocks = <&clk IMX8MP_CLK_USDHC2>; 498*833e5d42SEmmanuel Vadot assigned-clock-rates = <50000000>; 499*833e5d42SEmmanuel Vadot cap-power-off-card; 500*833e5d42SEmmanuel Vadot keep-power-in-suspend; 501*833e5d42SEmmanuel Vadot max-frequency = <50000000>; 502*833e5d42SEmmanuel Vadot mmc-pwrseq = <&wifi_powerseq>; 503*833e5d42SEmmanuel Vadot non-removable; 504*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_usdhc2>; 505*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 506*833e5d42SEmmanuel Vadot sd-uhs-sdr25; 507*833e5d42SEmmanuel Vadot vmmc-supply = <®_3v3_per>; 508*833e5d42SEmmanuel Vadot status = "okay"; 509*833e5d42SEmmanuel Vadot 510*833e5d42SEmmanuel Vadot wifi@1 { 511*833e5d42SEmmanuel Vadot compatible = "infineon,cyw43439-fmac", "brcm,bcm4329-fmac"; 512*833e5d42SEmmanuel Vadot reg = <1>; 513*833e5d42SEmmanuel Vadot interrupt-parent = <&gpio1>; 514*833e5d42SEmmanuel Vadot interrupts = <13 IRQ_TYPE_LEVEL_LOW>; 515*833e5d42SEmmanuel Vadot interrupt-names = "host-wake"; 516*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_wl_int>; 517*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 518*833e5d42SEmmanuel Vadot brcm,board-type = "GOcontroll,moduline"; 519*833e5d42SEmmanuel Vadot }; 520*833e5d42SEmmanuel Vadot}; 521*833e5d42SEmmanuel Vadot 522*833e5d42SEmmanuel Vadot&wdog1 { 523*833e5d42SEmmanuel Vadot pinctrl-0 = <&pinctrl_wdog>; 524*833e5d42SEmmanuel Vadot pinctrl-names = "default"; 525*833e5d42SEmmanuel Vadot fsl,ext-reset-output; 526*833e5d42SEmmanuel Vadot status = "okay"; 527*833e5d42SEmmanuel Vadot}; 528