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