1*8d13bc63SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2*8d13bc63SEmmanuel Vadot/* 3*8d13bc63SEmmanuel Vadot * Copyright 2023 Toradex 4*8d13bc63SEmmanuel Vadot * 5*8d13bc63SEmmanuel Vadot * Common dtsi for Verdin IMX8MM SoM on Mallow carrier board 6*8d13bc63SEmmanuel Vadot * 7*8d13bc63SEmmanuel Vadot * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx-8m-mini-nano 8*8d13bc63SEmmanuel Vadot * https://www.toradex.com/products/carrier-board/mallow-carrier-board 9*8d13bc63SEmmanuel Vadot */ 10*8d13bc63SEmmanuel Vadot 11*8d13bc63SEmmanuel Vadot#include <dt-bindings/leds/common.h> 12*8d13bc63SEmmanuel Vadot 13*8d13bc63SEmmanuel Vadot/ { 14*8d13bc63SEmmanuel Vadot leds { 15*8d13bc63SEmmanuel Vadot compatible = "gpio-leds"; 16*8d13bc63SEmmanuel Vadot pinctrl-names = "default"; 17*8d13bc63SEmmanuel Vadot pinctrl-0 = <&pinctrl_leds>; 18*8d13bc63SEmmanuel Vadot 19*8d13bc63SEmmanuel Vadot /* SODIMM 52 - USER_LED_1_RED */ 20*8d13bc63SEmmanuel Vadot led-0 { 21*8d13bc63SEmmanuel Vadot color = <LED_COLOR_ID_RED>; 22*8d13bc63SEmmanuel Vadot function = LED_FUNCTION_DEBUG; 23*8d13bc63SEmmanuel Vadot function-enumerator = <1>; 24*8d13bc63SEmmanuel Vadot gpios = <&gpio3 0 GPIO_ACTIVE_HIGH>; 25*8d13bc63SEmmanuel Vadot }; 26*8d13bc63SEmmanuel Vadot 27*8d13bc63SEmmanuel Vadot /* SODIMM 54 - USER_LED_1_GREEN */ 28*8d13bc63SEmmanuel Vadot led-1 { 29*8d13bc63SEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 30*8d13bc63SEmmanuel Vadot function = LED_FUNCTION_DEBUG; 31*8d13bc63SEmmanuel Vadot function-enumerator = <1>; 32*8d13bc63SEmmanuel Vadot gpios = <&gpio3 1 GPIO_ACTIVE_HIGH>; 33*8d13bc63SEmmanuel Vadot }; 34*8d13bc63SEmmanuel Vadot 35*8d13bc63SEmmanuel Vadot /* SODIMM 56 - USER_LED_2_RED */ 36*8d13bc63SEmmanuel Vadot led-2 { 37*8d13bc63SEmmanuel Vadot color = <LED_COLOR_ID_RED>; 38*8d13bc63SEmmanuel Vadot function = LED_FUNCTION_DEBUG; 39*8d13bc63SEmmanuel Vadot function-enumerator = <2>; 40*8d13bc63SEmmanuel Vadot gpios = <&gpio3 6 GPIO_ACTIVE_HIGH>; 41*8d13bc63SEmmanuel Vadot }; 42*8d13bc63SEmmanuel Vadot 43*8d13bc63SEmmanuel Vadot /* SODIMM 58 - USER_LED_2_GREEN */ 44*8d13bc63SEmmanuel Vadot led-3 { 45*8d13bc63SEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 46*8d13bc63SEmmanuel Vadot function = LED_FUNCTION_DEBUG; 47*8d13bc63SEmmanuel Vadot function-enumerator = <2>; 48*8d13bc63SEmmanuel Vadot gpios = <&gpio3 7 GPIO_ACTIVE_HIGH>; 49*8d13bc63SEmmanuel Vadot }; 50*8d13bc63SEmmanuel Vadot }; 51*8d13bc63SEmmanuel Vadot}; 52*8d13bc63SEmmanuel Vadot 53*8d13bc63SEmmanuel Vadot/* Verdin SPI_1 */ 54*8d13bc63SEmmanuel Vadot&ecspi2 { 55*8d13bc63SEmmanuel Vadot pinctrl-0 = <&pinctrl_ecspi2>, <&pinctrl_tpm_cs>; 56*8d13bc63SEmmanuel Vadot cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>, <&gpio3 2 GPIO_ACTIVE_LOW>; 57*8d13bc63SEmmanuel Vadot status = "okay"; 58*8d13bc63SEmmanuel Vadot 59*8d13bc63SEmmanuel Vadot tpm@1 { 60*8d13bc63SEmmanuel Vadot compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 61*8d13bc63SEmmanuel Vadot reg = <1>; 62*8d13bc63SEmmanuel Vadot pinctrl-names = "default"; 63*8d13bc63SEmmanuel Vadot pinctrl-0 = <&pinctrl_tpm_irq>; 64*8d13bc63SEmmanuel Vadot interrupt-parent = <&gpio3>; 65*8d13bc63SEmmanuel Vadot interrupts = <14 IRQ_TYPE_LEVEL_LOW>; 66*8d13bc63SEmmanuel Vadot spi-max-frequency = <18500000>; 67*8d13bc63SEmmanuel Vadot }; 68*8d13bc63SEmmanuel Vadot}; 69*8d13bc63SEmmanuel Vadot 70*8d13bc63SEmmanuel Vadot/* EEPROM on Mallow */ 71*8d13bc63SEmmanuel Vadot&eeprom_carrier_board { 72*8d13bc63SEmmanuel Vadot status = "okay"; 73*8d13bc63SEmmanuel Vadot}; 74*8d13bc63SEmmanuel Vadot 75*8d13bc63SEmmanuel Vadot/* Verdin ETH_1 */ 76*8d13bc63SEmmanuel Vadot&fec1 { 77*8d13bc63SEmmanuel Vadot status = "okay"; 78*8d13bc63SEmmanuel Vadot}; 79*8d13bc63SEmmanuel Vadot 80*8d13bc63SEmmanuel Vadot/* Temperature sensor on Mallow */ 81*8d13bc63SEmmanuel Vadot&hwmon_temp { 82*8d13bc63SEmmanuel Vadot compatible = "ti,tmp1075"; 83*8d13bc63SEmmanuel Vadot status = "okay"; 84*8d13bc63SEmmanuel Vadot}; 85*8d13bc63SEmmanuel Vadot 86*8d13bc63SEmmanuel Vadot/* Verdin I2C_2_DSI */ 87*8d13bc63SEmmanuel Vadot&i2c2 { 88*8d13bc63SEmmanuel Vadot status = "okay"; 89*8d13bc63SEmmanuel Vadot}; 90*8d13bc63SEmmanuel Vadot 91*8d13bc63SEmmanuel Vadot/* Verdin I2C_4_CSI */ 92*8d13bc63SEmmanuel Vadot&i2c3 { 93*8d13bc63SEmmanuel Vadot status = "okay"; 94*8d13bc63SEmmanuel Vadot}; 95*8d13bc63SEmmanuel Vadot 96*8d13bc63SEmmanuel Vadot/* Verdin I2C_1 */ 97*8d13bc63SEmmanuel Vadot&i2c4 { 98*8d13bc63SEmmanuel Vadot status = "okay"; 99*8d13bc63SEmmanuel Vadot}; 100*8d13bc63SEmmanuel Vadot 101*8d13bc63SEmmanuel Vadot/* Verdin PCIE_1 */ 102*8d13bc63SEmmanuel Vadot&pcie0 { 103*8d13bc63SEmmanuel Vadot status = "okay"; 104*8d13bc63SEmmanuel Vadot}; 105*8d13bc63SEmmanuel Vadot 106*8d13bc63SEmmanuel Vadot&pcie_phy { 107*8d13bc63SEmmanuel Vadot status = "okay"; 108*8d13bc63SEmmanuel Vadot}; 109*8d13bc63SEmmanuel Vadot 110*8d13bc63SEmmanuel Vadot/* Verdin PWM_3_DSI */ 111*8d13bc63SEmmanuel Vadot&pwm1 { 112*8d13bc63SEmmanuel Vadot status = "okay"; 113*8d13bc63SEmmanuel Vadot}; 114*8d13bc63SEmmanuel Vadot 115*8d13bc63SEmmanuel Vadot/* Verdin PWM_1 */ 116*8d13bc63SEmmanuel Vadot&pwm2 { 117*8d13bc63SEmmanuel Vadot status = "okay"; 118*8d13bc63SEmmanuel Vadot}; 119*8d13bc63SEmmanuel Vadot 120*8d13bc63SEmmanuel Vadot/* Verdin PWM_2 */ 121*8d13bc63SEmmanuel Vadot&pwm3 { 122*8d13bc63SEmmanuel Vadot status = "okay"; 123*8d13bc63SEmmanuel Vadot}; 124*8d13bc63SEmmanuel Vadot 125*8d13bc63SEmmanuel Vadot/* Verdin UART_3 */ 126*8d13bc63SEmmanuel Vadot&uart1 { 127*8d13bc63SEmmanuel Vadot status = "okay"; 128*8d13bc63SEmmanuel Vadot}; 129*8d13bc63SEmmanuel Vadot 130*8d13bc63SEmmanuel Vadot/* Verdin UART_1 */ 131*8d13bc63SEmmanuel Vadot&uart2 { 132*8d13bc63SEmmanuel Vadot status = "okay"; 133*8d13bc63SEmmanuel Vadot}; 134*8d13bc63SEmmanuel Vadot 135*8d13bc63SEmmanuel Vadot/* Verdin UART_2 */ 136*8d13bc63SEmmanuel Vadot&uart3 { 137*8d13bc63SEmmanuel Vadot status = "okay"; 138*8d13bc63SEmmanuel Vadot}; 139*8d13bc63SEmmanuel Vadot 140*8d13bc63SEmmanuel Vadot/* Verdin USB_1 */ 141*8d13bc63SEmmanuel Vadot&usbotg1 { 142*8d13bc63SEmmanuel Vadot status = "okay"; 143*8d13bc63SEmmanuel Vadot}; 144*8d13bc63SEmmanuel Vadot 145*8d13bc63SEmmanuel Vadot/* Verdin USB_2 */ 146*8d13bc63SEmmanuel Vadot&usbotg2 { 147*8d13bc63SEmmanuel Vadot status = "okay"; 148*8d13bc63SEmmanuel Vadot}; 149*8d13bc63SEmmanuel Vadot 150*8d13bc63SEmmanuel Vadot/* Verdin SD_1 */ 151*8d13bc63SEmmanuel Vadot&usdhc2 { 152*8d13bc63SEmmanuel Vadot status = "okay"; 153*8d13bc63SEmmanuel Vadot}; 154*8d13bc63SEmmanuel Vadot 155*8d13bc63SEmmanuel Vadot&iomuxc { 156*8d13bc63SEmmanuel Vadot pinctrl_leds: ledsgrp { 157*8d13bc63SEmmanuel Vadot fsl,pins = 158*8d13bc63SEmmanuel Vadot <MX8MM_IOMUXC_NAND_ALE_GPIO3_IO0 0x106>, /* SODIMM 52 */ 159*8d13bc63SEmmanuel Vadot <MX8MM_IOMUXC_NAND_CE0_B_GPIO3_IO1 0x106>, /* SODIMM 54 */ 160*8d13bc63SEmmanuel Vadot <MX8MM_IOMUXC_NAND_DATA00_GPIO3_IO6 0x106>, /* SODIMM 56 */ 161*8d13bc63SEmmanuel Vadot <MX8MM_IOMUXC_NAND_DATA01_GPIO3_IO7 0x106>; /* SODIMM 58 */ 162*8d13bc63SEmmanuel Vadot }; 163*8d13bc63SEmmanuel Vadot 164*8d13bc63SEmmanuel Vadot pinctrl_tpm_cs: tpmcsgrp { 165*8d13bc63SEmmanuel Vadot fsl,pins = 166*8d13bc63SEmmanuel Vadot <MX8MM_IOMUXC_NAND_CE1_B_GPIO3_IO2 0x146>; /* SODIMM 64 */ 167*8d13bc63SEmmanuel Vadot }; 168*8d13bc63SEmmanuel Vadot 169*8d13bc63SEmmanuel Vadot pinctrl_tpm_irq: tpmirqgrp { 170*8d13bc63SEmmanuel Vadot fsl,pins = 171*8d13bc63SEmmanuel Vadot <MX8MM_IOMUXC_NAND_DQS_GPIO3_IO14 0x141>; /* SODIMM 66 */ 172*8d13bc63SEmmanuel Vadot }; 173*8d13bc63SEmmanuel Vadot}; 174