1*ae5de77eSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2*ae5de77eSEmmanuel Vadot/* 3*ae5de77eSEmmanuel Vadot * Copyright 2025 Toradex 4*ae5de77eSEmmanuel Vadot * 5*ae5de77eSEmmanuel Vadot * Common dtsi for Verdin AM62P SoM on Mallow carrier board 6*ae5de77eSEmmanuel Vadot * 7*ae5de77eSEmmanuel Vadot * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62p 8*ae5de77eSEmmanuel Vadot * https://www.toradex.com/products/carrier-board/mallow-carrier-board 9*ae5de77eSEmmanuel Vadot */ 10*ae5de77eSEmmanuel Vadot 11*ae5de77eSEmmanuel Vadot#include <dt-bindings/leds/common.h> 12*ae5de77eSEmmanuel Vadot 13*ae5de77eSEmmanuel Vadot/ { 14*ae5de77eSEmmanuel Vadot aliases { 15*ae5de77eSEmmanuel Vadot eeprom1 = &carrier_eeprom; 16*ae5de77eSEmmanuel Vadot }; 17*ae5de77eSEmmanuel Vadot 18*ae5de77eSEmmanuel Vadot leds { 19*ae5de77eSEmmanuel Vadot compatible = "gpio-leds"; 20*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 21*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pinctrl_qspi1_clk_gpio>, 22*ae5de77eSEmmanuel Vadot <&pinctrl_qspi1_cs_gpio>, 23*ae5de77eSEmmanuel Vadot <&pinctrl_qspi1_io0_gpio>, 24*ae5de77eSEmmanuel Vadot <&pinctrl_qspi1_io1_gpio>; 25*ae5de77eSEmmanuel Vadot 26*ae5de77eSEmmanuel Vadot /* SODIMM 52 - USER_LED_1_RED */ 27*ae5de77eSEmmanuel Vadot led-0 { 28*ae5de77eSEmmanuel Vadot color = <LED_COLOR_ID_RED>; 29*ae5de77eSEmmanuel Vadot function = LED_FUNCTION_DEBUG; 30*ae5de77eSEmmanuel Vadot function-enumerator = <1>; 31*ae5de77eSEmmanuel Vadot gpios = <&main_gpio0 0 GPIO_ACTIVE_HIGH>; 32*ae5de77eSEmmanuel Vadot }; 33*ae5de77eSEmmanuel Vadot 34*ae5de77eSEmmanuel Vadot /* SODIMM 54 - USER_LED_1_GREEN */ 35*ae5de77eSEmmanuel Vadot led-1 { 36*ae5de77eSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 37*ae5de77eSEmmanuel Vadot function = LED_FUNCTION_DEBUG; 38*ae5de77eSEmmanuel Vadot function-enumerator = <1>; 39*ae5de77eSEmmanuel Vadot gpios = <&main_gpio0 11 GPIO_ACTIVE_HIGH>; 40*ae5de77eSEmmanuel Vadot }; 41*ae5de77eSEmmanuel Vadot 42*ae5de77eSEmmanuel Vadot /* SODIMM 56 - USER_LED_2_RED */ 43*ae5de77eSEmmanuel Vadot led-2 { 44*ae5de77eSEmmanuel Vadot color = <LED_COLOR_ID_RED>; 45*ae5de77eSEmmanuel Vadot function = LED_FUNCTION_DEBUG; 46*ae5de77eSEmmanuel Vadot function-enumerator = <2>; 47*ae5de77eSEmmanuel Vadot gpios = <&main_gpio0 3 GPIO_ACTIVE_HIGH>; 48*ae5de77eSEmmanuel Vadot }; 49*ae5de77eSEmmanuel Vadot 50*ae5de77eSEmmanuel Vadot /* SODIMM 58 - USER_LED_2_GREEN */ 51*ae5de77eSEmmanuel Vadot led-3 { 52*ae5de77eSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 53*ae5de77eSEmmanuel Vadot function = LED_FUNCTION_DEBUG; 54*ae5de77eSEmmanuel Vadot function-enumerator = <2>; 55*ae5de77eSEmmanuel Vadot gpios = <&main_gpio0 4 GPIO_ACTIVE_HIGH>; 56*ae5de77eSEmmanuel Vadot }; 57*ae5de77eSEmmanuel Vadot }; 58*ae5de77eSEmmanuel Vadot}; 59*ae5de77eSEmmanuel Vadot 60*ae5de77eSEmmanuel Vadot/* Verdin ETHs */ 61*ae5de77eSEmmanuel Vadot&cpsw3g { 62*ae5de77eSEmmanuel Vadot status = "okay"; 63*ae5de77eSEmmanuel Vadot}; 64*ae5de77eSEmmanuel Vadot 65*ae5de77eSEmmanuel Vadot/* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ 66*ae5de77eSEmmanuel Vadot&cpsw3g_mdio { 67*ae5de77eSEmmanuel Vadot status = "okay"; 68*ae5de77eSEmmanuel Vadot}; 69*ae5de77eSEmmanuel Vadot 70*ae5de77eSEmmanuel Vadot/* Verdin ETH_1 (On-module PHY) */ 71*ae5de77eSEmmanuel Vadot&cpsw_port1 { 72*ae5de77eSEmmanuel Vadot status = "okay"; 73*ae5de77eSEmmanuel Vadot}; 74*ae5de77eSEmmanuel Vadot 75*ae5de77eSEmmanuel Vadot/* Verdin PWM_3_DSI */ 76*ae5de77eSEmmanuel Vadot&epwm0 { 77*ae5de77eSEmmanuel Vadot status = "okay"; 78*ae5de77eSEmmanuel Vadot}; 79*ae5de77eSEmmanuel Vadot 80*ae5de77eSEmmanuel Vadot/* Verdin PWM_1, PWM_2 */ 81*ae5de77eSEmmanuel Vadot&epwm2 { 82*ae5de77eSEmmanuel Vadot status = "okay"; 83*ae5de77eSEmmanuel Vadot}; 84*ae5de77eSEmmanuel Vadot 85*ae5de77eSEmmanuel Vadot&main_gpio0 { 86*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 87*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pinctrl_pcie_1_reset>, 88*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_5>, 89*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_6>, 90*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_7>, 91*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_8>; 92*ae5de77eSEmmanuel Vadot}; 93*ae5de77eSEmmanuel Vadot 94*ae5de77eSEmmanuel Vadot/* Verdin I2C_1 */ 95*ae5de77eSEmmanuel Vadot&main_i2c0 { 96*ae5de77eSEmmanuel Vadot status = "okay"; 97*ae5de77eSEmmanuel Vadot 98*ae5de77eSEmmanuel Vadot temperature-sensor@4f { 99*ae5de77eSEmmanuel Vadot compatible = "ti,tmp1075"; 100*ae5de77eSEmmanuel Vadot reg = <0x4f>; 101*ae5de77eSEmmanuel Vadot }; 102*ae5de77eSEmmanuel Vadot 103*ae5de77eSEmmanuel Vadot carrier_eeprom: eeprom@57 { 104*ae5de77eSEmmanuel Vadot compatible = "st,24c02", "atmel,24c02"; 105*ae5de77eSEmmanuel Vadot reg = <0x57>; 106*ae5de77eSEmmanuel Vadot pagesize = <16>; 107*ae5de77eSEmmanuel Vadot }; 108*ae5de77eSEmmanuel Vadot}; 109*ae5de77eSEmmanuel Vadot 110*ae5de77eSEmmanuel Vadot/* Verdin I2C_2_DSI */ 111*ae5de77eSEmmanuel Vadot&main_i2c1 { 112*ae5de77eSEmmanuel Vadot status = "okay"; 113*ae5de77eSEmmanuel Vadot}; 114*ae5de77eSEmmanuel Vadot 115*ae5de77eSEmmanuel Vadot/* Verdin I2C_4_CSI */ 116*ae5de77eSEmmanuel Vadot&main_i2c3 { 117*ae5de77eSEmmanuel Vadot status = "okay"; 118*ae5de77eSEmmanuel Vadot}; 119*ae5de77eSEmmanuel Vadot 120*ae5de77eSEmmanuel Vadot/* Verdin CAN_1 */ 121*ae5de77eSEmmanuel Vadot&main_mcan0 { 122*ae5de77eSEmmanuel Vadot status = "okay"; 123*ae5de77eSEmmanuel Vadot}; 124*ae5de77eSEmmanuel Vadot 125*ae5de77eSEmmanuel Vadot/* Verdin SPI_1 */ 126*ae5de77eSEmmanuel Vadot&main_spi1 { 127*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pinctrl_main_spi1>, 128*ae5de77eSEmmanuel Vadot <&pinctrl_main_spi1_cs0>, 129*ae5de77eSEmmanuel Vadot <&pinctrl_qspi1_cs2_gpio>; 130*ae5de77eSEmmanuel Vadot cs-gpios = <0>, <&main_gpio0 12 GPIO_ACTIVE_LOW>; 131*ae5de77eSEmmanuel Vadot status = "okay"; 132*ae5de77eSEmmanuel Vadot 133*ae5de77eSEmmanuel Vadot tpm@1 { 134*ae5de77eSEmmanuel Vadot compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 135*ae5de77eSEmmanuel Vadot reg = <1>; 136*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 137*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pinctrl_qspi1_dqs_gpio>; 138*ae5de77eSEmmanuel Vadot interrupt-parent = <&main_gpio0>; 139*ae5de77eSEmmanuel Vadot interrupts = <2 IRQ_TYPE_EDGE_FALLING>; 140*ae5de77eSEmmanuel Vadot spi-max-frequency = <18500000>; 141*ae5de77eSEmmanuel Vadot }; 142*ae5de77eSEmmanuel Vadot}; 143*ae5de77eSEmmanuel Vadot 144*ae5de77eSEmmanuel Vadot/* Verdin UART_3, used as the Linux console */ 145*ae5de77eSEmmanuel Vadot&main_uart0 { 146*ae5de77eSEmmanuel Vadot status = "okay"; 147*ae5de77eSEmmanuel Vadot}; 148*ae5de77eSEmmanuel Vadot 149*ae5de77eSEmmanuel Vadot/* Verdin UART_1 */ 150*ae5de77eSEmmanuel Vadot&main_uart1 { 151*ae5de77eSEmmanuel Vadot status = "okay"; 152*ae5de77eSEmmanuel Vadot}; 153*ae5de77eSEmmanuel Vadot 154*ae5de77eSEmmanuel Vadot&mcu_gpio0 { 155*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 156*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pinctrl_gpio_1>, 157*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_2>, 158*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_3>, 159*ae5de77eSEmmanuel Vadot <&pinctrl_gpio_4>; 160*ae5de77eSEmmanuel Vadot}; 161*ae5de77eSEmmanuel Vadot 162*ae5de77eSEmmanuel Vadot/* Verdin I2C_3_HDMI */ 163*ae5de77eSEmmanuel Vadot&mcu_i2c0 { 164*ae5de77eSEmmanuel Vadot status = "okay"; 165*ae5de77eSEmmanuel Vadot}; 166*ae5de77eSEmmanuel Vadot 167*ae5de77eSEmmanuel Vadot/* Verdin CAN_2 */ 168*ae5de77eSEmmanuel Vadot&mcu_mcan0 { 169*ae5de77eSEmmanuel Vadot status = "okay"; 170*ae5de77eSEmmanuel Vadot}; 171*ae5de77eSEmmanuel Vadot 172*ae5de77eSEmmanuel Vadot/* Verdin UART_4 */ 173*ae5de77eSEmmanuel Vadot&mcu_uart0 { 174*ae5de77eSEmmanuel Vadot status = "okay"; 175*ae5de77eSEmmanuel Vadot}; 176*ae5de77eSEmmanuel Vadot 177*ae5de77eSEmmanuel Vadot/* Verdin SD_1 */ 178*ae5de77eSEmmanuel Vadot&sdhci1 { 179*ae5de77eSEmmanuel Vadot status = "okay"; 180*ae5de77eSEmmanuel Vadot}; 181*ae5de77eSEmmanuel Vadot 182*ae5de77eSEmmanuel Vadot/* Verdin USB_1 */ 183*ae5de77eSEmmanuel Vadot&usbss0 { 184*ae5de77eSEmmanuel Vadot status = "okay"; 185*ae5de77eSEmmanuel Vadot}; 186*ae5de77eSEmmanuel Vadot 187*ae5de77eSEmmanuel Vadot&usb0 { 188*ae5de77eSEmmanuel Vadot status = "okay"; 189*ae5de77eSEmmanuel Vadot}; 190*ae5de77eSEmmanuel Vadot 191*ae5de77eSEmmanuel Vadot/* Verdin USB_2 */ 192*ae5de77eSEmmanuel Vadot&usbss1 { 193*ae5de77eSEmmanuel Vadot status = "okay"; 194*ae5de77eSEmmanuel Vadot}; 195*ae5de77eSEmmanuel Vadot 196*ae5de77eSEmmanuel Vadot&usb1 { 197*ae5de77eSEmmanuel Vadot status = "okay"; 198*ae5de77eSEmmanuel Vadot}; 199*ae5de77eSEmmanuel Vadot 200*ae5de77eSEmmanuel Vadot/* Verdin CTRL_WAKE1_MICO# */ 201*ae5de77eSEmmanuel Vadot&verdin_gpio_keys { 202*ae5de77eSEmmanuel Vadot status = "okay"; 203*ae5de77eSEmmanuel Vadot}; 204*ae5de77eSEmmanuel Vadot 205*ae5de77eSEmmanuel Vadot/* Verdin PCIE_1_RESET# */ 206*ae5de77eSEmmanuel Vadot&verdin_pcie_1_reset_hog { 207*ae5de77eSEmmanuel Vadot status = "okay"; 208*ae5de77eSEmmanuel Vadot}; 209*ae5de77eSEmmanuel Vadot 210*ae5de77eSEmmanuel Vadot/* Verdin UART_2 */ 211*ae5de77eSEmmanuel Vadot&wkup_uart0 { 212*ae5de77eSEmmanuel Vadot status = "okay"; 213*ae5de77eSEmmanuel Vadot}; 214