1*90bbe88eSMax Krummenacher// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2*90bbe88eSMax Krummenacher/* 3*90bbe88eSMax Krummenacher * Copyright (C) 2025 Toradex 4*90bbe88eSMax Krummenacher * 5*90bbe88eSMax Krummenacher * https://www.toradex.com/computer-on-modules/smarc-arm-family/nxp-imx95 6*90bbe88eSMax Krummenacher */ 7*90bbe88eSMax Krummenacher 8*90bbe88eSMax Krummenacher#include <dt-bindings/input/input.h> 9*90bbe88eSMax Krummenacher#include <dt-bindings/net/ti-dp83867.h> 10*90bbe88eSMax Krummenacher#include "imx95.dtsi" 11*90bbe88eSMax Krummenacher 12*90bbe88eSMax Krummenacher/ { 13*90bbe88eSMax Krummenacher aliases { 14*90bbe88eSMax Krummenacher can0 = &flexcan1; 15*90bbe88eSMax Krummenacher can1 = &flexcan2; 16*90bbe88eSMax Krummenacher ethernet0 = &enetc_port0; 17*90bbe88eSMax Krummenacher ethernet1 = &enetc_port1; 18*90bbe88eSMax Krummenacher mmc0 = &usdhc1; 19*90bbe88eSMax Krummenacher mmc1 = &usdhc2; 20*90bbe88eSMax Krummenacher mmc2 = &usdhc3; 21*90bbe88eSMax Krummenacher rtc0 = &rtc_i2c; 22*90bbe88eSMax Krummenacher rtc1 = &scmi_bbm; 23*90bbe88eSMax Krummenacher serial0 = &lpuart2; 24*90bbe88eSMax Krummenacher serial1 = &lpuart1; 25*90bbe88eSMax Krummenacher serial3 = &lpuart3; 26*90bbe88eSMax Krummenacher }; 27*90bbe88eSMax Krummenacher 28*90bbe88eSMax Krummenacher chosen { 29*90bbe88eSMax Krummenacher stdout-path = "serial1:115200n8"; 30*90bbe88eSMax Krummenacher }; 31*90bbe88eSMax Krummenacher 32*90bbe88eSMax Krummenacher clk_dsi2dp_bridge: clock-dsi2dp-bridge { 33*90bbe88eSMax Krummenacher compatible = "fixed-clock"; 34*90bbe88eSMax Krummenacher #clock-cells = <0>; 35*90bbe88eSMax Krummenacher clock-frequency = <27000000>; 36*90bbe88eSMax Krummenacher }; 37*90bbe88eSMax Krummenacher 38*90bbe88eSMax Krummenacher clk_serdes_eth_ref: clock-eth-ref { 39*90bbe88eSMax Krummenacher compatible = "gpio-gate-clock"; 40*90bbe88eSMax Krummenacher #clock-cells = <0>; 41*90bbe88eSMax Krummenacher /* CTRL_ETH_REF_CLK_STBY# */ 42*90bbe88eSMax Krummenacher enable-gpios = <&som_gpio_expander_1 13 GPIO_ACTIVE_HIGH>; 43*90bbe88eSMax Krummenacher }; 44*90bbe88eSMax Krummenacher 45*90bbe88eSMax Krummenacher connector { 46*90bbe88eSMax Krummenacher compatible = "gpio-usb-b-connector", "usb-b-connector"; 47*90bbe88eSMax Krummenacher /* SMARC P64 - USB0_OTG_ID */ 48*90bbe88eSMax Krummenacher id-gpios = <&som_gpio_expander_0 3 GPIO_ACTIVE_HIGH>; 49*90bbe88eSMax Krummenacher label = "USB0"; 50*90bbe88eSMax Krummenacher self-powered; 51*90bbe88eSMax Krummenacher type = "micro"; 52*90bbe88eSMax Krummenacher vbus-supply = <®_usb0_vbus>; 53*90bbe88eSMax Krummenacher 54*90bbe88eSMax Krummenacher port { 55*90bbe88eSMax Krummenacher usb_dr_connector: endpoint { 56*90bbe88eSMax Krummenacher remote-endpoint = <&usb0_otg_id>; 57*90bbe88eSMax Krummenacher }; 58*90bbe88eSMax Krummenacher }; 59*90bbe88eSMax Krummenacher }; 60*90bbe88eSMax Krummenacher 61*90bbe88eSMax Krummenacher gpio-keys { 62*90bbe88eSMax Krummenacher compatible = "gpio-keys"; 63*90bbe88eSMax Krummenacher 64*90bbe88eSMax Krummenacher smarc_key_sleep: key-sleep { 65*90bbe88eSMax Krummenacher gpios = <&som_ec_gpio_expander 4 GPIO_ACTIVE_LOW>; 66*90bbe88eSMax Krummenacher label = "SMARC_SLEEP#"; 67*90bbe88eSMax Krummenacher wakeup-source; 68*90bbe88eSMax Krummenacher linux,code = <KEY_SLEEP>; 69*90bbe88eSMax Krummenacher }; 70*90bbe88eSMax Krummenacher 71*90bbe88eSMax Krummenacher smarc_switch_lid: switch-lid { 72*90bbe88eSMax Krummenacher gpios = <&som_ec_gpio_expander 2 GPIO_ACTIVE_LOW>; 73*90bbe88eSMax Krummenacher label = "SMARC_LID#"; 74*90bbe88eSMax Krummenacher linux,code = <SW_LID>; 75*90bbe88eSMax Krummenacher linux,input-type = <EV_SW>; 76*90bbe88eSMax Krummenacher }; 77*90bbe88eSMax Krummenacher }; 78*90bbe88eSMax Krummenacher 79*90bbe88eSMax Krummenacher reg_module_1p8v: regulator-module-1p8v { 80*90bbe88eSMax Krummenacher compatible = "regulator-fixed"; 81*90bbe88eSMax Krummenacher regulator-max-microvolt = <1800000>; 82*90bbe88eSMax Krummenacher regulator-min-microvolt = <1800000>; 83*90bbe88eSMax Krummenacher regulator-name = "On-module +V1.8"; 84*90bbe88eSMax Krummenacher }; 85*90bbe88eSMax Krummenacher 86*90bbe88eSMax Krummenacher /* Non PMIC On-module Supplies */ 87*90bbe88eSMax Krummenacher reg_module_dp_1p2v: regulator-module-dp-1p2v { 88*90bbe88eSMax Krummenacher compatible = "regulator-fixed"; 89*90bbe88eSMax Krummenacher regulator-max-microvolt = <1200000>; 90*90bbe88eSMax Krummenacher regulator-min-microvolt = <1200000>; 91*90bbe88eSMax Krummenacher regulator-name = "On-module +V1.2_DP"; 92*90bbe88eSMax Krummenacher vin-supply = <®_module_1p8v>; 93*90bbe88eSMax Krummenacher }; 94*90bbe88eSMax Krummenacher 95*90bbe88eSMax Krummenacher reg_usb0_vbus: regulator-usb0-vbus { 96*90bbe88eSMax Krummenacher compatible = "regulator-fixed"; 97*90bbe88eSMax Krummenacher /* SMARC P62 - USB0_EN_OC# */ 98*90bbe88eSMax Krummenacher gpios = <&som_gpio_expander_0 4 GPIO_ACTIVE_HIGH>; 99*90bbe88eSMax Krummenacher enable-active-high; 100*90bbe88eSMax Krummenacher regulator-name = "USB0_EN_OC#"; 101*90bbe88eSMax Krummenacher }; 102*90bbe88eSMax Krummenacher 103*90bbe88eSMax Krummenacher reg_usb1_vbus: regulator-usb1-vbus { 104*90bbe88eSMax Krummenacher compatible = "regulator-fixed"; 105*90bbe88eSMax Krummenacher /* CTRL_V_BUS_USB_HUB or SMARC P71 - USB2_EN_OC# */ 106*90bbe88eSMax Krummenacher gpios = <&som_gpio_expander_0 6 GPIO_ACTIVE_HIGH>; 107*90bbe88eSMax Krummenacher enable-active-high; 108*90bbe88eSMax Krummenacher regulator-name = "CTRL_V_BUS_USB_HUB"; 109*90bbe88eSMax Krummenacher }; 110*90bbe88eSMax Krummenacher 111*90bbe88eSMax Krummenacher reg_usdhc2_vmmc: regulator-vmmc-usdhc2 { 112*90bbe88eSMax Krummenacher compatible = "regulator-fixed"; 113*90bbe88eSMax Krummenacher pinctrl-names = "default"; 114*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_usdhc2_pwr_en>; 115*90bbe88eSMax Krummenacher gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>; 116*90bbe88eSMax Krummenacher enable-active-high; 117*90bbe88eSMax Krummenacher off-on-delay-us = <100000>; 118*90bbe88eSMax Krummenacher regulator-max-microvolt = <3300000>; 119*90bbe88eSMax Krummenacher regulator-min-microvolt = <3300000>; 120*90bbe88eSMax Krummenacher regulator-name = "SDIO_PWR_EN"; 121*90bbe88eSMax Krummenacher startup-delay-us = <20000>; 122*90bbe88eSMax Krummenacher }; 123*90bbe88eSMax Krummenacher 124*90bbe88eSMax Krummenacher reg_usdhc2_vqmmc: regulator-usdhc2-vqmmc { 125*90bbe88eSMax Krummenacher compatible = "regulator-gpio"; 126*90bbe88eSMax Krummenacher pinctrl-names = "default"; 127*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_usdhc2_vsel>; 128*90bbe88eSMax Krummenacher gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; 129*90bbe88eSMax Krummenacher regulator-max-microvolt = <3300000>; 130*90bbe88eSMax Krummenacher regulator-min-microvolt = <1800000>; 131*90bbe88eSMax Krummenacher states = <1800000 0x1>, 132*90bbe88eSMax Krummenacher <3300000 0x0>; 133*90bbe88eSMax Krummenacher regulator-name = "PMIC_SD2_VSEL"; 134*90bbe88eSMax Krummenacher }; 135*90bbe88eSMax Krummenacher 136*90bbe88eSMax Krummenacher reg_wifi_en: regulator-wifi-en { 137*90bbe88eSMax Krummenacher compatible = "regulator-fixed"; 138*90bbe88eSMax Krummenacher /* CTRL_EN_WIFI */ 139*90bbe88eSMax Krummenacher gpios = <&som_gpio_expander_1 7 GPIO_ACTIVE_HIGH>; 140*90bbe88eSMax Krummenacher enable-active-high; 141*90bbe88eSMax Krummenacher regulator-max-microvolt = <3300000>; 142*90bbe88eSMax Krummenacher regulator-min-microvolt = <3300000>; 143*90bbe88eSMax Krummenacher regulator-name = "CTRL_EN_WIFI"; 144*90bbe88eSMax Krummenacher startup-delay-us = <2000>; 145*90bbe88eSMax Krummenacher }; 146*90bbe88eSMax Krummenacher 147*90bbe88eSMax Krummenacher reserved-memory { 148*90bbe88eSMax Krummenacher #address-cells = <2>; 149*90bbe88eSMax Krummenacher #size-cells = <2>; 150*90bbe88eSMax Krummenacher ranges; 151*90bbe88eSMax Krummenacher 152*90bbe88eSMax Krummenacher linux_cma: linux,cma { 153*90bbe88eSMax Krummenacher compatible = "shared-dma-pool"; 154*90bbe88eSMax Krummenacher reusable; 155*90bbe88eSMax Krummenacher size = <0 0x3c000000>; 156*90bbe88eSMax Krummenacher alloc-ranges = <0 0x80000000 0 0x7F000000>; 157*90bbe88eSMax Krummenacher linux,cma-default; 158*90bbe88eSMax Krummenacher }; 159*90bbe88eSMax Krummenacher }; 160*90bbe88eSMax Krummenacher}; 161*90bbe88eSMax Krummenacher 162*90bbe88eSMax Krummenacher/* SMARC GBE0 */ 163*90bbe88eSMax Krummenacher&enetc_port0 { 164*90bbe88eSMax Krummenacher pinctrl-names = "default"; 165*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_enetc0>, <&pinctrl_enetc0_1588_tmr>; 166*90bbe88eSMax Krummenacher phy-handle = <ðphy1>; 167*90bbe88eSMax Krummenacher phy-mode = "rgmii-id"; 168*90bbe88eSMax Krummenacher}; 169*90bbe88eSMax Krummenacher 170*90bbe88eSMax Krummenacher/* SMARC GBE1 */ 171*90bbe88eSMax Krummenacher&enetc_port1 { 172*90bbe88eSMax Krummenacher pinctrl-names = "default"; 173*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_enetc1>, <&pinctrl_enetc1_1588_tmr>; 174*90bbe88eSMax Krummenacher phy-handle = <ðphy2>; 175*90bbe88eSMax Krummenacher phy-mode = "rgmii-id"; 176*90bbe88eSMax Krummenacher}; 177*90bbe88eSMax Krummenacher 178*90bbe88eSMax Krummenacher/* SMARC CAN0 */ 179*90bbe88eSMax Krummenacher&flexcan1 { 180*90bbe88eSMax Krummenacher pinctrl-names = "default"; 181*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_flexcan1>; 182*90bbe88eSMax Krummenacher}; 183*90bbe88eSMax Krummenacher 184*90bbe88eSMax Krummenacher/* SMARC CAN1 */ 185*90bbe88eSMax Krummenacher&flexcan2 { 186*90bbe88eSMax Krummenacher pinctrl-names = "default"; 187*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_flexcan2>; 188*90bbe88eSMax Krummenacher}; 189*90bbe88eSMax Krummenacher 190*90bbe88eSMax Krummenacher&gpio1 { 191*90bbe88eSMax Krummenacher gpio-line-names = "", /* 0 */ 192*90bbe88eSMax Krummenacher "", 193*90bbe88eSMax Krummenacher "SMARC_I2C_GP_CK", 194*90bbe88eSMax Krummenacher "SMARC_I2C_GP_DAT", 195*90bbe88eSMax Krummenacher "", 196*90bbe88eSMax Krummenacher "", 197*90bbe88eSMax Krummenacher "", 198*90bbe88eSMax Krummenacher "", 199*90bbe88eSMax Krummenacher "", 200*90bbe88eSMax Krummenacher "", 201*90bbe88eSMax Krummenacher "", /* 10 */ 202*90bbe88eSMax Krummenacher "", 203*90bbe88eSMax Krummenacher "", 204*90bbe88eSMax Krummenacher "", 205*90bbe88eSMax Krummenacher "CTRL_IO_EXP_INT_B"; 206*90bbe88eSMax Krummenacher status = "okay"; 207*90bbe88eSMax Krummenacher}; 208*90bbe88eSMax Krummenacher 209*90bbe88eSMax Krummenacher&gpio2 { 210*90bbe88eSMax Krummenacher gpio-line-names = "SMARC_SPI0_CS0#", /* 0 */ 211*90bbe88eSMax Krummenacher "", 212*90bbe88eSMax Krummenacher "", 213*90bbe88eSMax Krummenacher "", 214*90bbe88eSMax Krummenacher "", 215*90bbe88eSMax Krummenacher "", 216*90bbe88eSMax Krummenacher "SMARC_GPIO5", 217*90bbe88eSMax Krummenacher "", 218*90bbe88eSMax Krummenacher "I2C_CAM_DAT", 219*90bbe88eSMax Krummenacher "I2C_CAM_CK", 220*90bbe88eSMax Krummenacher "SMARC_GPIO12", /* 10 */ 221*90bbe88eSMax Krummenacher "SMARC_GPIO13", 222*90bbe88eSMax Krummenacher "", 223*90bbe88eSMax Krummenacher "", 224*90bbe88eSMax Krummenacher "", 225*90bbe88eSMax Krummenacher "", 226*90bbe88eSMax Krummenacher "", 227*90bbe88eSMax Krummenacher "", 228*90bbe88eSMax Krummenacher "SMARC_SPI1_CS0#", 229*90bbe88eSMax Krummenacher "", 230*90bbe88eSMax Krummenacher "", /* 20 */ 231*90bbe88eSMax Krummenacher "", 232*90bbe88eSMax Krummenacher "SMARC_I2C_LCD_DAT", 233*90bbe88eSMax Krummenacher "SMARC_I2C_LCD_CK", 234*90bbe88eSMax Krummenacher "SMARC_SPI0_CS1#", 235*90bbe88eSMax Krummenacher "", 236*90bbe88eSMax Krummenacher "", 237*90bbe88eSMax Krummenacher "", 238*90bbe88eSMax Krummenacher "SMARC_I2C_PM_DAT", 239*90bbe88eSMax Krummenacher "SMARC_I2C_PM_CK", 240*90bbe88eSMax Krummenacher "I2C_SOM_DAT", /* 30 */ 241*90bbe88eSMax Krummenacher "I2C_SOM_CK"; 242*90bbe88eSMax Krummenacher status = "okay"; 243*90bbe88eSMax Krummenacher}; 244*90bbe88eSMax Krummenacher 245*90bbe88eSMax Krummenacher&gpio3 { 246*90bbe88eSMax Krummenacher gpio-line-names = "SMARC_SDIO_CD#", /* 0 */ 247*90bbe88eSMax Krummenacher "", 248*90bbe88eSMax Krummenacher "", 249*90bbe88eSMax Krummenacher "", 250*90bbe88eSMax Krummenacher "", 251*90bbe88eSMax Krummenacher "", 252*90bbe88eSMax Krummenacher "", 253*90bbe88eSMax Krummenacher "SMARC_SDIO_PWR_EN", 254*90bbe88eSMax Krummenacher "", 255*90bbe88eSMax Krummenacher "", 256*90bbe88eSMax Krummenacher "", /* 10 */ 257*90bbe88eSMax Krummenacher "", 258*90bbe88eSMax Krummenacher "", 259*90bbe88eSMax Krummenacher "", 260*90bbe88eSMax Krummenacher "", 261*90bbe88eSMax Krummenacher "", 262*90bbe88eSMax Krummenacher "", 263*90bbe88eSMax Krummenacher "", 264*90bbe88eSMax Krummenacher "", 265*90bbe88eSMax Krummenacher "", 266*90bbe88eSMax Krummenacher "PMIC_SD2_VSEL"; 267*90bbe88eSMax Krummenacher status = "okay"; 268*90bbe88eSMax Krummenacher}; 269*90bbe88eSMax Krummenacher 270*90bbe88eSMax Krummenacher&gpio4 { 271*90bbe88eSMax Krummenacher gpio-line-names = "", /* 0 */ 272*90bbe88eSMax Krummenacher "", 273*90bbe88eSMax Krummenacher "", 274*90bbe88eSMax Krummenacher "", 275*90bbe88eSMax Krummenacher "", 276*90bbe88eSMax Krummenacher "", 277*90bbe88eSMax Krummenacher "", 278*90bbe88eSMax Krummenacher "", 279*90bbe88eSMax Krummenacher "", 280*90bbe88eSMax Krummenacher "", 281*90bbe88eSMax Krummenacher "", /* 10 */ 282*90bbe88eSMax Krummenacher "", 283*90bbe88eSMax Krummenacher "", 284*90bbe88eSMax Krummenacher "", 285*90bbe88eSMax Krummenacher "SMARC_GPIO11", 286*90bbe88eSMax Krummenacher "SMARC_GPIO10", 287*90bbe88eSMax Krummenacher "", 288*90bbe88eSMax Krummenacher "", 289*90bbe88eSMax Krummenacher "", 290*90bbe88eSMax Krummenacher "", 291*90bbe88eSMax Krummenacher "", /* 20 */ 292*90bbe88eSMax Krummenacher "", 293*90bbe88eSMax Krummenacher "", 294*90bbe88eSMax Krummenacher "", 295*90bbe88eSMax Krummenacher "", 296*90bbe88eSMax Krummenacher "", 297*90bbe88eSMax Krummenacher "", 298*90bbe88eSMax Krummenacher "", 299*90bbe88eSMax Krummenacher "SMARC_SMB_ALERT#"; 300*90bbe88eSMax Krummenacher status = "okay"; 301*90bbe88eSMax Krummenacher}; 302*90bbe88eSMax Krummenacher 303*90bbe88eSMax Krummenacher&gpio5 { 304*90bbe88eSMax Krummenacher gpio-line-names = "SMARC_GPIO2", /* 0 */ 305*90bbe88eSMax Krummenacher "SMARC_GPIO3", 306*90bbe88eSMax Krummenacher "SMARC_GPIO4", 307*90bbe88eSMax Krummenacher "SMARC_GPIO6", 308*90bbe88eSMax Krummenacher "", 309*90bbe88eSMax Krummenacher "", 310*90bbe88eSMax Krummenacher "", 311*90bbe88eSMax Krummenacher "", 312*90bbe88eSMax Krummenacher "SMARC_GPIO9", 313*90bbe88eSMax Krummenacher "SMARC_GPIO7", 314*90bbe88eSMax Krummenacher "SMARC_GPIO8", /* 10 */ 315*90bbe88eSMax Krummenacher "SMARC_SPI1_CS1#", 316*90bbe88eSMax Krummenacher "", 317*90bbe88eSMax Krummenacher "SPI1_TPM_CS#"; 318*90bbe88eSMax Krummenacher status = "okay"; 319*90bbe88eSMax Krummenacher}; 320*90bbe88eSMax Krummenacher 321*90bbe88eSMax Krummenacher/* SMARC I2C_GP */ 322*90bbe88eSMax Krummenacher&lpi2c2 { 323*90bbe88eSMax Krummenacher pinctrl-names = "default", "gpio"; 324*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpi2c2>; 325*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_lpi2c2_gpio>; 326*90bbe88eSMax Krummenacher #address-cells = <1>; 327*90bbe88eSMax Krummenacher #size-cells = <0>; 328*90bbe88eSMax Krummenacher clock-frequency = <400000>; 329*90bbe88eSMax Krummenacher scl-gpios = <&gpio1 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 330*90bbe88eSMax Krummenacher sda-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 331*90bbe88eSMax Krummenacher status = "okay"; 332*90bbe88eSMax Krummenacher 333*90bbe88eSMax Krummenacher eeprom@50 { 334*90bbe88eSMax Krummenacher compatible = "st,24c32", "atmel,24c32"; 335*90bbe88eSMax Krummenacher reg = <0x50>; 336*90bbe88eSMax Krummenacher pagesize = <32>; 337*90bbe88eSMax Krummenacher }; 338*90bbe88eSMax Krummenacher}; 339*90bbe88eSMax Krummenacher 340*90bbe88eSMax Krummenacher/* SMARC I2C_PM */ 341*90bbe88eSMax Krummenacher&lpi2c3 { 342*90bbe88eSMax Krummenacher pinctrl-names = "default", "gpio"; 343*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpi2c3>; 344*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_lpi2c3_gpio>; 345*90bbe88eSMax Krummenacher #address-cells = <1>; 346*90bbe88eSMax Krummenacher #size-cells = <0>; 347*90bbe88eSMax Krummenacher clock-frequency = <400000>; 348*90bbe88eSMax Krummenacher scl-gpios = <&gpio2 29 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 349*90bbe88eSMax Krummenacher sda-gpios = <&gpio2 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 350*90bbe88eSMax Krummenacher}; 351*90bbe88eSMax Krummenacher 352*90bbe88eSMax Krummenacher/* I2C_SOM */ 353*90bbe88eSMax Krummenacher&lpi2c4 { 354*90bbe88eSMax Krummenacher pinctrl-names = "default", "gpio"; 355*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpi2c4>, <&pinctrl_ctrl_io_exp_int_b>; 356*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_lpi2c4_gpio>, <&pinctrl_ctrl_io_exp_int_b>; 357*90bbe88eSMax Krummenacher #address-cells = <1>; 358*90bbe88eSMax Krummenacher #size-cells = <0>; 359*90bbe88eSMax Krummenacher clock-frequency = <400000>; 360*90bbe88eSMax Krummenacher scl-gpios = <&gpio2 31 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 361*90bbe88eSMax Krummenacher sda-gpios = <&gpio2 30 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 362*90bbe88eSMax Krummenacher status = "okay"; 363*90bbe88eSMax Krummenacher 364*90bbe88eSMax Krummenacher som_gpio_expander_0: gpio@20 { 365*90bbe88eSMax Krummenacher compatible = "nxp,pcal6408"; 366*90bbe88eSMax Krummenacher reg = <0x20>; 367*90bbe88eSMax Krummenacher #interrupt-cells = <2>; 368*90bbe88eSMax Krummenacher interrupt-controller; 369*90bbe88eSMax Krummenacher interrupt-parent = <&gpio1>; 370*90bbe88eSMax Krummenacher interrupts = <14 IRQ_TYPE_LEVEL_LOW>; 371*90bbe88eSMax Krummenacher #gpio-cells = <2>; 372*90bbe88eSMax Krummenacher gpio-controller; 373*90bbe88eSMax Krummenacher gpio-line-names = 374*90bbe88eSMax Krummenacher "SMARC_PCIE_WAKE#", /* 0 */ 375*90bbe88eSMax Krummenacher "SMARC_PCIE_B_RST#", 376*90bbe88eSMax Krummenacher "SMARC_PCIE_A_RST#", 377*90bbe88eSMax Krummenacher "SMARC_USB0_OTG_ID", 378*90bbe88eSMax Krummenacher "SMARC_USB0_EN", /* SMARC USB0_EN_OC# - Open Drain Output */ 379*90bbe88eSMax Krummenacher "SMARC_USB0_OC#", /* SMARC USB0_EN_OC# - Over-Current Sense Input */ 380*90bbe88eSMax Krummenacher "", 381*90bbe88eSMax Krummenacher "SMARC_PCIE_C_RST#"; 382*90bbe88eSMax Krummenacher }; 383*90bbe88eSMax Krummenacher 384*90bbe88eSMax Krummenacher som_gpio_expander_1: gpio@21 { 385*90bbe88eSMax Krummenacher compatible = "nxp,pcal6416"; 386*90bbe88eSMax Krummenacher reg = <0x21>; 387*90bbe88eSMax Krummenacher #interrupt-cells = <2>; 388*90bbe88eSMax Krummenacher interrupt-controller; 389*90bbe88eSMax Krummenacher interrupt-parent = <&gpio1>; 390*90bbe88eSMax Krummenacher interrupts = <14 IRQ_TYPE_LEVEL_LOW>; 391*90bbe88eSMax Krummenacher #gpio-cells = <2>; 392*90bbe88eSMax Krummenacher gpio-controller; 393*90bbe88eSMax Krummenacher gpio-line-names = 394*90bbe88eSMax Krummenacher "SMARC_GPIO0", /* 0 */ 395*90bbe88eSMax Krummenacher "SMARC_GPIO1", 396*90bbe88eSMax Krummenacher "SMARC_LCD0_VDD_EN", 397*90bbe88eSMax Krummenacher "SMARC_LCD0_BKLT_EN", 398*90bbe88eSMax Krummenacher "SMARC_LCD1_VDD_EN", 399*90bbe88eSMax Krummenacher "SMARC_LCD1_BKLT_EN", 400*90bbe88eSMax Krummenacher "", 401*90bbe88eSMax Krummenacher "", 402*90bbe88eSMax Krummenacher "", 403*90bbe88eSMax Krummenacher "", 404*90bbe88eSMax Krummenacher "", /* 10 */ 405*90bbe88eSMax Krummenacher "", 406*90bbe88eSMax Krummenacher "", 407*90bbe88eSMax Krummenacher "", 408*90bbe88eSMax Krummenacher "", 409*90bbe88eSMax Krummenacher "", 410*90bbe88eSMax Krummenacher "", 411*90bbe88eSMax Krummenacher "SMARC_SDIO_WP"; 412*90bbe88eSMax Krummenacher }; 413*90bbe88eSMax Krummenacher 414*90bbe88eSMax Krummenacher embedded-controller@28 { 415*90bbe88eSMax Krummenacher compatible = "toradex,smarc-imx95-ec", "toradex,smarc-ec"; 416*90bbe88eSMax Krummenacher reg = <0x28>; 417*90bbe88eSMax Krummenacher }; 418*90bbe88eSMax Krummenacher 419*90bbe88eSMax Krummenacher som_ec_gpio_expander: gpio@29 { 420*90bbe88eSMax Krummenacher compatible = "toradex,ecgpiol16", "nxp,pcal6416"; 421*90bbe88eSMax Krummenacher reg = <0x29>; 422*90bbe88eSMax Krummenacher pinctrl-names = "default"; 423*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_ec_int>; 424*90bbe88eSMax Krummenacher #interrupt-cells = <2>; 425*90bbe88eSMax Krummenacher interrupt-controller; 426*90bbe88eSMax Krummenacher interrupt-parent = <&gpio1>; 427*90bbe88eSMax Krummenacher interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 428*90bbe88eSMax Krummenacher #gpio-cells = <2>; 429*90bbe88eSMax Krummenacher gpio-controller; 430*90bbe88eSMax Krummenacher gpio-line-names = 431*90bbe88eSMax Krummenacher "SMARC_CHARGER_PRSNT#", 432*90bbe88eSMax Krummenacher "SMARC_CHARGING#", 433*90bbe88eSMax Krummenacher "SMARC_LID#", 434*90bbe88eSMax Krummenacher "SMARC_BATLOW#", 435*90bbe88eSMax Krummenacher "SMARC_SLEEP#"; 436*90bbe88eSMax Krummenacher }; 437*90bbe88eSMax Krummenacher 438*90bbe88eSMax Krummenacher /* SMARC DP0 */ 439*90bbe88eSMax Krummenacher som_dsi2dp_bridge: bridge@2c { 440*90bbe88eSMax Krummenacher compatible = "ti,sn65dsi86"; 441*90bbe88eSMax Krummenacher reg = <0x2c>; 442*90bbe88eSMax Krummenacher clocks = <&clk_dsi2dp_bridge>; 443*90bbe88eSMax Krummenacher clock-names = "refclk"; 444*90bbe88eSMax Krummenacher vcc-supply = <®_module_dp_1p2v>; 445*90bbe88eSMax Krummenacher vcca-supply = <®_module_dp_1p2v>; 446*90bbe88eSMax Krummenacher vccio-supply = <®_module_1p8v>; 447*90bbe88eSMax Krummenacher vpll-supply = <®_module_1p8v>; 448*90bbe88eSMax Krummenacher status = "disabled"; 449*90bbe88eSMax Krummenacher 450*90bbe88eSMax Krummenacher ports { 451*90bbe88eSMax Krummenacher #address-cells = <1>; 452*90bbe88eSMax Krummenacher #size-cells = <0>; 453*90bbe88eSMax Krummenacher 454*90bbe88eSMax Krummenacher port@0 { 455*90bbe88eSMax Krummenacher reg = <0>; 456*90bbe88eSMax Krummenacher 457*90bbe88eSMax Krummenacher sn65dsi86_in: endpoint { 458*90bbe88eSMax Krummenacher }; 459*90bbe88eSMax Krummenacher }; 460*90bbe88eSMax Krummenacher 461*90bbe88eSMax Krummenacher port@1 { 462*90bbe88eSMax Krummenacher reg = <1>; 463*90bbe88eSMax Krummenacher 464*90bbe88eSMax Krummenacher sn65dsi86_out: endpoint { 465*90bbe88eSMax Krummenacher data-lanes = <3 2 1 0>; 466*90bbe88eSMax Krummenacher }; 467*90bbe88eSMax Krummenacher }; 468*90bbe88eSMax Krummenacher }; 469*90bbe88eSMax Krummenacher }; 470*90bbe88eSMax Krummenacher 471*90bbe88eSMax Krummenacher rtc_i2c: rtc@32 { 472*90bbe88eSMax Krummenacher compatible = "epson,rx8130"; 473*90bbe88eSMax Krummenacher reg = <0x32>; 474*90bbe88eSMax Krummenacher }; 475*90bbe88eSMax Krummenacher 476*90bbe88eSMax Krummenacher temperature-sensor@48 { 477*90bbe88eSMax Krummenacher compatible = "ti,tmp1075"; 478*90bbe88eSMax Krummenacher reg = <0x48>; 479*90bbe88eSMax Krummenacher }; 480*90bbe88eSMax Krummenacher 481*90bbe88eSMax Krummenacher eeprom@50 { 482*90bbe88eSMax Krummenacher compatible = "st,24c02", "atmel,24c02"; 483*90bbe88eSMax Krummenacher reg = <0x50>; 484*90bbe88eSMax Krummenacher pagesize = <16>; 485*90bbe88eSMax Krummenacher }; 486*90bbe88eSMax Krummenacher}; 487*90bbe88eSMax Krummenacher 488*90bbe88eSMax Krummenacher/* SMARC I2C_LCD */ 489*90bbe88eSMax Krummenacher&lpi2c5 { 490*90bbe88eSMax Krummenacher pinctrl-names = "default", "gpio"; 491*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpi2c5>; 492*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_lpi2c5_gpio>; 493*90bbe88eSMax Krummenacher #address-cells = <1>; 494*90bbe88eSMax Krummenacher #size-cells = <0>; 495*90bbe88eSMax Krummenacher clock-frequency = <100000>; 496*90bbe88eSMax Krummenacher scl-gpios = <&gpio2 23 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 497*90bbe88eSMax Krummenacher sda-gpios = <&gpio2 22 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 498*90bbe88eSMax Krummenacher}; 499*90bbe88eSMax Krummenacher 500*90bbe88eSMax Krummenacher/* I2C_CAM */ 501*90bbe88eSMax Krummenacher&lpi2c7 { 502*90bbe88eSMax Krummenacher pinctrl-names = "default", "gpio"; 503*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpi2c7>; 504*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_lpi2c7_gpio>; 505*90bbe88eSMax Krummenacher #address-cells = <1>; 506*90bbe88eSMax Krummenacher #size-cells = <0>; 507*90bbe88eSMax Krummenacher clock-frequency = <400000>; 508*90bbe88eSMax Krummenacher scl-gpios = <&gpio2 9 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 509*90bbe88eSMax Krummenacher sda-gpios = <&gpio2 8 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 510*90bbe88eSMax Krummenacher status = "okay"; 511*90bbe88eSMax Krummenacher 512*90bbe88eSMax Krummenacher i2c-mux@70 { 513*90bbe88eSMax Krummenacher compatible = "nxp,pca9543"; 514*90bbe88eSMax Krummenacher reg = <0x70>; 515*90bbe88eSMax Krummenacher #address-cells = <1>; 516*90bbe88eSMax Krummenacher #size-cells = <0>; 517*90bbe88eSMax Krummenacher 518*90bbe88eSMax Krummenacher /* SMARC I2C_CAM0 */ 519*90bbe88eSMax Krummenacher i2c_cam0: i2c@0 { 520*90bbe88eSMax Krummenacher reg = <0>; 521*90bbe88eSMax Krummenacher #address-cells = <1>; 522*90bbe88eSMax Krummenacher #size-cells = <0>; 523*90bbe88eSMax Krummenacher }; 524*90bbe88eSMax Krummenacher 525*90bbe88eSMax Krummenacher /* SMARC I2C_CAM1 */ 526*90bbe88eSMax Krummenacher i2c_cam1: i2c@1 { 527*90bbe88eSMax Krummenacher reg = <1>; 528*90bbe88eSMax Krummenacher #address-cells = <1>; 529*90bbe88eSMax Krummenacher #size-cells = <0>; 530*90bbe88eSMax Krummenacher }; 531*90bbe88eSMax Krummenacher }; 532*90bbe88eSMax Krummenacher}; 533*90bbe88eSMax Krummenacher 534*90bbe88eSMax Krummenacher/* SMARC SPI1 */ 535*90bbe88eSMax Krummenacher&lpspi4 { 536*90bbe88eSMax Krummenacher pinctrl-names = "default"; 537*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpspi4>; 538*90bbe88eSMax Krummenacher cs-gpios = <&gpio2 18 GPIO_ACTIVE_LOW>, 539*90bbe88eSMax Krummenacher <&gpio5 11 GPIO_ACTIVE_LOW>, 540*90bbe88eSMax Krummenacher <&gpio5 13 GPIO_ACTIVE_LOW>; 541*90bbe88eSMax Krummenacher status = "okay"; 542*90bbe88eSMax Krummenacher 543*90bbe88eSMax Krummenacher som_tpm: tpm@2 { 544*90bbe88eSMax Krummenacher compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 545*90bbe88eSMax Krummenacher reg = <0x2>; 546*90bbe88eSMax Krummenacher spi-max-frequency = <18500000>; 547*90bbe88eSMax Krummenacher }; 548*90bbe88eSMax Krummenacher}; 549*90bbe88eSMax Krummenacher 550*90bbe88eSMax Krummenacher/* SMARC SPI0 */ 551*90bbe88eSMax Krummenacher&lpspi6 { 552*90bbe88eSMax Krummenacher pinctrl-names = "default"; 553*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lpspi6>; 554*90bbe88eSMax Krummenacher cs-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>, 555*90bbe88eSMax Krummenacher <&gpio2 24 GPIO_ACTIVE_LOW>; 556*90bbe88eSMax Krummenacher}; 557*90bbe88eSMax Krummenacher 558*90bbe88eSMax Krummenacher/* SMARC SER1, used as the Linux Console */ 559*90bbe88eSMax Krummenacher&lpuart1 { 560*90bbe88eSMax Krummenacher pinctrl-names = "default"; 561*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_uart1>; 562*90bbe88eSMax Krummenacher}; 563*90bbe88eSMax Krummenacher 564*90bbe88eSMax Krummenacher/* SMARC SER0 */ 565*90bbe88eSMax Krummenacher&lpuart2 { 566*90bbe88eSMax Krummenacher pinctrl-names = "default"; 567*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_uart2>; 568*90bbe88eSMax Krummenacher uart-has-rtscts; 569*90bbe88eSMax Krummenacher}; 570*90bbe88eSMax Krummenacher 571*90bbe88eSMax Krummenacher/* SMARC SER3 */ 572*90bbe88eSMax Krummenacher&lpuart3 { 573*90bbe88eSMax Krummenacher pinctrl-names = "default"; 574*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_uart3>; 575*90bbe88eSMax Krummenacher}; 576*90bbe88eSMax Krummenacher 577*90bbe88eSMax Krummenacher/* SMARC MDIO, shared between all ethernet ports */ 578*90bbe88eSMax Krummenacher&netc_emdio { 579*90bbe88eSMax Krummenacher pinctrl-names = "default"; 580*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_emdio>; 581*90bbe88eSMax Krummenacher 582*90bbe88eSMax Krummenacher ethphy1: ethernet-phy@1 { 583*90bbe88eSMax Krummenacher reg = <1>; 584*90bbe88eSMax Krummenacher interrupt-parent = <&som_gpio_expander_1>; 585*90bbe88eSMax Krummenacher interrupts = <6 IRQ_TYPE_LEVEL_LOW>; 586*90bbe88eSMax Krummenacher ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 587*90bbe88eSMax Krummenacher ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 588*90bbe88eSMax Krummenacher }; 589*90bbe88eSMax Krummenacher 590*90bbe88eSMax Krummenacher ethphy2: ethernet-phy@2 { 591*90bbe88eSMax Krummenacher reg = <2>; 592*90bbe88eSMax Krummenacher ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 593*90bbe88eSMax Krummenacher ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 594*90bbe88eSMax Krummenacher }; 595*90bbe88eSMax Krummenacher}; 596*90bbe88eSMax Krummenacher 597*90bbe88eSMax Krummenacher&netcmix_blk_ctrl { 598*90bbe88eSMax Krummenacher status = "okay"; 599*90bbe88eSMax Krummenacher}; 600*90bbe88eSMax Krummenacher 601*90bbe88eSMax Krummenacher&netc_blk_ctrl { 602*90bbe88eSMax Krummenacher status = "okay"; 603*90bbe88eSMax Krummenacher}; 604*90bbe88eSMax Krummenacher 605*90bbe88eSMax Krummenacher&netc_timer { 606*90bbe88eSMax Krummenacher status = "okay"; 607*90bbe88eSMax Krummenacher}; 608*90bbe88eSMax Krummenacher 609*90bbe88eSMax Krummenacher/* SMARC PCIE_A */ 610*90bbe88eSMax Krummenacher&pcie0 { 611*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_pcie0>; 612*90bbe88eSMax Krummenacher pinctrl-names = "default"; 613*90bbe88eSMax Krummenacher reset-gpios = <&som_gpio_expander_0 2 GPIO_ACTIVE_LOW>; 614*90bbe88eSMax Krummenacher}; 615*90bbe88eSMax Krummenacher 616*90bbe88eSMax Krummenacher/* SMARC PCIE_B */ 617*90bbe88eSMax Krummenacher&pcie1 { 618*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_pcie1>; 619*90bbe88eSMax Krummenacher pinctrl-names = "default"; 620*90bbe88eSMax Krummenacher reset-gpios = <&som_gpio_expander_0 1 GPIO_ACTIVE_LOW>; 621*90bbe88eSMax Krummenacher}; 622*90bbe88eSMax Krummenacher 623*90bbe88eSMax Krummenacher/* SMARC I2S0 */ 624*90bbe88eSMax Krummenacher&sai3 { 625*90bbe88eSMax Krummenacher #sound-dai-cells = <0>; 626*90bbe88eSMax Krummenacher assigned-clocks = <&scmi_clk IMX95_CLK_AUDIOPLL1_VCO>, 627*90bbe88eSMax Krummenacher <&scmi_clk IMX95_CLK_AUDIOPLL2_VCO>, 628*90bbe88eSMax Krummenacher <&scmi_clk IMX95_CLK_AUDIOPLL1>, 629*90bbe88eSMax Krummenacher <&scmi_clk IMX95_CLK_AUDIOPLL2>, 630*90bbe88eSMax Krummenacher <&scmi_clk IMX95_CLK_SAI3>; 631*90bbe88eSMax Krummenacher assigned-clock-parents = <0>, <0>, <0>, <0>, 632*90bbe88eSMax Krummenacher <&scmi_clk IMX95_CLK_AUDIOPLL1>; 633*90bbe88eSMax Krummenacher assigned-clock-rates = <3932160000>, 634*90bbe88eSMax Krummenacher <3612672000>, <393216000>, 635*90bbe88eSMax Krummenacher <361267200>, <12288000>; 636*90bbe88eSMax Krummenacher fsl,sai-mclk-direction-output; 637*90bbe88eSMax Krummenacher}; 638*90bbe88eSMax Krummenacher 639*90bbe88eSMax Krummenacher&thermal_zones { 640*90bbe88eSMax Krummenacher /* PF09 Main PMIC */ 641*90bbe88eSMax Krummenacher pf09-thermal { 642*90bbe88eSMax Krummenacher polling-delay = <2000>; 643*90bbe88eSMax Krummenacher polling-delay-passive = <250>; 644*90bbe88eSMax Krummenacher thermal-sensors = <&scmi_sensor 2>; 645*90bbe88eSMax Krummenacher 646*90bbe88eSMax Krummenacher trips { 647*90bbe88eSMax Krummenacher trip0 { 648*90bbe88eSMax Krummenacher hysteresis = <2000>; 649*90bbe88eSMax Krummenacher temperature = <155000>; 650*90bbe88eSMax Krummenacher type = "critical"; 651*90bbe88eSMax Krummenacher }; 652*90bbe88eSMax Krummenacher }; 653*90bbe88eSMax Krummenacher }; 654*90bbe88eSMax Krummenacher 655*90bbe88eSMax Krummenacher /* PF53 VDD_ARM PMIC */ 656*90bbe88eSMax Krummenacher pf53-arm-thermal { 657*90bbe88eSMax Krummenacher polling-delay = <2000>; 658*90bbe88eSMax Krummenacher polling-delay-passive = <250>; 659*90bbe88eSMax Krummenacher thermal-sensors = <&scmi_sensor 4>; 660*90bbe88eSMax Krummenacher 661*90bbe88eSMax Krummenacher trips { 662*90bbe88eSMax Krummenacher trip0 { 663*90bbe88eSMax Krummenacher hysteresis = <2000>; 664*90bbe88eSMax Krummenacher temperature = <155000>; 665*90bbe88eSMax Krummenacher type = "critical"; 666*90bbe88eSMax Krummenacher }; 667*90bbe88eSMax Krummenacher }; 668*90bbe88eSMax Krummenacher }; 669*90bbe88eSMax Krummenacher 670*90bbe88eSMax Krummenacher /* PF53 VDD_SOC PMIC */ 671*90bbe88eSMax Krummenacher pf53-soc-thermal { 672*90bbe88eSMax Krummenacher polling-delay = <2000>; 673*90bbe88eSMax Krummenacher polling-delay-passive = <250>; 674*90bbe88eSMax Krummenacher thermal-sensors = <&scmi_sensor 3>; 675*90bbe88eSMax Krummenacher 676*90bbe88eSMax Krummenacher trips { 677*90bbe88eSMax Krummenacher trip0 { 678*90bbe88eSMax Krummenacher hysteresis = <2000>; 679*90bbe88eSMax Krummenacher temperature = <155000>; 680*90bbe88eSMax Krummenacher type = "critical"; 681*90bbe88eSMax Krummenacher }; 682*90bbe88eSMax Krummenacher }; 683*90bbe88eSMax Krummenacher }; 684*90bbe88eSMax Krummenacher}; 685*90bbe88eSMax Krummenacher 686*90bbe88eSMax Krummenacher/* SMARC LCD0_BKLT_PWM */ 687*90bbe88eSMax Krummenacher&tpm3 { 688*90bbe88eSMax Krummenacher pinctrl-names = "default"; 689*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lcd0_bklt_pwm>; 690*90bbe88eSMax Krummenacher}; 691*90bbe88eSMax Krummenacher 692*90bbe88eSMax Krummenacher/* SMARC LCD1_BKLT_PWM */ 693*90bbe88eSMax Krummenacher&tpm4 { 694*90bbe88eSMax Krummenacher pinctrl-names = "default"; 695*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_lcd1_bklt_pwm>; 696*90bbe88eSMax Krummenacher}; 697*90bbe88eSMax Krummenacher 698*90bbe88eSMax Krummenacher/* SMARC GPIO5 as PWM */ 699*90bbe88eSMax Krummenacher&tpm5 { 700*90bbe88eSMax Krummenacher pinctrl-names = "default"; 701*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_gpio5_pwm>; 702*90bbe88eSMax Krummenacher}; 703*90bbe88eSMax Krummenacher 704*90bbe88eSMax Krummenacher/* SMARC USB0 */ 705*90bbe88eSMax Krummenacher&usb2 { 706*90bbe88eSMax Krummenacher adp-disable; 707*90bbe88eSMax Krummenacher dr_mode = "otg"; 708*90bbe88eSMax Krummenacher hnp-disable; 709*90bbe88eSMax Krummenacher srp-disable; 710*90bbe88eSMax Krummenacher usb-role-switch; 711*90bbe88eSMax Krummenacher vbus-supply = <®_usb0_vbus>; 712*90bbe88eSMax Krummenacher 713*90bbe88eSMax Krummenacher port { 714*90bbe88eSMax Krummenacher usb0_otg_id: endpoint { 715*90bbe88eSMax Krummenacher remote-endpoint = <&usb_dr_connector>; 716*90bbe88eSMax Krummenacher }; 717*90bbe88eSMax Krummenacher }; 718*90bbe88eSMax Krummenacher}; 719*90bbe88eSMax Krummenacher 720*90bbe88eSMax Krummenacher&usb3 { 721*90bbe88eSMax Krummenacher fsl,disable-port-power-control; 722*90bbe88eSMax Krummenacher}; 723*90bbe88eSMax Krummenacher 724*90bbe88eSMax Krummenacher/* SMARC USB1..4 */ 725*90bbe88eSMax Krummenacher&usb3_dwc3 { 726*90bbe88eSMax Krummenacher dr_mode = "host"; 727*90bbe88eSMax Krummenacher}; 728*90bbe88eSMax Krummenacher 729*90bbe88eSMax Krummenacher&usb3_phy { 730*90bbe88eSMax Krummenacher vbus-supply = <®_usb1_vbus>; 731*90bbe88eSMax Krummenacher}; 732*90bbe88eSMax Krummenacher 733*90bbe88eSMax Krummenacher/* On-module eMMC */ 734*90bbe88eSMax Krummenacher&usdhc1 { 735*90bbe88eSMax Krummenacher pinctrl-names = "default", "state_100mhz", "state_200mhz"; 736*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_usdhc1>; 737*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_usdhc1>; 738*90bbe88eSMax Krummenacher pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 739*90bbe88eSMax Krummenacher bus-width = <8>; 740*90bbe88eSMax Krummenacher non-removable; 741*90bbe88eSMax Krummenacher no-sdio; 742*90bbe88eSMax Krummenacher no-sd; 743*90bbe88eSMax Krummenacher status = "okay"; 744*90bbe88eSMax Krummenacher}; 745*90bbe88eSMax Krummenacher 746*90bbe88eSMax Krummenacher/* SMARC SDIO */ 747*90bbe88eSMax Krummenacher&usdhc2 { 748*90bbe88eSMax Krummenacher pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep"; 749*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_cd>; 750*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_cd>; 751*90bbe88eSMax Krummenacher pinctrl-2 = <&pinctrl_usdhc2_200mhz>,<&pinctrl_usdhc2_cd>; 752*90bbe88eSMax Krummenacher pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_cd>; 753*90bbe88eSMax Krummenacher cd-gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; 754*90bbe88eSMax Krummenacher vmmc-supply = <®_usdhc2_vmmc>; 755*90bbe88eSMax Krummenacher vqmmc-supply = <®_usdhc2_vqmmc>; 756*90bbe88eSMax Krummenacher wp-gpios = <&som_gpio_expander_1 15 GPIO_ACTIVE_HIGH>; 757*90bbe88eSMax Krummenacher}; 758*90bbe88eSMax Krummenacher 759*90bbe88eSMax Krummenacher/* On-module Wi-Fi */ 760*90bbe88eSMax Krummenacher&usdhc3 { 761*90bbe88eSMax Krummenacher pinctrl-names = "default", "state_100mhz", "state_200mhz"; 762*90bbe88eSMax Krummenacher pinctrl-0 = <&pinctrl_usdhc3>; 763*90bbe88eSMax Krummenacher pinctrl-1 = <&pinctrl_usdhc3>; 764*90bbe88eSMax Krummenacher pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 765*90bbe88eSMax Krummenacher keep-power-in-suspend; 766*90bbe88eSMax Krummenacher non-removable; 767*90bbe88eSMax Krummenacher vmmc-supply = <®_wifi_en>; 768*90bbe88eSMax Krummenacher}; 769*90bbe88eSMax Krummenacher 770*90bbe88eSMax Krummenacher&scmi_bbm { 771*90bbe88eSMax Krummenacher linux,code = <KEY_POWER>; 772*90bbe88eSMax Krummenacher}; 773*90bbe88eSMax Krummenacher 774*90bbe88eSMax Krummenacher&wdog3 { 775*90bbe88eSMax Krummenacher fsl,ext-reset-output; 776*90bbe88eSMax Krummenacher status = "okay"; 777*90bbe88eSMax Krummenacher}; 778*90bbe88eSMax Krummenacher 779*90bbe88eSMax Krummenacher&scmi_iomuxc { 780*90bbe88eSMax Krummenacher /* SMARC CAM_MCK */ 781*90bbe88eSMax Krummenacher pinctrl_cam_mck: cammckgrp { 782*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_CCM_CLKO1__CCMSRCGPCMIX_TOP_CLKO_1 0x51e>; /* SMARC S6 - CAM_MCK */ 783*90bbe88eSMax Krummenacher }; 784*90bbe88eSMax Krummenacher 785*90bbe88eSMax Krummenacher pinctrl_ec_int: ecintgrp { 786*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SAI1_TXFS__AONMIX_TOP_GPIO1_IO_BIT11 0x31e>; /* SAI1_TXFS - EC_MCU_INT# */ 787*90bbe88eSMax Krummenacher }; 788*90bbe88eSMax Krummenacher 789*90bbe88eSMax Krummenacher /* SMARC MDIO, shared between all ethernet ports */ 790*90bbe88eSMax Krummenacher pinctrl_emdio: emdiogrp { 791*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_ENET1_MDC__NETCMIX_TOP_NETC_MDC 0x50e>, /* SMARC S45 - MDIO_CLK */ 792*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_MDIO__NETCMIX_TOP_NETC_MDIO 0x90e>; /* SMARC S46 - MDIO_DAT */ 793*90bbe88eSMax Krummenacher }; 794*90bbe88eSMax Krummenacher 795*90bbe88eSMax Krummenacher /* SMARC GBE0 */ 796*90bbe88eSMax Krummenacher pinctrl_enetc0: enetc0grp { 797*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_ENET1_TX_CTL__NETCMIX_TOP_ETH0_RGMII_TX_CTL 0x57e>, /* ENET1_TX_CTL */ 798*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_TXC__NETCMIX_TOP_ETH0_RGMII_TX_CLK 0x58e>, /* ENET1_TXC */ 799*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_TD0__NETCMIX_TOP_ETH0_RGMII_TD0 0x50e>, /* ENET1_TDO */ 800*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_TD1__NETCMIX_TOP_ETH0_RGMII_TD1 0x50e>, /* ENET1_TD1 */ 801*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_TD2__NETCMIX_TOP_ETH0_RGMII_TD2 0x50e>, /* ENET1_TD2 */ 802*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_TD3__NETCMIX_TOP_ETH0_RGMII_TD3 0x50e>, /* ENET1_TD3 */ 803*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_RX_CTL__NETCMIX_TOP_ETH0_RGMII_RX_CTL 0x57e>, /* ENET1_RX_CTL */ 804*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_RXC__NETCMIX_TOP_ETH0_RGMII_RX_CLK 0x58e>, /* ENET1_RXC */ 805*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_RD0__NETCMIX_TOP_ETH0_RGMII_RD0 0x57e>, /* ENET1_RD0 */ 806*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_RD1__NETCMIX_TOP_ETH0_RGMII_RD1 0x57e>, /* ENET1_RD1 */ 807*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_RD2__NETCMIX_TOP_ETH0_RGMII_RD2 0x57e>, /* ENET1_RD2 */ 808*90bbe88eSMax Krummenacher <IMX95_PAD_ENET1_RD3__NETCMIX_TOP_ETH0_RGMII_RD3 0x57e>; /* ENET1_RD3 */ 809*90bbe88eSMax Krummenacher }; 810*90bbe88eSMax Krummenacher 811*90bbe88eSMax Krummenacher /* SMARC GBE0_SDP */ 812*90bbe88eSMax Krummenacher pinctrl_enetc0_1588_tmr: enetc01588tmrgrp { 813*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_CCM_CLKO2__NETCMIX_TOP_NETC_TMR_1588_PP1 0x51e>; /* SMARC P6 - GBE0_SDP */ 814*90bbe88eSMax Krummenacher }; 815*90bbe88eSMax Krummenacher 816*90bbe88eSMax Krummenacher /* SMARC GBE1 */ 817*90bbe88eSMax Krummenacher pinctrl_enetc1: enetc1grp { 818*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_ENET2_TX_CTL__NETCMIX_TOP_ETH1_RGMII_TX_CTL 0x57e>, /* ENET2_TX_CTL */ 819*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_TXC__NETCMIX_TOP_ETH1_RGMII_TX_CLK 0x58e>, /* ENET2_TXC */ 820*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_TD0__NETCMIX_TOP_ETH1_RGMII_TD0 0x50e>, /* ENET2_TD0 */ 821*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_TD1__NETCMIX_TOP_ETH1_RGMII_TD1 0x50e>, /* ENET2_TD1 */ 822*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_TD2__NETCMIX_TOP_ETH1_RGMII_TD2 0x50e>, /* ENET2_TD2 */ 823*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_TD3__NETCMIX_TOP_ETH1_RGMII_TD3 0x50e>, /* ENET2_TD3 */ 824*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_RX_CTL__NETCMIX_TOP_ETH1_RGMII_RX_CTL 0x57e>, /* ENET2_RX_CTL */ 825*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_RXC__NETCMIX_TOP_ETH1_RGMII_RX_CLK 0x58e>, /* ENET2_RXC */ 826*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_RD0__NETCMIX_TOP_ETH1_RGMII_RD0 0x57e>, /* ENET2_RD0 */ 827*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_RD1__NETCMIX_TOP_ETH1_RGMII_RD1 0x57e>, /* ENET2_RD1 */ 828*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_RD2__NETCMIX_TOP_ETH1_RGMII_RD2 0x57e>, /* ENET2_RD2 */ 829*90bbe88eSMax Krummenacher <IMX95_PAD_ENET2_RD3__NETCMIX_TOP_ETH1_RGMII_RD3 0x57e>; /* ENET2_RD3 */ 830*90bbe88eSMax Krummenacher }; 831*90bbe88eSMax Krummenacher 832*90bbe88eSMax Krummenacher /* SMARC GBE1_SDP */ 833*90bbe88eSMax Krummenacher pinctrl_enetc1_1588_tmr: enetc11588tmrgrp { 834*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_CCM_CLKO4__NETCMIX_TOP_NETC_TMR_1588_PP2 0x51e>; /* SMARC P5 - GBE1_SDP */ 835*90bbe88eSMax Krummenacher }; 836*90bbe88eSMax Krummenacher 837*90bbe88eSMax Krummenacher /* SMARC CAN0 */ 838*90bbe88eSMax Krummenacher pinctrl_flexcan1: flexcan1grp { 839*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_PDM_CLK__AONMIX_TOP_CAN1_TX 0x39e>, /* SMARC P143 - CAN0_TX */ 840*90bbe88eSMax Krummenacher <IMX95_PAD_PDM_BIT_STREAM0__AONMIX_TOP_CAN1_RX 0x39e>; /* SMARC P144 - CAN0_RX */ 841*90bbe88eSMax Krummenacher }; 842*90bbe88eSMax Krummenacher 843*90bbe88eSMax Krummenacher /* SMARC CAN1 */ 844*90bbe88eSMax Krummenacher pinctrl_flexcan2: flexcan2grp { 845*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO25__CAN2_TX 0x39e>, /* SMARC P145 - CAN1_TX */ 846*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO27__CAN2_RX 0x39e>; /* SMARC P146 - CAN1_RX */ 847*90bbe88eSMax Krummenacher }; 848*90bbe88eSMax Krummenacher 849*90bbe88eSMax Krummenacher /* SMARC GPIO2 */ 850*90bbe88eSMax Krummenacher pinctrl_gpio2: gpio2grp { 851*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_DATA0__GPIO5_IO_BIT0 0x31e>; /* SMARC P110 - GPIO2 */ 852*90bbe88eSMax Krummenacher }; 853*90bbe88eSMax Krummenacher 854*90bbe88eSMax Krummenacher /* SMARC GPIO3 */ 855*90bbe88eSMax Krummenacher pinctrl_gpio3: gpio3grp { 856*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_DATA1__GPIO5_IO_BIT1 0x31e>; /* SMARC P111 - GPIO3 */ 857*90bbe88eSMax Krummenacher }; 858*90bbe88eSMax Krummenacher 859*90bbe88eSMax Krummenacher /* SMARC GPIO4 */ 860*90bbe88eSMax Krummenacher pinctrl_gpio4: gpio4grp { 861*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_DATA2__GPIO5_IO_BIT2 0x31e>; /* SMARC P112 - GPIO4 */ 862*90bbe88eSMax Krummenacher }; 863*90bbe88eSMax Krummenacher 864*90bbe88eSMax Krummenacher /* SMARC GPIO5 */ 865*90bbe88eSMax Krummenacher pinctrl_gpio5: gpio5grp { 866*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO06__GPIO2_IO_BIT6 0x31e>; /* SMARC P113 - GPIO5 */ 867*90bbe88eSMax Krummenacher }; 868*90bbe88eSMax Krummenacher 869*90bbe88eSMax Krummenacher /* SMARC GPIO5 as PWM */ 870*90bbe88eSMax Krummenacher pinctrl_gpio5_pwm: gpio5pwmgrp { 871*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO06__TPM5_CH0 0x11e>; /* SMARC P113 - PWM_OUT */ 872*90bbe88eSMax Krummenacher }; 873*90bbe88eSMax Krummenacher 874*90bbe88eSMax Krummenacher /* SMARC GPIO6 */ 875*90bbe88eSMax Krummenacher pinctrl_gpio6: gpio6grp { 876*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_DATA3__GPIO5_IO_BIT3 0x31e>; /* SMARC P114 - GPIO6 */ 877*90bbe88eSMax Krummenacher }; 878*90bbe88eSMax Krummenacher 879*90bbe88eSMax Krummenacher /* SMARC GPIO7 */ 880*90bbe88eSMax Krummenacher pinctrl_gpio7: gpio7grp { 881*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_SCLK__GPIO5_IO_BIT9 0x31e>; /* SMARC P115 - GPIO7 */ 882*90bbe88eSMax Krummenacher }; 883*90bbe88eSMax Krummenacher 884*90bbe88eSMax Krummenacher /* SMARC GPIO8 */ 885*90bbe88eSMax Krummenacher pinctrl_gpio8: gpio8grp { 886*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_SS0_B__GPIO5_IO_BIT10 0x31e>; /* SMARC P116 - GPIO8 */ 887*90bbe88eSMax Krummenacher }; 888*90bbe88eSMax Krummenacher 889*90bbe88eSMax Krummenacher /* SMARC GPIO9 */ 890*90bbe88eSMax Krummenacher pinctrl_gpio9: gpio9grp { 891*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_DQS__GPIO5_IO_BIT8 0x31e>; /* SMARC P117 - GPIO9 */ 892*90bbe88eSMax Krummenacher }; 893*90bbe88eSMax Krummenacher 894*90bbe88eSMax Krummenacher /* SMARC GPIO10 */ 895*90bbe88eSMax Krummenacher pinctrl_gpio10: gpio10grp { 896*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_ENET2_MDIO__GPIO4_IO_BIT15 0x31e>; /* SMARC P118 - GPIO10 */ 897*90bbe88eSMax Krummenacher }; 898*90bbe88eSMax Krummenacher 899*90bbe88eSMax Krummenacher /* SMARC GPIO11 */ 900*90bbe88eSMax Krummenacher pinctrl_gpio11: gpio11grp { 901*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_ENET2_MDC__GPIO4_IO_BIT14 0x31e>; /* SMARC P119 - GPIO11 */ 902*90bbe88eSMax Krummenacher }; 903*90bbe88eSMax Krummenacher 904*90bbe88eSMax Krummenacher /* SMARC GPIO12 */ 905*90bbe88eSMax Krummenacher pinctrl_gpio12: gpio12grp { 906*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO10__GPIO2_IO_BIT10 0x31e>; /* SMARC S142 - GPIO12 */ 907*90bbe88eSMax Krummenacher }; 908*90bbe88eSMax Krummenacher 909*90bbe88eSMax Krummenacher /* SMARC GPIO13 */ 910*90bbe88eSMax Krummenacher pinctrl_gpio13: gpio13grp { 911*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO11__GPIO2_IO_BIT11 0x31e>; /* SMARC S123 - GPIO13 */ 912*90bbe88eSMax Krummenacher }; 913*90bbe88eSMax Krummenacher 914*90bbe88eSMax Krummenacher pinctrl_ctrl_io_exp_int_b: ioexpintgrp { 915*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SAI1_RXD0__AONMIX_TOP_GPIO1_IO_BIT14 0x31e>; /* CTRL_IO_EXP_INT_B */ 916*90bbe88eSMax Krummenacher }; 917*90bbe88eSMax Krummenacher 918*90bbe88eSMax Krummenacher /* SMARC LCD0_BKLT_PWM */ 919*90bbe88eSMax Krummenacher pinctrl_lcd0_bklt_pwm: lcd0bkltpwmgrp { 920*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO12__TPM3_CH2 0x51e>; /* SMARC S141 - LCD0_BKLT_PWM */ 921*90bbe88eSMax Krummenacher }; 922*90bbe88eSMax Krummenacher 923*90bbe88eSMax Krummenacher /* SMARC LCD1_BKLT_PWM */ 924*90bbe88eSMax Krummenacher pinctrl_lcd1_bklt_pwm: lcd1bkltpwmgrp { 925*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO13__TPM4_CH2 0x51e>; /* SMARC S122 - LCD1_BKLT_PWM */ 926*90bbe88eSMax Krummenacher }; 927*90bbe88eSMax Krummenacher 928*90bbe88eSMax Krummenacher /* SMARC I2C_GP */ 929*90bbe88eSMax Krummenacher pinctrl_lpi2c2: lpi2c2grp { 930*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_I2C2_SCL__AONMIX_TOP_LPI2C2_SCL 0x40001b9e>, /* SMARC S48 - I2C_GP_CK */ 931*90bbe88eSMax Krummenacher <IMX95_PAD_I2C2_SDA__AONMIX_TOP_LPI2C2_SDA 0x40001b9e>; /* SMARC S49 - I2C_GP_DAT */ 932*90bbe88eSMax Krummenacher }; 933*90bbe88eSMax Krummenacher 934*90bbe88eSMax Krummenacher /* SMARC I2C_GP as GPIOs */ 935*90bbe88eSMax Krummenacher pinctrl_lpi2c2_gpio: lpi2c2gpiogrp { 936*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_I2C2_SCL__AONMIX_TOP_GPIO1_IO_BIT2 0x40001b9e>, /* SMARC S48 - I2C_GP_CK */ 937*90bbe88eSMax Krummenacher <IMX95_PAD_I2C2_SDA__AONMIX_TOP_GPIO1_IO_BIT3 0x40001b9e>; /* SMARC S49 - I2C_GP_DAT */ 938*90bbe88eSMax Krummenacher }; 939*90bbe88eSMax Krummenacher 940*90bbe88eSMax Krummenacher /* SMARC I2C_PM */ 941*90bbe88eSMax Krummenacher pinctrl_lpi2c3: lpi2c3grp { 942*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO28__LPI2C3_SDA 0x40001b9e>, /* SMARC P122 - I2C_PM_DAT */ 943*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO29__LPI2C3_SCL 0x40001b9e>; /* SMARC P121 - I2C_PM_CK */ 944*90bbe88eSMax Krummenacher }; 945*90bbe88eSMax Krummenacher 946*90bbe88eSMax Krummenacher /* SMARC I2C_PM as GPIOs */ 947*90bbe88eSMax Krummenacher pinctrl_lpi2c3_gpio: lpi2c3gpiogrp { 948*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO28__GPIO2_IO_BIT28 0x40001b9e>, /* SMARC P122 - I2C_PM_DAT */ 949*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO29__GPIO2_IO_BIT29 0x40001b9e>; /* SMARC P121 - I2C_PM_CK */ 950*90bbe88eSMax Krummenacher }; 951*90bbe88eSMax Krummenacher 952*90bbe88eSMax Krummenacher /* I2C_SOM */ 953*90bbe88eSMax Krummenacher pinctrl_lpi2c4: lpi2c4grp { 954*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO31__LPI2C4_SCL 0x40001b9e>, /* I2C_SOM_CK */ 955*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO30__LPI2C4_SDA 0x40001b9e>; /* I2C_SOM_DAT */ 956*90bbe88eSMax Krummenacher }; 957*90bbe88eSMax Krummenacher 958*90bbe88eSMax Krummenacher /* I2C_SOM as GPIOs */ 959*90bbe88eSMax Krummenacher pinctrl_lpi2c4_gpio: lpi2c4gpiogrp { 960*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO31__GPIO2_IO_BIT31 0x40001b9e>, /* I2C_SOM_CK */ 961*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO30__GPIO2_IO_BIT30 0x40001b9e>; /* I2C_SOM_DAT */ 962*90bbe88eSMax Krummenacher }; 963*90bbe88eSMax Krummenacher 964*90bbe88eSMax Krummenacher /* SMARC I2C_LCD */ 965*90bbe88eSMax Krummenacher pinctrl_lpi2c5: lpi2c5grp { 966*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO22__LPI2C5_SDA 0x40001b9e>, /* SMARC S140 - I2C_LCD_DAT */ 967*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO23__LPI2C5_SCL 0x40001b9e>; /* SMARC S139 - I2C_LCD_CK */ 968*90bbe88eSMax Krummenacher }; 969*90bbe88eSMax Krummenacher 970*90bbe88eSMax Krummenacher /* SMARC I2C_LCD as GPIOs */ 971*90bbe88eSMax Krummenacher pinctrl_lpi2c5_gpio: lpi2c5gpiogrp { 972*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO22__GPIO2_IO_BIT22 0x40001b9e>, /* SMARC S140 - I2C_LCD_DAT */ 973*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO23__GPIO2_IO_BIT23 0x40001b9e>; /* SMARC S139 - I2C_LCD_CK */ 974*90bbe88eSMax Krummenacher }; 975*90bbe88eSMax Krummenacher 976*90bbe88eSMax Krummenacher /* I2C_CAM */ 977*90bbe88eSMax Krummenacher pinctrl_lpi2c7: lpi2c7grp { 978*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO08__LPI2C7_SDA 0x40001b9e>, /* I2C_CAM_DAT */ 979*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO09__LPI2C7_SCL 0x40001b9e>; /* I2C_CAM_CK */ 980*90bbe88eSMax Krummenacher }; 981*90bbe88eSMax Krummenacher 982*90bbe88eSMax Krummenacher /* I2C_CAM as GPIOs */ 983*90bbe88eSMax Krummenacher pinctrl_lpi2c7_gpio: lpi2c7gpiogrp { 984*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO08__GPIO2_IO_BIT8 0x40001b9e>, /* I2C_CAM_DAT */ 985*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO09__GPIO2_IO_BIT9 0x40001b9e>; /* I2C_CAM_CK */ 986*90bbe88eSMax Krummenacher }; 987*90bbe88eSMax Krummenacher 988*90bbe88eSMax Krummenacher /* SMARC SPI1 */ 989*90bbe88eSMax Krummenacher pinctrl_lpspi4: lpspi4grp { 990*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO37__LPSPI4_SCK 0x3fe>, /* SMARC P56 - SPI1_CK */ 991*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO36__LPSPI4_SOUT 0x3fe>, /* SMARC P58 - SPI1_DO */ 992*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO19__LPSPI4_SIN 0x3fe>, /* SMARC P57 - SPI1_DIN */ 993*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO33__GPIO5_IO_BIT13 0x3fe>, /* SPI1_TPM_CS# */ 994*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO18__GPIO2_IO_BIT18 0x3fe>, /* SMARC P54 - SPI1_CS0# */ 995*90bbe88eSMax Krummenacher <IMX95_PAD_XSPI1_SS1_B__GPIO5_IO_BIT11 0x3fe>; /* SMARC P55 - SPI1_CS1# */ 996*90bbe88eSMax Krummenacher }; 997*90bbe88eSMax Krummenacher 998*90bbe88eSMax Krummenacher /* SMARC SPI0 */ 999*90bbe88eSMax Krummenacher pinctrl_lpspi6: lpspi6grp { 1000*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO00__GPIO2_IO_BIT0 0x3fe>, /* SMARC P43 - SPI0_CS0# */ 1001*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO24__GPIO2_IO_BIT24 0x3fe>, /* SMARC P31 - SPI0_CS1# */ 1002*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO01__LPSPI6_SIN 0x3fe>, /* SMARC P45 - SPI0_DIN */ 1003*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO02__LPSPI6_SOUT 0x3fe>, /* SMARC P46 - SPI0_DO */ 1004*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO03__LPSPI6_SCK 0x3fe>; /* SMARC P44 - SPI0_CK */ 1005*90bbe88eSMax Krummenacher }; 1006*90bbe88eSMax Krummenacher 1007*90bbe88eSMax Krummenacher /* SMARC PCIE_A */ 1008*90bbe88eSMax Krummenacher pinctrl_pcie0: pcie0grp { 1009*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO32__HSIOMIX_TOP_PCIE1_CLKREQ_B 0x40001b1e>; /* SMARC P78 - PCIE_A_CKREQ# */ 1010*90bbe88eSMax Krummenacher }; 1011*90bbe88eSMax Krummenacher 1012*90bbe88eSMax Krummenacher /* SMARC PCIE_B */ 1013*90bbe88eSMax Krummenacher pinctrl_pcie1: pcie1grp { 1014*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO35__HSIOMIX_TOP_PCIE2_CLKREQ_B 0x40001b1e>; /* SMARC P77 - PCIE_B_CKREQ# */ 1015*90bbe88eSMax Krummenacher }; 1016*90bbe88eSMax Krummenacher 1017*90bbe88eSMax Krummenacher /* SMARC I2S0 */ 1018*90bbe88eSMax Krummenacher pinctrl_sai3: sai3grp { 1019*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO16__SAI3_TX_BCLK 0x11e>, /* SMARC S38 - I2S0_CK */ 1020*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO20__SAI3_RX_DATA_BIT0 0x11e>, /* SMARC S41 - I2S0_SDIN */ 1021*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO21__SAI3_TX_DATA_BIT0 0x11e>, /* SMARC S40 - I2S0_SDOUT */ 1022*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO26__SAI3_TX_SYNC 0x11e>; /* SMARC S39 - I2S0_LRCK */ 1023*90bbe88eSMax Krummenacher }; 1024*90bbe88eSMax Krummenacher 1025*90bbe88eSMax Krummenacher /* SMARC AUDIO_MCK */ 1026*90bbe88eSMax Krummenacher pinctrl_sai3_mclk: sai3mclkgrp { 1027*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO17__SAI3_MCLK 0x31e>; /* SMARC S42 - AUDIO_MCK */ 1028*90bbe88eSMax Krummenacher }; 1029*90bbe88eSMax Krummenacher 1030*90bbe88eSMax Krummenacher /* SMARC I2S2 */ 1031*90bbe88eSMax Krummenacher pinctrl_sai5: sai5grp { 1032*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_XSPI1_DATA6__SAI5_TX_BCLK 0x11e>, /* SMARC S53 - I2S2_CK */ 1033*90bbe88eSMax Krummenacher <IMX95_PAD_XSPI1_DATA4__SAI5_TX_DATA_BIT0 0x11e>, /* SMARC S51 - I2S2_SDOUT */ 1034*90bbe88eSMax Krummenacher <IMX95_PAD_XSPI1_DATA7__SAI5_RX_DATA_BIT0 0x11e>, /* SMARC S52 - I2S2_SDIN */ 1035*90bbe88eSMax Krummenacher <IMX95_PAD_XSPI1_DATA5__SAI5_TX_SYNC 0x11e>; /* SMARC S50 - I2S2_LRCK */ 1036*90bbe88eSMax Krummenacher }; 1037*90bbe88eSMax Krummenacher 1038*90bbe88eSMax Krummenacher /* SMARC SMB_ALERT# */ 1039*90bbe88eSMax Krummenacher pinctrl_smb_alert_gpio: smbalertgrp { 1040*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_CCM_CLKO3__GPIO4_IO_BIT28 0x31e>; /* SMARC P1 - SMB_ALERT# */ 1041*90bbe88eSMax Krummenacher }; 1042*90bbe88eSMax Krummenacher 1043*90bbe88eSMax Krummenacher /* SMARC SER1, used as the Linux Console */ 1044*90bbe88eSMax Krummenacher pinctrl_uart1: uart1grp { 1045*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_UART1_TXD__AONMIX_TOP_LPUART1_TX 0x31e>, /* SMARC P134 - SER1_TX */ 1046*90bbe88eSMax Krummenacher <IMX95_PAD_UART1_RXD__AONMIX_TOP_LPUART1_RX 0x31e>; /* SMARC P135 - SER1_RX */ 1047*90bbe88eSMax Krummenacher }; 1048*90bbe88eSMax Krummenacher 1049*90bbe88eSMax Krummenacher /* SMARC SER0 */ 1050*90bbe88eSMax Krummenacher pinctrl_uart2: uart2grp { 1051*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SAI1_TXC__AONMIX_TOP_LPUART2_CTS_B 0x31e>, /* SMARC P132 - SER0_CTS# */ 1052*90bbe88eSMax Krummenacher <IMX95_PAD_SAI1_TXD0__AONMIX_TOP_LPUART2_RTS_B 0x31e>, /* SMARC P131 - SER0_RTS# */ 1053*90bbe88eSMax Krummenacher <IMX95_PAD_UART2_RXD__AONMIX_TOP_LPUART2_RX 0x31e>, /* SMARC P130 - SER0_RX */ 1054*90bbe88eSMax Krummenacher <IMX95_PAD_UART2_TXD__AONMIX_TOP_LPUART2_TX 0x31e>; /* SMARC P129 - SER0_TX */ 1055*90bbe88eSMax Krummenacher }; 1056*90bbe88eSMax Krummenacher 1057*90bbe88eSMax Krummenacher /* SMARC SER3 */ 1058*90bbe88eSMax Krummenacher pinctrl_uart3: uart3grp { 1059*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_GPIO_IO14__LPUART3_TX 0x31e>, /* SMARC P140 - SER3_TX */ 1060*90bbe88eSMax Krummenacher <IMX95_PAD_GPIO_IO15__LPUART3_RX 0x31e>; /* SMARC P141 - SER3_RX */ 1061*90bbe88eSMax Krummenacher }; 1062*90bbe88eSMax Krummenacher 1063*90bbe88eSMax Krummenacher /* On-module eMMC */ 1064*90bbe88eSMax Krummenacher pinctrl_usdhc1: usdhc1grp { 1065*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD1_CLK__USDHC1_CLK 0x158e>, /* SD1_CLK */ 1066*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_CMD__USDHC1_CMD 0x138e>, /* SD1_CMD */ 1067*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA0__USDHC1_DATA0 0x138e>, /* SD1_DATA0 */ 1068*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA1__USDHC1_DATA1 0x138e>, /* SD1_DATA1 */ 1069*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA2__USDHC1_DATA2 0x138e>, /* SD1_DATA2 */ 1070*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA3__USDHC1_DATA3 0x138e>, /* SD1_DATA3 */ 1071*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA4__USDHC1_DATA4 0x138e>, /* SD1_DATA4 */ 1072*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA5__USDHC1_DATA5 0x138e>, /* SD1_DATA5 */ 1073*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA6__USDHC1_DATA6 0x138e>, /* SD1_DATA6 */ 1074*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA7__USDHC1_DATA7 0x138e>, /* SD1_DATA7 */ 1075*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_STROBE__USDHC1_STROBE 0x158e>; /* SD1_STROBE */ 1076*90bbe88eSMax Krummenacher }; 1077*90bbe88eSMax Krummenacher 1078*90bbe88eSMax Krummenacher pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp { 1079*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD1_CLK__USDHC1_CLK 0x15fe>, /* SD1_CLK */ 1080*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_CMD__USDHC1_CMD 0x13fe>, /* SD1_CMD */ 1081*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA0__USDHC1_DATA0 0x13fe>, /* SD1_DATA0 */ 1082*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA1__USDHC1_DATA1 0x13fe>, /* SD1_DATA1 */ 1083*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA2__USDHC1_DATA2 0x13fe>, /* SD1_DATA2 */ 1084*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA3__USDHC1_DATA3 0x13fe>, /* SD1_DATA3 */ 1085*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA4__USDHC1_DATA4 0x13fe>, /* SD1_DATA4 */ 1086*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA5__USDHC1_DATA5 0x13fe>, /* SD1_DATA5 */ 1087*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA6__USDHC1_DATA6 0x13fe>, /* SD1_DATA6 */ 1088*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_DATA7__USDHC1_DATA7 0x13fe>, /* SD1_DATA7 */ 1089*90bbe88eSMax Krummenacher <IMX95_PAD_SD1_STROBE__USDHC1_STROBE 0x15fe>; /* SD1_STROBE */ 1090*90bbe88eSMax Krummenacher }; 1091*90bbe88eSMax Krummenacher 1092*90bbe88eSMax Krummenacher /* SMARC SDIO */ 1093*90bbe88eSMax Krummenacher pinctrl_usdhc2: usdhc2grp { 1094*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD2_CLK__USDHC2_CLK 0x158e>, /* SMARC P36 - SDIO_CK */ 1095*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_CMD__USDHC2_CMD 0x138e>, /* SMARC P34 - SDIO_CMD */ 1096*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA0__USDHC2_DATA0 0x138e>, /* SMARC P39 - SDIO_D0 */ 1097*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA1__USDHC2_DATA1 0x138e>, /* SMARC P40 - SDIO_D1 */ 1098*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA2__USDHC2_DATA2 0x138e>, /* SMARC P41 - SDIO_D2 */ 1099*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA3__USDHC2_DATA3 0x138e>; /* SMARC P42 - SDIO_D3 */ 1100*90bbe88eSMax Krummenacher }; 1101*90bbe88eSMax Krummenacher 1102*90bbe88eSMax Krummenacher /* SMARC SDIO */ 1103*90bbe88eSMax Krummenacher pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp { 1104*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD2_CLK__USDHC2_CLK 0x15fe>, /* SMARC P36 - SDIO_CK */ 1105*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_CMD__USDHC2_CMD 0x13fe>, /* SMARC P34 - SDIO_CMD */ 1106*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA0__USDHC2_DATA0 0x13fe>, /* SMARC P39 - SDIO_D0 */ 1107*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA1__USDHC2_DATA1 0x13fe>, /* SMARC P40 - SDIO_D1 */ 1108*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA2__USDHC2_DATA2 0x13fe>, /* SMARC P41 - SDIO_D2 */ 1109*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA3__USDHC2_DATA3 0x13fe>; /* SMARC P42 - SDIO_D3 */ 1110*90bbe88eSMax Krummenacher }; 1111*90bbe88eSMax Krummenacher 1112*90bbe88eSMax Krummenacher /* SMARC SDIO */ 1113*90bbe88eSMax Krummenacher pinctrl_usdhc2_sleep: usdhc2-sleepgrp { 1114*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD2_CLK__USDHC2_CLK 0x400>, /* SMARC P36 - SDIO_CK */ 1115*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_CMD__USDHC2_CMD 0x400>, /* SMARC P34 - SDIO_CMD */ 1116*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA0__USDHC2_DATA0 0x400>, /* SMARC P39 - SDIO_D0 */ 1117*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA1__USDHC2_DATA1 0x400>, /* SMARC P40 - SDIO_D1 */ 1118*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA2__USDHC2_DATA2 0x400>, /* SMARC P41 - SDIO_D2 */ 1119*90bbe88eSMax Krummenacher <IMX95_PAD_SD2_DATA3__USDHC2_DATA3 0x400>; /* SMARC P42 - SDIO_D3 */ 1120*90bbe88eSMax Krummenacher }; 1121*90bbe88eSMax Krummenacher 1122*90bbe88eSMax Krummenacher /* SMARC SDIO_CD# */ 1123*90bbe88eSMax Krummenacher pinctrl_usdhc2_cd: usdhc2-cdgrp { 1124*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD2_CD_B__GPIO3_IO_BIT0 0x1100>; /* SMARC P35 - SDIO_CD# */ 1125*90bbe88eSMax Krummenacher }; 1126*90bbe88eSMax Krummenacher 1127*90bbe88eSMax Krummenacher /* SMARC SDIO_PWR_EN */ 1128*90bbe88eSMax Krummenacher pinctrl_usdhc2_pwr_en: usdhc2-pwrengrp { 1129*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD2_RESET_B__GPIO3_IO_BIT7 0x11e>; /* SMARC P37 - SDIO_PWR_EN */ 1130*90bbe88eSMax Krummenacher }; 1131*90bbe88eSMax Krummenacher 1132*90bbe88eSMax Krummenacher pinctrl_usdhc2_vsel: usdhc2-vselgrp { 1133*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD2_VSELECT__GPIO3_IO_BIT19 0x4>; /* PMIC_SD2_VSEL */ 1134*90bbe88eSMax Krummenacher }; 1135*90bbe88eSMax Krummenacher 1136*90bbe88eSMax Krummenacher /* On-module Wi-Fi */ 1137*90bbe88eSMax Krummenacher pinctrl_usdhc3: usdhc3grp { 1138*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD3_CLK__USDHC3_CLK 0x158e>, /* SD3_CLK */ 1139*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_CMD__USDHC3_CMD 0x138e>, /* SD3_CMD */ 1140*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA0__USDHC3_DATA0 0x138e>, /* SD3_DATA0 */ 1141*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA1__USDHC3_DATA1 0x138e>, /* SD3_DATA1 */ 1142*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA2__USDHC3_DATA2 0x138e>, /* SD3_DATA2 */ 1143*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA3__USDHC3_DATA3 0x138e>; /* SD3_DATA3 */ 1144*90bbe88eSMax Krummenacher }; 1145*90bbe88eSMax Krummenacher 1146*90bbe88eSMax Krummenacher /* On-module Wi-Fi */ 1147*90bbe88eSMax Krummenacher pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp { 1148*90bbe88eSMax Krummenacher fsl,pins = <IMX95_PAD_SD3_CLK__USDHC3_CLK 0x15fe>, /* SD3_CLK */ 1149*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_CMD__USDHC3_CMD 0x13fe>, /* SD3_CMD */ 1150*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA0__USDHC3_DATA0 0x13fe>, /* SD3_DATA1 */ 1151*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA1__USDHC3_DATA1 0x13fe>, /* SD3_DATA2 */ 1152*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA2__USDHC3_DATA2 0x13fe>, /* SD3_DATA3 */ 1153*90bbe88eSMax Krummenacher <IMX95_PAD_SD3_DATA3__USDHC3_DATA3 0x13fe>; /* SD3_DATA4 */ 1154*90bbe88eSMax Krummenacher }; 1155*90bbe88eSMax Krummenacher}; 1156