1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2/* 3 * Copyright 2023 Toradex 4 * 5 * Common dtsi for Verdin AM62 SoM on Development carrier board 6 * 7 * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62 8 * https://www.toradex.com/products/carrier-board/verdin-development-board-kit 9 */ 10 11/ { 12 sound { 13 compatible = "simple-audio-card"; 14 simple-audio-card,bitclock-master = <&codec_dai>; 15 simple-audio-card,format = "i2s"; 16 simple-audio-card,frame-master = <&codec_dai>; 17 simple-audio-card,name = "verdin-nau8822"; 18 simple-audio-card,routing = 19 "Headphones", "LHP", 20 "Headphones", "RHP", 21 "Speaker", "LSPK", 22 "Speaker", "RSPK", 23 "Line Out", "AUXOUT1", 24 "Line Out", "AUXOUT2", 25 "LAUX", "Line In", 26 "RAUX", "Line In", 27 "LMICP", "Mic In", 28 "RMICP", "Mic In"; 29 simple-audio-card,widgets = 30 "Headphones", "Headphones", 31 "Line Out", "Line Out", 32 "Speaker", "Speaker", 33 "Microphone", "Mic In", 34 "Line", "Line In"; 35 36 codec_dai: simple-audio-card,codec { 37 clocks = <&audio_refclk1>; 38 sound-dai = <&nau8822_1a>; 39 }; 40 41 simple-audio-card,cpu { 42 sound-dai = <&mcasp0>; 43 }; 44 }; 45}; 46 47/* Verdin ETHs */ 48&cpsw3g { 49 pinctrl-names = "default"; 50 pinctrl-0 = <&pinctrl_rgmii1>, <&pinctrl_rgmii2>; 51 status = "okay"; 52}; 53 54/* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ 55&cpsw3g_mdio { 56 status = "okay"; 57 58 cpsw3g_phy1: ethernet-phy@7 { 59 compatible = "ethernet-phy-ieee802.3-c22"; 60 reg = <7>; 61 interrupt-parent = <&main_gpio0>; 62 interrupts = <38 IRQ_TYPE_EDGE_FALLING>; 63 pinctrl-names = "default"; 64 pinctrl-0 = <&pinctrl_eth2_rgmii_int>; 65 micrel,led-mode = <0>; 66 }; 67}; 68 69/* Verdin ETH_1 (On-module PHY) */ 70&cpsw_port1 { 71 status = "okay"; 72}; 73 74/* Verdin ETH_2_RGMII */ 75&cpsw_port2 { 76 phy-handle = <&cpsw3g_phy1>; 77 phy-mode = "rgmii-rxid"; 78 status = "okay"; 79}; 80 81/* Verdin PWM_1, PWM_2 */ 82&epwm0 { 83 status = "okay"; 84}; 85 86/* Verdin PWM_3_DSI */ 87&epwm1 { 88 status = "okay"; 89}; 90 91&main_gpio0 { 92 pinctrl-names = "default"; 93 pinctrl-0 = <&pinctrl_ctrl_sleep_moci>, 94 <&pinctrl_gpio_5>, 95 <&pinctrl_gpio_6>, 96 <&pinctrl_gpio_7>, 97 <&pinctrl_gpio_8>; 98}; 99 100/* Verdin I2C_1 */ 101&main_i2c1 { 102 status = "okay"; 103 104 /* Audio Codec */ 105 nau8822_1a: audio-codec@1a { 106 compatible = "nuvoton,nau8822"; 107 reg = <0x1a>; 108 pinctrl-names = "default"; 109 pinctrl-0 = <&pinctrl_i2s1_mclk>; 110 #sound-dai-cells = <0>; 111 }; 112 113 /* IO Expander */ 114 gpio_expander_21: gpio@21 { 115 compatible = "nxp,pcal6416"; 116 reg = <0x21>; 117 #gpio-cells = <2>; 118 gpio-controller; 119 }; 120 121 /* Current measurement into module VCC */ 122 hwmon@40 { 123 compatible = "ti,ina219"; 124 reg = <0x40>; 125 shunt-resistor = <10000>; 126 }; 127 128 /* Temperature sensor */ 129 sensor@4f { 130 compatible = "ti,tmp75c"; 131 reg = <0x4f>; 132 }; 133 134 /* EEPROM */ 135 eeprom@57 { 136 compatible = "st,24c02", "atmel,24c02"; 137 reg = <0x57>; 138 pagesize = <16>; 139 }; 140}; 141 142/* Verdin I2C_2_DSI */ 143&main_i2c2 { 144 status = "okay"; 145}; 146 147/* Verdin I2C_4_CSI */ 148&main_i2c3 { 149 status = "okay"; 150}; 151 152/* Verdin CAN_1 */ 153&main_mcan0 { 154 status = "okay"; 155}; 156 157/* Verdin SPI_1 */ 158&main_spi1 { 159 status = "okay"; 160}; 161 162/* Verdin UART_3 */ 163&main_uart0 { 164 status = "okay"; 165}; 166 167/* Verdin UART_1, connector X50 through RS485 transceiver. */ 168&main_uart1 { 169 linux,rs485-enabled-at-boot-time; 170 rs485-rx-during-tx; 171 status = "okay"; 172}; 173 174/* Verdin I2S_1 */ 175&mcasp0 { 176 status = "okay"; 177}; 178 179&mcu_gpio0 { 180 pinctrl-names = "default"; 181 pinctrl-0 = <&pinctrl_gpio_1>, 182 <&pinctrl_gpio_2>, 183 <&pinctrl_gpio_3>, 184 <&pinctrl_gpio_4>; 185}; 186 187/* Verdin I2C_3_HDMI */ 188&mcu_i2c0 { 189 status = "okay"; 190}; 191 192/* Verdin CAN_2 */ 193&mcu_mcan0 { 194 status = "okay"; 195}; 196 197/* Verdin UART_4 */ 198&mcu_uart0 { 199 status = "okay"; 200}; 201 202/* Verdin QSPI_1 */ 203&ospi0 { 204 status = "okay"; 205}; 206 207/* Verdin SD_1 */ 208&sdhci1 { 209 ti,driver-strength-ohm = <33>; 210 status = "okay"; 211}; 212 213/* Verdin USB_1 */ 214&usbss0 { 215 status = "okay"; 216}; 217 218&usb0 { 219 status = "okay"; 220}; 221 222/* Verdin USB_2 */ 223&usbss1 { 224 status = "okay"; 225}; 226 227&usb1 { 228 status = "okay"; 229}; 230 231/* Verdin CTRL_WAKE1_MICO# */ 232&verdin_gpio_keys { 233 status = "okay"; 234}; 235 236/* Verdin UART_2 */ 237&wkup_uart0 { 238 /* FIXME: WKUP UART0 is used by DM firmware */ 239 status = "reserved"; 240}; 241