1*2f71fba0SErnest Van Hoecke// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2*2f71fba0SErnest Van Hoecke/* 3*2f71fba0SErnest Van Hoecke * Copyright (c) Toradex 4*2f71fba0SErnest Van Hoecke * 5*2f71fba0SErnest Van Hoecke * Common dtsi for Verdin iMX95 SoM on Mallow carrier board 6*2f71fba0SErnest Van Hoecke * 7*2f71fba0SErnest Van Hoecke * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95 8*2f71fba0SErnest Van Hoecke * https://www.toradex.com/products/carrier-board/mallow-carrier-board 9*2f71fba0SErnest Van Hoecke */ 10*2f71fba0SErnest Van Hoecke 11*2f71fba0SErnest Van Hoecke#include <dt-bindings/leds/common.h> 12*2f71fba0SErnest Van Hoecke 13*2f71fba0SErnest Van Hoecke/ { 14*2f71fba0SErnest Van Hoecke aliases { 15*2f71fba0SErnest Van Hoecke eeprom1 = &carrier_eeprom; 16*2f71fba0SErnest Van Hoecke }; 17*2f71fba0SErnest Van Hoecke 18*2f71fba0SErnest Van Hoecke leds { 19*2f71fba0SErnest Van Hoecke compatible = "gpio-leds"; 20*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 21*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_qspi1_clk_gpio>, 22*2f71fba0SErnest Van Hoecke <&pinctrl_qspi1_cs_gpio>, 23*2f71fba0SErnest Van Hoecke <&pinctrl_qspi1_io0_gpio>, 24*2f71fba0SErnest Van Hoecke <&pinctrl_qspi1_io1_gpio>; 25*2f71fba0SErnest Van Hoecke 26*2f71fba0SErnest Van Hoecke /* SODIMM 52 - USER_LED_1_RED */ 27*2f71fba0SErnest Van Hoecke led-0 { 28*2f71fba0SErnest Van Hoecke color = <LED_COLOR_ID_RED>; 29*2f71fba0SErnest Van Hoecke function = LED_FUNCTION_DEBUG; 30*2f71fba0SErnest Van Hoecke function-enumerator = <1>; 31*2f71fba0SErnest Van Hoecke gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>; 32*2f71fba0SErnest Van Hoecke }; 33*2f71fba0SErnest Van Hoecke 34*2f71fba0SErnest Van Hoecke /* SODIMM 54 - USER_LED_1_GREEN */ 35*2f71fba0SErnest Van Hoecke led-1 { 36*2f71fba0SErnest Van Hoecke color = <LED_COLOR_ID_GREEN>; 37*2f71fba0SErnest Van Hoecke function = LED_FUNCTION_DEBUG; 38*2f71fba0SErnest Van Hoecke function-enumerator = <1>; 39*2f71fba0SErnest Van Hoecke gpios = <&gpio5 10 GPIO_ACTIVE_HIGH>; 40*2f71fba0SErnest Van Hoecke }; 41*2f71fba0SErnest Van Hoecke 42*2f71fba0SErnest Van Hoecke /* SODIMM 56 - USER_LED_2_RED */ 43*2f71fba0SErnest Van Hoecke led-2 { 44*2f71fba0SErnest Van Hoecke color = <LED_COLOR_ID_RED>; 45*2f71fba0SErnest Van Hoecke function = LED_FUNCTION_DEBUG; 46*2f71fba0SErnest Van Hoecke function-enumerator = <2>; 47*2f71fba0SErnest Van Hoecke gpios = <&gpio5 0 GPIO_ACTIVE_HIGH>; 48*2f71fba0SErnest Van Hoecke }; 49*2f71fba0SErnest Van Hoecke 50*2f71fba0SErnest Van Hoecke /* SODIMM 58 - USER_LED_2_GREEN */ 51*2f71fba0SErnest Van Hoecke led-3 { 52*2f71fba0SErnest Van Hoecke color = <LED_COLOR_ID_GREEN>; 53*2f71fba0SErnest Van Hoecke function = LED_FUNCTION_DEBUG; 54*2f71fba0SErnest Van Hoecke function-enumerator = <2>; 55*2f71fba0SErnest Van Hoecke gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; 56*2f71fba0SErnest Van Hoecke }; 57*2f71fba0SErnest Van Hoecke }; 58*2f71fba0SErnest Van Hoecke}; 59*2f71fba0SErnest Van Hoecke 60*2f71fba0SErnest Van Hoecke/* Verdin ADC_1, ADC_2, ADC_3 and ADC_4 */ 61*2f71fba0SErnest Van Hoecke&adc1 { 62*2f71fba0SErnest Van Hoecke status = "okay"; 63*2f71fba0SErnest Van Hoecke}; 64*2f71fba0SErnest Van Hoecke 65*2f71fba0SErnest Van Hoecke/* Verdin ETH_1 (On-module PHY) */ 66*2f71fba0SErnest Van Hoecke&enetc_port0 { 67*2f71fba0SErnest Van Hoecke status = "okay"; 68*2f71fba0SErnest Van Hoecke}; 69*2f71fba0SErnest Van Hoecke 70*2f71fba0SErnest Van Hoecke/* Verdin CAN_1 */ 71*2f71fba0SErnest Van Hoecke&flexcan1 { 72*2f71fba0SErnest Van Hoecke status = "okay"; 73*2f71fba0SErnest Van Hoecke}; 74*2f71fba0SErnest Van Hoecke 75*2f71fba0SErnest Van Hoecke/* Verdin CAN_2 */ 76*2f71fba0SErnest Van Hoecke&flexcan2 { 77*2f71fba0SErnest Van Hoecke status = "okay"; 78*2f71fba0SErnest Van Hoecke}; 79*2f71fba0SErnest Van Hoecke 80*2f71fba0SErnest Van Hoecke&gpio1 { 81*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 82*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; 83*2f71fba0SErnest Van Hoecke}; 84*2f71fba0SErnest Van Hoecke 85*2f71fba0SErnest Van Hoecke&gpio2 { 86*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 87*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_gpio1>, 88*2f71fba0SErnest Van Hoecke <&pinctrl_gpio2>, 89*2f71fba0SErnest Van Hoecke <&pinctrl_gpio3>; 90*2f71fba0SErnest Van Hoecke}; 91*2f71fba0SErnest Van Hoecke 92*2f71fba0SErnest Van Hoecke&gpio3 { 93*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 94*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_gpio6>; 95*2f71fba0SErnest Van Hoecke}; 96*2f71fba0SErnest Van Hoecke 97*2f71fba0SErnest Van Hoecke&gpio4 { 98*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 99*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_gpio5>; 100*2f71fba0SErnest Van Hoecke}; 101*2f71fba0SErnest Van Hoecke 102*2f71fba0SErnest Van Hoecke&gpio5 { 103*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 104*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_gpio4>; 105*2f71fba0SErnest Van Hoecke}; 106*2f71fba0SErnest Van Hoecke 107*2f71fba0SErnest Van Hoecke/* Verdin I2C_3_HDMI */ 108*2f71fba0SErnest Van Hoecke&i3c2 { 109*2f71fba0SErnest Van Hoecke status = "okay"; 110*2f71fba0SErnest Van Hoecke}; 111*2f71fba0SErnest Van Hoecke 112*2f71fba0SErnest Van Hoecke/* Verdin I2C_2_DSI */ 113*2f71fba0SErnest Van Hoecke&lpi2c3 { 114*2f71fba0SErnest Van Hoecke status = "okay"; 115*2f71fba0SErnest Van Hoecke}; 116*2f71fba0SErnest Van Hoecke 117*2f71fba0SErnest Van Hoecke/* Verdin I2C_1 */ 118*2f71fba0SErnest Van Hoecke&lpi2c4 { 119*2f71fba0SErnest Van Hoecke status = "okay"; 120*2f71fba0SErnest Van Hoecke 121*2f71fba0SErnest Van Hoecke temperature-sensor@4f { 122*2f71fba0SErnest Van Hoecke compatible = "ti,tmp1075"; 123*2f71fba0SErnest Van Hoecke reg = <0x4f>; 124*2f71fba0SErnest Van Hoecke }; 125*2f71fba0SErnest Van Hoecke 126*2f71fba0SErnest Van Hoecke carrier_eeprom: eeprom@57 { 127*2f71fba0SErnest Van Hoecke compatible = "st,24c02", "atmel,24c02"; 128*2f71fba0SErnest Van Hoecke reg = <0x57>; 129*2f71fba0SErnest Van Hoecke pagesize = <16>; 130*2f71fba0SErnest Van Hoecke }; 131*2f71fba0SErnest Van Hoecke}; 132*2f71fba0SErnest Van Hoecke 133*2f71fba0SErnest Van Hoecke/* Verdin I2C_4_CSI */ 134*2f71fba0SErnest Van Hoecke&lpi2c5 { 135*2f71fba0SErnest Van Hoecke status = "okay"; 136*2f71fba0SErnest Van Hoecke}; 137*2f71fba0SErnest Van Hoecke 138*2f71fba0SErnest Van Hoecke/* Verdin SPI_1 */ 139*2f71fba0SErnest Van Hoecke&lpspi6 { 140*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 141*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_lpspi6>, 142*2f71fba0SErnest Van Hoecke <&pinctrl_spi1_cs>, 143*2f71fba0SErnest Van Hoecke <&pinctrl_qspi1_cs2_gpio>; 144*2f71fba0SErnest Van Hoecke cs-gpios = <&gpio4 29 GPIO_ACTIVE_LOW>, 145*2f71fba0SErnest Van Hoecke <&som_gpio_expander 13 GPIO_ACTIVE_LOW>, 146*2f71fba0SErnest Van Hoecke <&gpio5 11 GPIO_ACTIVE_LOW>; 147*2f71fba0SErnest Van Hoecke 148*2f71fba0SErnest Van Hoecke tpm@2 { 149*2f71fba0SErnest Van Hoecke compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 150*2f71fba0SErnest Van Hoecke reg = <2>; 151*2f71fba0SErnest Van Hoecke pinctrl-names = "default"; 152*2f71fba0SErnest Van Hoecke pinctrl-0 = <&pinctrl_qspi1_dqs_gpio>; 153*2f71fba0SErnest Van Hoecke interrupt-parent = <&gpio5>; 154*2f71fba0SErnest Van Hoecke interrupts = <8 IRQ_TYPE_EDGE_FALLING>; 155*2f71fba0SErnest Van Hoecke spi-max-frequency = <18500000>; 156*2f71fba0SErnest Van Hoecke }; 157*2f71fba0SErnest Van Hoecke}; 158*2f71fba0SErnest Van Hoecke 159*2f71fba0SErnest Van Hoecke/* Verdin UART_3, used as the Linux console */ 160*2f71fba0SErnest Van Hoecke&lpuart1 { 161*2f71fba0SErnest Van Hoecke status = "okay"; 162*2f71fba0SErnest Van Hoecke}; 163*2f71fba0SErnest Van Hoecke 164*2f71fba0SErnest Van Hoecke/* Verdin UART_4 */ 165*2f71fba0SErnest Van Hoecke&lpuart2 { 166*2f71fba0SErnest Van Hoecke status = "okay"; 167*2f71fba0SErnest Van Hoecke}; 168*2f71fba0SErnest Van Hoecke 169*2f71fba0SErnest Van Hoecke/* Verdin UART_1 */ 170*2f71fba0SErnest Van Hoecke&lpuart7 { 171*2f71fba0SErnest Van Hoecke status = "okay"; 172*2f71fba0SErnest Van Hoecke}; 173*2f71fba0SErnest Van Hoecke 174*2f71fba0SErnest Van Hoecke/* Verdin UART_2 */ 175*2f71fba0SErnest Van Hoecke&lpuart8 { 176*2f71fba0SErnest Van Hoecke status = "okay"; 177*2f71fba0SErnest Van Hoecke}; 178*2f71fba0SErnest Van Hoecke 179*2f71fba0SErnest Van Hoecke/* Verdin PCIE_1 */ 180*2f71fba0SErnest Van Hoecke&pcie0 { 181*2f71fba0SErnest Van Hoecke status = "okay"; 182*2f71fba0SErnest Van Hoecke}; 183*2f71fba0SErnest Van Hoecke 184*2f71fba0SErnest Van Hoecke/* Verdin PWM_1 */ 185*2f71fba0SErnest Van Hoecke&tpm4 { 186*2f71fba0SErnest Van Hoecke status = "okay"; 187*2f71fba0SErnest Van Hoecke}; 188*2f71fba0SErnest Van Hoecke 189*2f71fba0SErnest Van Hoecke/* Verdin PWM_2 */ 190*2f71fba0SErnest Van Hoecke&tpm5 { 191*2f71fba0SErnest Van Hoecke status = "okay"; 192*2f71fba0SErnest Van Hoecke}; 193*2f71fba0SErnest Van Hoecke 194*2f71fba0SErnest Van Hoecke/* Verdin PWM_3_DSI */ 195*2f71fba0SErnest Van Hoecke&tpm6 { 196*2f71fba0SErnest Van Hoecke status = "okay"; 197*2f71fba0SErnest Van Hoecke}; 198*2f71fba0SErnest Van Hoecke 199*2f71fba0SErnest Van Hoecke/* Verdin USB_1 */ 200*2f71fba0SErnest Van Hoecke&usb2 { 201*2f71fba0SErnest Van Hoecke status = "okay"; 202*2f71fba0SErnest Van Hoecke}; 203*2f71fba0SErnest Van Hoecke 204*2f71fba0SErnest Van Hoecke/* Verdin USB_2 */ 205*2f71fba0SErnest Van Hoecke&usb3 { 206*2f71fba0SErnest Van Hoecke fsl,permanently-attached; 207*2f71fba0SErnest Van Hoecke 208*2f71fba0SErnest Van Hoecke status = "okay"; 209*2f71fba0SErnest Van Hoecke}; 210*2f71fba0SErnest Van Hoecke 211*2f71fba0SErnest Van Hoecke&usb3_phy { 212*2f71fba0SErnest Van Hoecke status = "okay"; 213*2f71fba0SErnest Van Hoecke}; 214*2f71fba0SErnest Van Hoecke 215*2f71fba0SErnest Van Hoecke/* Verdin SD_1 */ 216*2f71fba0SErnest Van Hoecke&usdhc2 { 217*2f71fba0SErnest Van Hoecke status = "okay"; 218*2f71fba0SErnest Van Hoecke}; 219*2f71fba0SErnest Van Hoecke 220*2f71fba0SErnest Van Hoecke/* Verdin CTRL_WAKE1_MICO# */ 221*2f71fba0SErnest Van Hoecke&verdin_gpio_keys { 222*2f71fba0SErnest Van Hoecke status = "okay"; 223*2f71fba0SErnest Van Hoecke}; 224