1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2/* 3 * Copyright 2025 Toradex 4 * 5 * Common dtsi for Verdin AM62P SoM 6 * 7 * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62p 8 */ 9 10#include <dt-bindings/gpio/gpio.h> 11#include <dt-bindings/input/input.h> 12#include <dt-bindings/interrupt-controller/arm-gic.h> 13#include <dt-bindings/interrupt-controller/irq.h> 14#include <dt-bindings/net/ti-dp83867.h> 15 16/ { 17 aliases { 18 can0 = &main_mcan0; 19 can1 = &mcu_mcan0; 20 eeprom0 = &som_eeprom; 21 ethernet0 = &cpsw_port1; 22 ethernet1 = &cpsw_port2; 23 i2c0 = &wkup_i2c0; 24 i2c1 = &main_i2c0; 25 i2c2 = &main_i2c1; 26 i2c3 = &mcu_i2c0; 27 i2c4 = &main_i2c3; 28 mmc0 = &sdhci0; 29 mmc1 = &sdhci1; 30 mmc2 = &sdhci2; 31 rtc0 = &som_rtc_i2c; 32 rtc1 = &wkup_rtc0; 33 serial0 = &main_uart1; 34 serial1 = &wkup_uart0; 35 serial2 = &main_uart0; 36 serial3 = &mcu_uart0; 37 serial4 = &main_uart6; 38 usb0 = &usb0; 39 usb1 = &usb1; 40 }; 41 42 chosen { 43 stdout-path = "serial2:115200n8"; 44 }; 45 46 connector { 47 compatible = "gpio-usb-b-connector", "usb-b-connector"; 48 pinctrl-names = "default"; 49 pinctrl-0 = <&pinctrl_usb0_id>; 50 id-gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>; 51 label = "USB_1"; 52 self-powered; 53 vbus-supply = <®_usb0_vbus>; 54 55 port { 56 usb_dr_connector: endpoint { 57 remote-endpoint = <&usb0_ep>; 58 }; 59 }; 60 }; 61 62 verdin_gpio_keys: gpio-keys { 63 compatible = "gpio-keys"; 64 pinctrl-names = "default"; 65 pinctrl-0 = <&pinctrl_ctrl_wake1_mico>; 66 status = "disabled"; 67 68 key-wakeup { 69 debounce-interval = <10>; 70 /* Verdin CTRL_WAKE1_MICO# (SODIMM 252) */ 71 gpios = <&main_gpio0 1 GPIO_ACTIVE_LOW>; 72 label = "Wake-Up"; 73 linux,code = <KEY_WAKEUP>; 74 wakeup-source; 75 }; 76 }; 77 78 memory@80000000 { 79 /* 2G RAM */ 80 reg = <0x00000000 0x80000000 0x00000000 0x80000000>; 81 device_type = "memory"; 82 }; 83 84 opp-table { 85 /* Add 1.4GHz OPP. Requires VDD_CORE to be at 0.85V */ 86 opp-1400000000 { 87 opp-hz = /bits/ 64 <1400000000>; 88 opp-supported-hw = <0x01 0x0004>; 89 clock-latency-ns = <6000000>; 90 }; 91 }; 92 93 reg_force_sleep_moci: regulator-force-sleep-moci { 94 compatible = "regulator-fixed"; 95 /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ 96 gpios = <&som_gpio_expander 0 GPIO_ACTIVE_HIGH>; 97 enable-active-high; 98 regulator-always-on; 99 regulator-boot-on; 100 regulator-name = "CTRL_SLEEP_MOCI#"; 101 }; 102 103 /* Verdin SD_1 Power Supply */ 104 reg_sd1_vmmc: regulator-sdhci1-vmmc { 105 compatible = "regulator-fixed"; 106 pinctrl-names = "default"; 107 pinctrl-0 = <&pinctrl_sd1_pwr_en>; 108 /* Verdin SD_1_PWR_EN (SODIMM 76) */ 109 gpios = <&main_gpio0 47 GPIO_ACTIVE_HIGH>; 110 enable-active-high; 111 off-on-delay-us = <100000>; 112 regulator-max-microvolt = <3300000>; 113 regulator-min-microvolt = <3300000>; 114 regulator-name = "+V3.3_SD"; 115 startup-delay-us = <2000>; 116 }; 117 118 reg_sd1_vqmmc: regulator-sdhci1-vqmmc { 119 compatible = "regulator-gpio"; 120 pinctrl-names = "default"; 121 pinctrl-0 = <&pinctrl_sd_vsel>; 122 /* PMIC_VSEL_SD */ 123 gpios = <&main_gpio0 21 GPIO_ACTIVE_HIGH>; 124 regulator-name = "LDO1-VSEL-SD (PMIC)"; 125 regulator-min-microvolt = <1800000>; 126 regulator-max-microvolt = <3300000>; 127 states = <1800000 0x0>, 128 <3300000 0x1>; 129 vin-supply = <®_sd_3v3_1v8>; 130 }; 131 132 reg_usb0_vbus: regulator-usb0-vbus { 133 compatible = "regulator-fixed"; 134 pinctrl-names = "default"; 135 pinctrl-0 = <&pinctrl_usb0_en>; 136 /* Verdin USB_1_EN (SODIMM 155) */ 137 gpios = <&main_gpio1 50 GPIO_ACTIVE_HIGH>; 138 enable-active-high; 139 regulator-max-microvolt = <5000000>; 140 regulator-min-microvolt = <5000000>; 141 regulator-name = "USB_1_EN"; 142 }; 143 144 /* Module Power Supply */ 145 reg_vsodimm: regulator-vsodimm { 146 compatible = "regulator-fixed"; 147 regulator-name = "+V_SODIMM"; 148 }; 149 150 reserved-memory { 151 #address-cells = <2>; 152 #size-cells = <2>; 153 ranges; 154 155 secure_tfa_ddr: tfa@9e780000 { 156 reg = <0x00 0x9e780000 0x00 0x80000>; 157 no-map; 158 }; 159 160 secure_ddr: optee@9e800000 { 161 reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */ 162 no-map; 163 }; 164 165 wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 { 166 compatible = "shared-dma-pool"; 167 reg = <0x00 0x9c900000 0x00 0x01e00000>; 168 no-map; 169 }; 170 }; 171}; 172 173&main_pmx0 { 174 /* Verdin PWM_3_DSI */ 175 pinctrl_epwm0_b: main-epwm0b-default-pins { 176 pinctrl-single,pins = < 177 AM62PX_IOPAD(0x01b8, PIN_OUTPUT, 2) /* (E20) SPI0_CS1.EHRPWM0_B */ /* SODIMM 19 */ 178 >; 179 }; 180 181 /* Verdin PWM_2 */ 182 pinctrl_epwm2_a: main-epwm2a-default-pins { 183 pinctrl-single,pins = < 184 AM62PX_IOPAD(0x0124, PIN_OUTPUT, 4) /* (J25) MMC2_SDCD.EHRPWM2_A */ /* SODIMM 16 */ 185 >; 186 }; 187 188 /* Verdin PWM_1 */ 189 pinctrl_epwm2_b: main-epwm2b-default-pins { 190 pinctrl-single,pins = < 191 AM62PX_IOPAD(0x0128, PIN_OUTPUT, 4) /* (K25) MMC2_SDWP.EHRPWM2_B */ /* SODIMM 15 */ 192 >; 193 }; 194 195 /* Verdin QSPI_1_CLK as GPIO (conflict with Verdin QSPI_1 interface) */ 196 pinctrl_qspi1_clk_gpio: main-gpio0-0-default-pins { 197 pinctrl-single,pins = < 198 AM62PX_IOPAD(0x0000, PIN_INPUT, 7) /* (P23) OSPI0_CLK.GPIO0_0 */ /* SODIMM 52 */ 199 >; 200 }; 201 202 /* Verdin CTRL_WAKE1_MICO# */ 203 pinctrl_ctrl_wake1_mico: main-gpio0-1-default-pins { 204 pinctrl-single,pins = < 205 AM62PX_IOPAD(0x0004, PIN_INPUT, 7) /* (N23) OSPI0_LBCLKO.GPIO0_1 */ /* SODIMM 252 */ 206 >; 207 }; 208 209 /* Verdin QSPI_1_DQS as GPIO (conflict with Verdin QSPI_1 interface) */ 210 pinctrl_qspi1_dqs_gpio: main-gpio0-2-default-pins { 211 pinctrl-single,pins = < 212 AM62PX_IOPAD(0x0008, PIN_INPUT, 7) /* (P22) OSPI0_DQS.GPIO0_2 */ /* SODIMM 66 */ 213 >; 214 }; 215 216 /* Verdin QSPI_1_IO0 as GPIO (conflict with Verdin QSPI_1 interface) */ 217 pinctrl_qspi1_io0_gpio: main-gpio0-3-default-pins { 218 pinctrl-single,pins = < 219 AM62PX_IOPAD(0x000c, PIN_INPUT, 7) /* (L25) OSPI0_D0.GPIO0_3 */ /* SODIMM 56 */ 220 >; 221 }; 222 223 /* Verdin QSPI_1_IO1 as GPIO (conflict with Verdin QSPI_1 interface) */ 224 pinctrl_qspi1_io1_gpio: main-gpio0-4-default-pins { 225 pinctrl-single,pins = < 226 AM62PX_IOPAD(0x0010, PIN_INPUT, 7) /* (N24) OSPI0_D1.GPIO0_4 */ /* SODIMM 58 */ 227 >; 228 }; 229 230 /* Verdin QSPI_1_IO2 as GPIO (conflict with Verdin QSPI_1 interface) */ 231 pinctrl_qspi1_io2_gpio: main-gpio0-5-default-pins { 232 pinctrl-single,pins = < 233 AM62PX_IOPAD(0x0014, PIN_INPUT, 7) /* (N25) OSPI0_D2.GPIO0_5 */ /* SODIMM 60 */ 234 >; 235 }; 236 237 /* Verdin QSPI_1_IO3 as GPIO (conflict with Verdin QSPI_1 interface) */ 238 pinctrl_qspi1_io3_gpio: main-gpio0-6-default-pins { 239 pinctrl-single,pins = < 240 AM62PX_IOPAD(0x0018, PIN_INPUT, 7) /* (M24) OSPI0_D3.GPIO0_6 */ /* SODIMM 62 */ 241 >; 242 }; 243 244 /* Verdin QSPI_1_CS# as GPIO (conflict with Verdin QSPI_1 interface) */ 245 pinctrl_qspi1_cs_gpio: main-gpio0-11-default-pins { 246 pinctrl-single,pins = < 247 AM62PX_IOPAD(0x002c, PIN_INPUT, 7) /* (M25) OSPI0_CSn0.GPIO0_11 */ /* SODIMM 54 */ 248 >; 249 }; 250 251 /* Verdin QSPI_1_CS2# as GPIO (conflict with Verdin QSPI_1 interface) */ 252 pinctrl_qspi1_cs2_gpio: main-gpio0-12-default-pins { 253 pinctrl-single,pins = < 254 AM62PX_IOPAD(0x0030, PIN_INPUT, 7) /* (L24) OSPI0_CSn1.GPIO0_12 */ /* SODIMM 64 */ 255 >; 256 }; 257 258 /* Verdin MSP_37 as GPIO */ 259 pinctrl_msp37_gpio: main-gpio0-13-default-pins { 260 pinctrl-single,pins = < 261 AM62PX_IOPAD(0x0034, PIN_INPUT, 7) /* (L22) OSPI0_CSn2.GPIO0_13 */ /* SODIMM 174 - WiFi_W_WKUP_HOST# */ 262 >; 263 }; 264 265 /* Verdin PCIE_1_RESET# */ 266 pinctrl_pcie_1_reset: main-gpio0-14-default-pins { 267 pinctrl-single,pins = < 268 AM62PX_IOPAD(0x0038, PIN_INPUT, 7) /* (L23) OSPI0_CSn3.GPIO0_14 */ /* SODIMM 244 */ 269 >; 270 }; 271 272 pinctrl_sd_vsel: main-gpio0-21-default-pins { 273 pinctrl-single,pins = < 274 AM62PX_IOPAD(0x0054, PIN_INPUT, 7) /* (V24) GPMC0_AD6.GPIO0_21 */ /* PMIC_SD_VSEL */ 275 >; 276 }; 277 278 pinctrl_tpm_extint: main-gpio0-25-default-pins { 279 pinctrl-single,pins = < 280 AM62PX_IOPAD(0x0064, PIN_INPUT, 7) /* (AA25) GPMC0_AD10.GPIO0_25 */ /* TPM_EXTINT# */ 281 >; 282 }; 283 284 pinctrl_wifi_wkup_bt: main-gpio0-29-default-pins { 285 pinctrl-single,pins = < 286 AM62PX_IOPAD(0x0074, PIN_INPUT, 7) /* (AB24) GPMC0_AD14.GPIO0_29 */ /* WiFi_WKUP_BT# */ 287 >; 288 }; 289 290 pinctrl_wifi_wkup_wlan: main-gpio0-30-default-pins { 291 pinctrl-single,pins = < 292 AM62PX_IOPAD(0x0078, PIN_INPUT, 7) /* (AC24) GPMC0_AD15.GPIO0_30 */ /* WiFi_WKUP_WLAN# */ 293 >; 294 }; 295 296 /* Verdin USB_1_ID */ 297 pinctrl_usb0_id: main-gpio0-31-default-pins { 298 pinctrl-single,pins = < 299 AM62PX_IOPAD(0x007c, PIN_INPUT, 7) /* (Y25) GPMC0_CLK.GPIO0_31 */ /* SODIMM 161 */ 300 >; 301 }; 302 303 /* Verdin USB_1_OC# */ 304 pinctrl_usb1_oc: main-gpio0-32-default-pins { 305 pinctrl-single,pins = < 306 AM62PX_IOPAD(0x0084, PIN_INPUT, 7) /* (R25) GPMC0_ADVn_ALE.GPIO0_32 */ /* SODIMM 157 */ 307 >; 308 }; 309 310 /* Verdin I2S_2_D_IN as GPIO (conflict with Verdin I2S_2 interface) */ 311 pinctrl_i2s_2_d_in_gpio: main-gpio0-33-default-pins { 312 pinctrl-single,pins = < 313 AM62PX_IOPAD(0x0088, PIN_INPUT, 7) /* (R24) GPMC0_OEn_REn.GPIO0_33 */ /* SODIMM 48 */ 314 >; 315 }; 316 317 /* Verdin I2S_2_D_OUT as GPIO (conflict with Verdin I2S_2 interface) */ 318 pinctrl_i2s_2_d_out_gpio: main-gpio0-34-default-pins { 319 pinctrl-single,pins = < 320 AM62PX_IOPAD(0x008c, PIN_INPUT, 7) /* (T25) GPMC0_WEn.GPIO0_34 */ /* SODIMM 46 */ 321 >; 322 }; 323 324 /* Verdin I2S_2_BCLK as GPIO (conflict with Verdin I2S_2 interface) */ 325 pinctrl_i2s_2_bclk_gpio: main-gpio0-35-default-pins { 326 pinctrl-single,pins = < 327 AM62PX_IOPAD(0x0090, PIN_INPUT, 7) /* (U24) GPMC0_BE0n_CLE.GPIO0_35 */ /* SODIMM 42 */ 328 >; 329 }; 330 331 pinctrl_eth_int: main-gpio0-36-default-pins { 332 pinctrl-single,pins = < 333 AM62PX_IOPAD(0x0094, PIN_INPUT, 7) /* (T24) GPMC0_BE1n.GPIO0_36 */ /* ETH_INT# */ 334 >; 335 }; 336 337 /* Verdin I2S_2_SYNC as GPIO (conflict with Verdin I2S_2 interface) */ 338 pinctrl_i2s_2_sync_gpio: main-gpio0-37-default-pins { 339 pinctrl-single,pins = < 340 AM62PX_IOPAD(0x0098, PIN_INPUT, 7) /* (AA24) GPMC0_WAIT0.GPIO0_37 */ /* SODIMM 44 */ 341 >; 342 }; 343 344 /* Verdin DSI_1_INT# */ 345 pinctrl_dsi1_int: main-gpio0-38-default-pins { 346 pinctrl-single,pins = < 347 AM62PX_IOPAD(0x009c, PIN_INPUT, 7) /* (AD24) GPMC0_WAIT1.GPIO0_38 */ /* SODIMM 17 */ 348 >; 349 }; 350 351 /* Verdin DSI_1_BLK_EN# */ 352 pinctrl_dsi1_bkl_en: main-gpio0-39-default-pins { 353 pinctrl-single,pins = < 354 AM62PX_IOPAD(0x00a0, PIN_INPUT, 7) /* (P24) GPMC0_WPn.GPIO0_39 */ /* SODIMM 21 */ 355 >; 356 }; 357 358 /* Verdin USB_2_OC# */ 359 pinctrl_usb2_oc: main-gpio0-41-default-pins { 360 pinctrl-single,pins = < 361 AM62PX_IOPAD(0x00a8, PIN_INPUT, 7) /* (T23) GPMC0_CSn0.GPIO0_41 */ /* SODIMM 187 */ 362 >; 363 }; 364 365 /* Verdin ETH_2_RGMII_INT# */ 366 pinctrl_eth2_rgmii_int: main-gpio0-42-default-pins { 367 pinctrl-single,pins = < 368 AM62PX_IOPAD(0x00ac, PIN_INPUT, 7) /* (U23) GPMC0_CSn1.GPIO0_42 */ /* SODIMM 189 */ 369 >; 370 }; 371 372 /* Verdin SD_1_PWR_EN */ 373 pinctrl_sd1_pwr_en: main-gpio0-47-default-pins { 374 pinctrl-single,pins = < 375 AM62PX_IOPAD(0x00c0, PIN_INPUT, 7) /* (AA23) VOUT0_DATA2.GPIO0_47 */ /* SODIMM 76 */ 376 >; 377 }; 378 379 /* Verdin GPIO_5 */ 380 pinctrl_gpio_5: main-gpio0-49-default-pins { 381 pinctrl-single,pins = < 382 AM62PX_IOPAD(0x00c8, PIN_INPUT, 7) /* (AB23) VOUT0_DATA4.GPIO0_49 */ /* SODIMM 216 */ 383 >; 384 }; 385 386 /* Verdin GPIO_6 */ 387 pinctrl_gpio_6: main-gpio0-50-default-pins { 388 pinctrl-single,pins = < 389 AM62PX_IOPAD(0x00cc, PIN_INPUT, 7) /* (AD23) VOUT0_DATA5.GPIO0_50 */ /* SODIMM 218 */ 390 >; 391 }; 392 393 /* Verdin GPIO_7 */ 394 pinctrl_gpio_7: main-gpio0-51-default-pins { 395 pinctrl-single,pins = < 396 AM62PX_IOPAD(0x00d0, PIN_INPUT, 7) /* (AC23) VOUT0_DATA6.GPIO0_51 */ /* SODIMM 220 */ 397 >; 398 }; 399 400 /* Verdin GPIO_8 */ 401 pinctrl_gpio_8: main-gpio0-52-default-pins { 402 pinctrl-single,pins = < 403 AM62PX_IOPAD(0x00d4, PIN_INPUT, 7) /* (AE23) VOUT0_DATA7.GPIO0_52 */ /* SODIMM 222 */ 404 >; 405 }; 406 407 /* Verdin MSP_36 as GPIO */ 408 pinctrl_msp36_gpio: main-gpio0-57-default-pins { 409 pinctrl-single,pins = < 410 AM62PX_IOPAD(0x00e8, PIN_INPUT, 7) /* (AD21) VOUT0_DATA12.GPIO0_57 */ /* SODIMM 172 - WiFi_BT_WKUP_HOST# */ 411 >; 412 }; 413 414 pinctrl_wifi_sd_int: main-gpio0-59-default-pins { 415 pinctrl-single,pins = < 416 AM62PX_IOPAD(0x00f0, PIN_INPUT, 7) /* (AA20) VOUT0_DATA14.GPIO0_59 */ /* WIFI_SD_INT */ 417 >; 418 }; 419 420 pinctrl_wifi_spi_cs: main-gpio0-60-default-pins { 421 pinctrl-single,pins = < 422 AM62PX_IOPAD(0x00f4, PIN_INPUT, 7) /* (Y20) VOUT0_DATA15.GPIO0_60 */ /* WIFI_SPI_CS# */ 423 >; 424 }; 425 426 /* Verdin PWM_3_DSI as GPIO */ 427 pinctrl_pwm3_dsi_gpio: main-gpio1-16-default-pins { 428 pinctrl-single,pins = < 429 AM62PX_IOPAD(0x01b8, PIN_INPUT, 7) /* (E20) SPI0_CS1.GPIO1_16 */ /* SODIMM 19 */ 430 >; 431 }; 432 433 /* Verdin SD_1_CD# */ 434 pinctrl_sd1_cd: main-gpio1-48-default-pins { 435 pinctrl-single,pins = < 436 AM62PX_IOPAD(0x0240, PIN_INPUT_PULLUP, 7) /* (D23) MMC1_SDCD.GPIO1_48 */ /* SODIMM 84 */ 437 >; 438 }; 439 440 /* Verdin MSP_29 as GPIO */ 441 pinctl_msp29_gpio: main-gpio1-49-default-pins { 442 pinctrl-single,pins = < 443 AM62PX_IOPAD(0x0244, PIN_INPUT, 7) /* (D24) MMC1_SDWP.GPIO1_49 */ /* SODIMM 154 */ 444 >; 445 }; 446 447 /* Verdin USB_1_EN */ 448 pinctrl_usb0_en: main-gpio1-50-default-pins { 449 pinctrl-single,pins = < 450 AM62PX_IOPAD(0x0254, PIN_INPUT, 7) /* (G22) USB0_DRVVBUS.GPIO1_50 */ /* SODIMM 155 */ 451 >; 452 }; 453 454 /* Verdin I2C_1 */ 455 pinctrl_main_i2c0: main-i2c0-default-pins { 456 pinctrl-single,pins = < 457 AM62PX_IOPAD(0x01e0, PIN_INPUT_PULLUP, 0) /* (B25) I2C0_SCL */ /* SODIMM 14 */ 458 AM62PX_IOPAD(0x01e4, PIN_INPUT_PULLUP, 0) /* (A24) I2C0_SDA */ /* SODIMM 12 */ 459 >; 460 }; 461 462 /* Verdin I2C_2_DSI */ 463 pinctrl_main_i2c1: main-i2c1-default-pins { 464 pinctrl-single,pins = < 465 AM62PX_IOPAD(0x01e8, PIN_INPUT_PULLUP, 0) /* (C24) I2C1_SCL */ /* SODIMM 55 */ 466 AM62PX_IOPAD(0x01ec, PIN_INPUT_PULLUP, 0) /* (B24) I2C1_SDA */ /* SODIMM 53 */ 467 >; 468 }; 469 470 /* Verdin I2C_4_CSI */ 471 pinctrl_main_i2c3: main-i2c3-default-pins { 472 pinctrl-single,pins = < 473 AM62PX_IOPAD(0x01d0, PIN_INPUT_PULLUP, 2) /* (A23) UART0_CTSn.I2C3_SCL */ /* SODIMM 95 */ 474 AM62PX_IOPAD(0x01d4, PIN_INPUT_PULLUP, 2) /* (C22) UART0_RTSn.I2C3_SDA */ /* SODIMM 93 */ 475 >; 476 }; 477 478 /* Verdin CAN_1 */ 479 pinctrl_main_mcan0: main-mcan0-default-pins { 480 pinctrl-single,pins = < 481 AM62PX_IOPAD(0x01dc, PIN_INPUT, 0) /* (F20) MCAN0_RX */ /* SODIMM 22 */ 482 AM62PX_IOPAD(0x01d8, PIN_OUTPUT, 0) /* (B23) MCAN0_TX */ /* SODIMM 20 */ 483 >; 484 }; 485 486 /* Verdin MSP_3/MSP_8 as CAN */ 487 pinctrl_main_mcan1: main-mcan1-default-pins { 488 pinctrl-single,pins = < 489 AM62PX_IOPAD(0x00b4, PIN_INPUT, 5) /* (U25) GPMC0_CSn3.MCAN1_RX */ /* SODIMM 92 */ 490 AM62PX_IOPAD(0x00b0, PIN_OUTPUT, 5) /* (T22) GPMC0_CSn2.MCAN1_TX */ /* SODIMM 104 */ 491 >; 492 }; 493 494 /* Verdin SD_1 */ 495 pinctrl_sdhci1: main-mmc1-default-pins { 496 pinctrl-single,pins = < 497 AM62PX_IOPAD(0x023c, PIN_INPUT, 0) /* (H20) MMC1_CMD */ /* SODIMM 74 */ 498 AM62PX_IOPAD(0x0234, PIN_OUTPUT, 0) /* (J24) MMC1_CLK */ /* SODIMM 78 */ 499 AM62PX_IOPAD(0x0230, PIN_INPUT, 0) /* (H21) MMC1_DAT0 */ /* SODIMM 80 */ 500 AM62PX_IOPAD(0x022c, PIN_INPUT, 0) /* (H23) MMC1_DAT1 */ /* SODIMM 82 */ 501 AM62PX_IOPAD(0x0228, PIN_INPUT, 0) /* (H22) MMC1_DAT2 */ /* SODIMM 70 */ 502 AM62PX_IOPAD(0x0224, PIN_INPUT, 0) /* (H25) MMC1_DAT3 */ /* SODIMM 72 */ 503 >; 504 }; 505 506 /* On-module Wi-Fi on WB SKUs, module-specific SDIO otherwise */ 507 pinctrl_sdhci2: main-mmc2-default-pins { 508 pinctrl-single,pins = < 509 AM62PX_IOPAD(0x0120, PIN_INPUT, 0) /* (K24) MMC2_CMD */ /* SODIMM 160, WiFi_SDIO_CMD */ 510 AM62PX_IOPAD(0x0118, PIN_OUTPUT, 0) /* (K21) MMC2_CLK */ /* SODIMM 156, WiFi_SDIO_CLK */ 511 AM62PX_IOPAD(0x011C, PIN_INPUT, 0) /* () MMC2_CLKLB */ 512 AM62PX_IOPAD(0x0114, PIN_INPUT, 0) /* (K23) MMC2_DAT0 */ /* SODIMM 162, WiFi_SDIO_DATA0 */ 513 AM62PX_IOPAD(0x0110, PIN_INPUT, 0) /* (K22) MMC2_DAT1 */ /* SODIMM 164, WiFi_SDIO_DATA1 */ 514 AM62PX_IOPAD(0x010c, PIN_INPUT, 0) /* (L20) MMC2_DAT2 */ /* SODIMM 166, WiFi_SDIO_DATA2 */ 515 AM62PX_IOPAD(0x0108, PIN_INPUT, 0) /* (L21) MMC2_DAT3 */ /* SODIMM 168, WiFi_SDIO_DATA3 */ 516 >; 517 }; 518 519 /* Verdin QSPI_1 */ 520 pinctrl_ospi0: main-ospi0-default-pins { 521 pinctrl-single,pins = < 522 AM62PX_IOPAD(0x0000, PIN_OUTPUT, 0) /* (P23) OSPI0_CLK */ /* SODIMM 52 */ 523 AM62PX_IOPAD(0x002c, PIN_OUTPUT, 0) /* (M25) OSPI0_CSn0 */ /* SODIMM 54 */ 524 AM62PX_IOPAD(0x0030, PIN_OUTPUT, 0) /* (L24) OSPI0_CSn1 */ /* SODIMM 64 */ 525 AM62PX_IOPAD(0x000c, PIN_INPUT, 0) /* (L25) OSPI0_D0 */ /* SODIMM 56 */ 526 AM62PX_IOPAD(0x0010, PIN_INPUT, 0) /* (N24) OSPI0_D1 */ /* SODIMM 58 */ 527 AM62PX_IOPAD(0x0014, PIN_INPUT, 0) /* (N25) OSPI0_D2 */ /* SODIMM 60 */ 528 AM62PX_IOPAD(0x0018, PIN_INPUT, 0) /* (M24) OSPI0_D3 */ /* SODIMM 62 */ 529 AM62PX_IOPAD(0x0008, PIN_INPUT, 0) /* (P22) OSPI0_DQS */ /* SODIMM 66 */ 530 >; 531 }; 532 533 /* Verdin ETH_1 RGMII (On-module PHY) */ 534 pinctrl_rgmii1: main-rgmii1-default-pins { 535 pinctrl-single,pins = < 536 AM62PX_IOPAD(0x014c, PIN_INPUT, 0) /* (B15) RGMII1_RD0 */ /* RGMII_RXD0 */ 537 AM62PX_IOPAD(0x0150, PIN_INPUT, 0) /* (B16) RGMII1_RD1 */ /* RGMII_RXD1 */ 538 AM62PX_IOPAD(0x0154, PIN_INPUT, 0) /* (A14) RGMII1_RD2 */ /* RGMII_RXD2 */ 539 AM62PX_IOPAD(0x0158, PIN_INPUT, 0) /* (B14) RGMII1_RD3 */ /* RGMII_RXD3 */ 540 AM62PX_IOPAD(0x0148, PIN_INPUT, 0) /* (A16) RGMII1_RXC */ /* RGMII_RXC */ 541 AM62PX_IOPAD(0x0144, PIN_INPUT, 0) /* (A15) RGMII1_RX_CTL */ /* RGMII_RX_CTL */ 542 AM62PX_IOPAD(0x0134, PIN_INPUT, 0) /* (A18) RGMII1_TD0 */ /* RGMII_TXD0 */ 543 AM62PX_IOPAD(0x0138, PIN_INPUT, 0) /* (C17) RGMII1_TD1 */ /* RGMII_TXD1 */ 544 AM62PX_IOPAD(0x013c, PIN_INPUT, 0) /* (A17) RGMII1_TD2 */ /* RGMII_TXD2 */ 545 AM62PX_IOPAD(0x0140, PIN_INPUT, 0) /* (C16) RGMII1_TD3 */ /* RGMII_TXD3 */ 546 AM62PX_IOPAD(0x0130, PIN_INPUT, 0) /* (B17) RGMII1_TXC */ /* RGMII_TXC */ 547 AM62PX_IOPAD(0x012c, PIN_INPUT, 0) /* (B18) RGMII1_TX_CTL */ /* RGMII_TX_CTL */ 548 >; 549 }; 550 551 /* Verdin ETH_2 RGMII */ 552 pinctrl_rgmii2: main-rgmii2-default-pins { 553 pinctrl-single,pins = < 554 AM62PX_IOPAD(0x0184, PIN_INPUT, 0) /* (E19) RGMII2_RD0 */ /* SODIMM 201 */ 555 AM62PX_IOPAD(0x0188, PIN_INPUT, 0) /* (E16) RGMII2_RD1 */ /* SODIMM 203 */ 556 AM62PX_IOPAD(0x018c, PIN_INPUT, 0) /* (E17) RGMII2_RD2 */ /* SODIMM 205 */ 557 AM62PX_IOPAD(0x0190, PIN_INPUT, 0) /* (C19) RGMII2_RD3 */ /* SODIMM 207 */ 558 AM62PX_IOPAD(0x0180, PIN_INPUT, 0) /* (D19) RGMII2_RXC */ /* SODIMM 197 */ 559 AM62PX_IOPAD(0x017c, PIN_INPUT, 0) /* (F19) RGMII2_RX_CTL */ /* SODIMM 199 */ 560 AM62PX_IOPAD(0x016c, PIN_INPUT, 0) /* (B19) RGMII2_TD0 */ /* SODIMM 221 */ 561 AM62PX_IOPAD(0x0170, PIN_INPUT, 0) /* (A21) RGMII2_TD1 */ /* SODIMM 219 */ 562 AM62PX_IOPAD(0x0174, PIN_INPUT, 0) /* (D17) RGMII2_TD2 */ /* SODIMM 217 */ 563 AM62PX_IOPAD(0x0178, PIN_INPUT, 0) /* (A19) RGMII2_TD3 */ /* SODIMM 215 */ 564 AM62PX_IOPAD(0x0168, PIN_INPUT, 0) /* (D16) RGMII2_TXC */ /* SODIMM 213 */ 565 AM62PX_IOPAD(0x0164, PIN_INPUT, 0) /* (A20) RGMII2_TX_CTL */ /* SODIMM 211 */ 566 >; 567 }; 568 569 /* TPM SPI, Optional Module Specific SPI */ 570 pinctrl_main_spi0: main-spi0-default-pins { 571 pinctrl-single,pins = < 572 AM62PX_IOPAD(0x01bc, PIN_INPUT, 0) /* (B21) SPI0_CLK */ /* TPM_SPI_CLK - SODIMM 148 */ 573 AM62PX_IOPAD(0x01c0, PIN_OUTPUT, 0) /* (B20) SPI0_D0 */ /* TPM_SPI_MOSI - SODIMM 150 */ 574 AM62PX_IOPAD(0x01c4, PIN_INPUT, 0) /* (C21) SPI0_D1 */ /* TPM_SPI_MISO - SODIMM 152 */ 575 AM62PX_IOPAD(0x01b4, PIN_INPUT, 0) /* (D20) SPI0_CS0 */ /* TPM_SPI_CS */ 576 >; 577 }; 578 579 /* Verdin SPI_1 */ 580 pinctrl_main_spi1: main-spi1-default-pins { 581 pinctrl-single,pins = < 582 AM62PX_IOPAD(0x0020, PIN_INPUT, 1) /* (N22) OSPI0_D5.SPI1_CLK */ /* SODIMM 196 */ 583 AM62PX_IOPAD(0x0024, PIN_OUTPUT, 1) /* (P21) OSPI0_D6.SPI1_D0 */ /* SODIMM 200 */ 584 AM62PX_IOPAD(0x0028, PIN_INPUT, 1) /* (N20) OSPI0_D7.SPI1_D1 */ /* SODIMM 198 */ 585 >; 586 }; 587 588 /* Verdin SPI_1_CS */ 589 pinctrl_main_spi1_cs0: main-spi1-cs0-default-pins { 590 pinctrl-single,pins = < 591 AM62PX_IOPAD(0x001c, PIN_OUTPUT, 1) /* (N21) OSPI0_D4.SPI1_CS0 */ /* SODIMM 202 */ 592 >; 593 }; 594 595 /* Verdin I2S_1 MCLK */ 596 pinctrl_i2s1_mclk: main-system-audio-ext-reflock0-default-pins { 597 pinctrl-single,pins = < 598 AM62PX_IOPAD(0x00c4, PIN_OUTPUT, 5) /* (Y23) VOUT0_DATA3.AUDIO_EXT_REFCLK0 */ /* SODIMM 38 */ 599 >; 600 }; 601 602 pinctrl_eth_clock: main-system-clkout0-default-pins { 603 pinctrl-single,pins = < 604 AM62PX_IOPAD(0x01f0, PIN_OUTPUT_PULLUP, 5) /* (C25) EXT_REFCLK1.CLKOUT0 */ /* ETH_25MHz_CLK */ 605 >; 606 }; 607 608 pinctrl_pmic_extint: main-system-extint-default-pins { 609 pinctrl-single,pins = < 610 AM62PX_IOPAD(0x01f4, PIN_INPUT, 0) /* (C23) EXTINTn */ /* PMIC_EXTINT# */ 611 >; 612 }; 613 614 /* Verdin UART_3, used as the Linux console */ 615 pinctrl_uart0: main-uart0-default-pins { 616 pinctrl-single,pins = < 617 AM62PX_IOPAD(0x1c8, PIN_INPUT, 0) /* (A22) UART0_RXD */ /* SODIMM 147 */ 618 AM62PX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (B22) UART0_TXD */ /* SODIMM 149 */ 619 >; 620 }; 621 622 /* Verdin UART_1 */ 623 pinctrl_uart1: main-uart1-default-pins { 624 pinctrl-single,pins = < 625 AM62PX_IOPAD(0x01ac, PIN_INPUT, 2) /* (G23) MCASP0_AFSR.UART1_RXD */ /* SODIMM 129 */ 626 AM62PX_IOPAD(0x01b0, PIN_OUTPUT, 2) /* (G20) MCASP0_ACLKR.UART1_TXD */ /* SODIMM 131 */ 627 AM62PX_IOPAD(0x0194, PIN_INPUT, 2) /* (D25) MCASP0_AXR3.UART1_CTSn */ /* SODIMM 135 */ 628 AM62PX_IOPAD(0x0198, PIN_OUTPUT, 2) /* (E25) MCASP0_AXR2.UART1_RTSn */ /* SODIMM 133 */ 629 >; 630 }; 631 632 /* Verdin MSP 41, 42, 44 and 45 as UART */ 633 pinctrl_uart2: main-uart2-default-pins { 634 pinctrl-single,pins = < 635 AM62PX_IOPAD(0x00b8, PIN_INPUT, 4) /* (AE24) VOUT0_DATA0.UART2_RXD */ /* SODIMM 192 */ 636 AM62PX_IOPAD(0x00bc, PIN_OUTPUT, 4) /* (W23) VOUT0_DATA1.UART2_TXD */ /* SODIMM 190 */ 637 AM62PX_IOPAD(0x0104, PIN_INPUT, 4) /* (Y21) VOUT0_PCLK.UART2_CTSn */ /* SODIMM 184 */ 638 AM62PX_IOPAD(0x0100, PIN_OUTPUT, 4) /* (W20) VOUT0_VSYNC.UART2_RTSn */ /* SODIMM 186 */ 639 >; 640 }; 641 642 /* Bluetooth on WB SKUs */ 643 pinctrl_uart6: main-uart6-default-pins { 644 pinctrl-single,pins = < 645 AM62PX_IOPAD(0x00d8, PIN_INPUT, 4) /* (AE22) VOUT0_DATA8.UART6_RXD */ /* WiFi_UART_RXD */ 646 AM62PX_IOPAD(0x00dc, PIN_OUTPUT, 4) /* (AC22) VOUT0_DATA9.UART6_TXD */ /* WiFi_UART_TXD */ 647 AM62PX_IOPAD(0x00e4, PIN_INPUT, 4) /* (AE21) VOUT0_DATA11.UART6_CTSn */ /* WiFi_UART_CTS */ 648 AM62PX_IOPAD(0x00e0, PIN_OUTPUT, 4) /* (W22) VOUT0_DATA10.UART6_RTSn */ /* WiFi_UART_RTS */ 649 >; 650 }; 651 652 /* Verdin USB_2_EN */ 653 pinctrl_usb1: main-usb1-default-pins { 654 pinctrl-single,pins = < 655 AM62PX_IOPAD(0x0258, PIN_OUTPUT, 0) /* (G21) USB1_DRVVBUS */ /* SODIMM 185 */ 656 >; 657 }; 658 659 /* Verdin I2S_1 */ 660 pinctrl_mcasp0: mcasp0-default-pins { 661 pinctrl-single,pins = < 662 AM62PX_IOPAD(0x01a4, PIN_INPUT, 0) /* (F24) MCASP0_ACLKX */ /* SODIMM 30 */ 663 AM62PX_IOPAD(0x01a8, PIN_INPUT, 0) /* (F25) MCASP0_AFSX */ /* SODIMM 32 */ 664 AM62PX_IOPAD(0x01a0, PIN_INPUT, 0) /* (F23) MCASP0_AXR0 */ /* SODIMM 34 */ 665 AM62PX_IOPAD(0x019c, PIN_INPUT, 0) /* (E24) MCASP0_AXR1 */ /* SODIMM 36 */ 666 >; 667 }; 668 669 /* Verdin I2S_2 */ 670 pinctrl_mcasp1: mcasp1-default-pins { 671 pinctrl-single,pins = < 672 AM62PX_IOPAD(0x0090, PIN_INPUT, 2) /* (U24) GPMC0_BE0n_CLE.MCASP1_ACLKX */ /* SODIMM 42 */ 673 AM62PX_IOPAD(0x0098, PIN_INPUT, 2) /* (AA24) GPMC0_WAIT0.MCASP1_AFSX */ /* SODIMM 44 */ 674 AM62PX_IOPAD(0x008c, PIN_INPUT, 2) /* (T25) GPMC0_WEn.MCASP1_AXR0 */ /* SODIMM 46 */ 675 AM62PX_IOPAD(0x0088, PIN_INPUT, 2) /* (R24) GPMC0_OEn_REn.MCASP1_AXR1 */ /* SODIMM 48 */ 676 >; 677 }; 678 679 /* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ 680 pinctrl_mdio: mdio0-default-pins { 681 pinctrl-single,pins = < 682 AM62PX_IOPAD(0x0160, PIN_OUTPUT, 0) /* (F17) MDIO0_MDC */ /* SODIMM 193 */ 683 AM62PX_IOPAD(0x015c, PIN_INPUT, 0) /* (F16) MDIO0_MDIO */ /* SODIMM 191 */ 684 >; 685 }; 686}; 687 688&mcu_pmx0 { 689 /* Verdin GPIO_1 */ 690 pinctrl_gpio_1: mcu-gpio0-1-default-pins { 691 pinctrl-single,pins = < 692 AM62PX_MCU_IOPAD(0x0004, PIN_INPUT, 7) /* (E10) MCU_SPI0_CS1.MCU_GPIO0_1 */ /* SODIMM 206 */ 693 >; 694 }; 695 696 /* Verdin GPIO_2 */ 697 pinctrl_gpio_2: mcu-gpio0-2-default-pins { 698 pinctrl-single,pins = < 699 AM62PX_MCU_IOPAD(0x0008, PIN_INPUT, 7) /* (C10) MCU_SPI0_CLK.MCU_GPIO0_2 */ /* SODIMM 208 */ 700 >; 701 }; 702 703 /* Verdin GPIO_3 */ 704 pinctrl_gpio_3: mcu-gpio0-3-default-pins { 705 pinctrl-single,pins = < 706 AM62PX_MCU_IOPAD(0x000c, PIN_INPUT, 7) /* (B11) MCU_SPI0_D0.MCU_GPIO0_3 */ /* SODIMM 210 */ 707 >; 708 }; 709 710 /* Verdin GPIO_4 */ 711 pinctrl_gpio_4: mcu-gpio0-4-default-pins { 712 pinctrl-single,pins = < 713 AM62PX_MCU_IOPAD(0x0010, PIN_INPUT, 7) /* (D10) MCU_SPI0_D1.MCU_GPIO0_4 */ /* SODIMM 212 */ 714 >; 715 }; 716 717 /* Verdin I2C_3_HDMI */ 718 pinctrl_mcu_i2c0: mcu-i2c0-default-pins { 719 pinctrl-single,pins = < 720 AM62PX_MCU_IOPAD(0x0044, PIN_INPUT_PULLUP, 0) /* (E11) MCU_I2C0_SCL */ /* SODIMM 59 */ 721 AM62PX_MCU_IOPAD(0x0048, PIN_INPUT_PULLUP, 0) /* (D11) MCU_I2C0_SDA */ /* SODIMM 57 */ 722 >; 723 }; 724 725 /* Verdin CAN_2 */ 726 pinctrl_mcu_mcan0: mcu-mcan0-default-pins { 727 pinctrl-single,pins = < 728 AM62PX_MCU_IOPAD(0x0038, PIN_INPUT, 0) /* (D6) MCU_MCAN0_RX */ /* SODIMM 22 */ 729 AM62PX_MCU_IOPAD(0x0034, PIN_OUTPUT, 0) /* (E8) MCU_MCAN0_TX */ /* SODIMM 20 */ 730 >; 731 }; 732 733 /* Verdin MSP_13/MSP_18 as CAN */ 734 pinctrl_mcu_mcan1: mcu-mcan1-default-pins { 735 pinctrl-single,pins = < 736 AM62PX_MCU_IOPAD(0x0040, PIN_INPUT, 0) /* (E7) MCU_MCAN1_RX */ /* SODIMM 116 */ 737 AM62PX_MCU_IOPAD(0x003c, PIN_OUTPUT, 0) /* (F8) MCU_MCAN1_TX */ /* SODIMM 128 */ 738 >; 739 }; 740 741 /* Verdin UART_4 */ 742 pinctrl_mcu_uart0: mcu-uart0-default-pins { 743 pinctrl-single,pins = < 744 AM62PX_MCU_IOPAD(0x0014, PIN_INPUT, 0) /* (B6) MCU_UART0_RXD */ /* SODIMM 151 */ 745 AM62PX_MCU_IOPAD(0x0018, PIN_OUTPUT, 0) /* (C8) MCU_UART0_TXD */ /* SODIMM 153 */ 746 >; 747 }; 748 749 /* On-module I2C - PMIC_I2C */ 750 pinctrl_wkup_i2c0: wkup-i2c0-default-pins { 751 pinctrl-single,pins = < 752 AM62PX_MCU_IOPAD(0x004c, PIN_INPUT, 0) /* (A13) WKUP_I2C0_SCL */ /* PMIC_I2C_SCL */ 753 AM62PX_MCU_IOPAD(0x0050, PIN_INPUT, 0) /* (C11) WKUP_I2C0_SDA */ /* PMIC_I2C_SDA */ 754 >; 755 }; 756 757 /* Verdin CSI_1_MCLK */ 758 pinctrl_wkup_clkout0: wkup-system-clkout0-default-pins { 759 pinctrl-single,pins = < 760 AM62PX_MCU_IOPAD(0x0084, PIN_OUTPUT, 0) /* (F13) WKUP_CLKOUT0 */ /* SODIMM 91 */ 761 >; 762 }; 763 764 /* Verdin UART_2 */ 765 pinctrl_wkup_uart0: wkup-uart0-default-pins { 766 pinctrl-single,pins = < 767 AM62PX_MCU_IOPAD(0x002c, PIN_INPUT, 0) /* (C7) WKUP_UART0_CTSn */ /* SODIMM 143 */ 768 AM62PX_MCU_IOPAD(0x0030, PIN_OUTPUT, 0) /* (C6) WKUP_UART0_RTSn */ /* SODIMM 141 */ 769 AM62PX_MCU_IOPAD(0x0024, PIN_INPUT, 0) /* (D8) WKUP_UART0_RXD */ /* SODIMM 137 */ 770 AM62PX_MCU_IOPAD(0x0028, PIN_OUTPUT, 0) /* (D7) WKUP_UART0_TXD */ /* SODIMM 139 */ 771 >; 772 }; 773}; 774 775/* Verdin I2S_1_MCLK */ 776&audio_refclk0 { 777 assigned-clock-rates = <25000000>; 778}; 779 780&cpsw3g { 781 pinctrl-names = "default"; 782 pinctrl-0 = <&pinctrl_rgmii1>; 783 status = "disabled"; 784}; 785 786/* MDIO, shared by Verdin ETH_1 (On-module PHY) and Verdin ETH_2_RGMII */ 787&cpsw3g_mdio { 788 pinctrl-names = "default"; 789 pinctrl-0 = <&pinctrl_mdio>, <&pinctrl_eth_clock>; 790 assigned-clocks = <&k3_clks 157 36>; 791 assigned-clock-parents = <&k3_clks 157 38>; 792 assigned-clock-rates = <25000000>; 793 status = "disabled"; 794 795 som_eth_phy: ethernet-phy@0 { 796 reg = <0>; 797 pinctrl-names = "default"; 798 pinctrl-0 = <&pinctrl_eth_int>; 799 interrupt-parent = <&main_gpio0>; 800 interrupts = <36 IRQ_TYPE_EDGE_FALLING>; 801 ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 802 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 803 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 804 }; 805}; 806 807/* Verdin ETH_1 (On-module PHY) */ 808&cpsw_port1 { 809 phy-handle = <&som_eth_phy>; 810 phy-mode = "rgmii-rxid"; 811 status = "disabled"; 812}; 813 814/* Verdin ETH_2_RGMII */ 815&cpsw_port2 { 816 status = "disabled"; 817}; 818 819/* Verdin PWM_3_DSI */ 820&epwm0 { 821 pinctrl-names = "default"; 822 pinctrl-0 = <&pinctrl_epwm0_b>; 823 status = "disabled"; 824}; 825 826/* Verdin PWM_1, PWM_2 */ 827&epwm2 { 828 pinctrl-names = "default"; 829 pinctrl-0 = <&pinctrl_epwm2_a>, <&pinctrl_epwm2_b>; 830 status = "disabled"; 831}; 832 833&mailbox0_cluster0 { 834 status = "okay"; 835 836 mbox_r5_0: mbox-r5-0 { 837 ti,mbox-rx = <0 0 0>; 838 ti,mbox-tx = <1 0 0>; 839 }; 840}; 841 842&mailbox0_cluster1 { 843 status = "okay"; 844 845 mbox_mcu_r5_0: mbox-mcu-r5-0 { 846 ti,mbox-rx = <0 0 0>; 847 ti,mbox-tx = <1 0 0>; 848 }; 849}; 850 851&main0_alert { 852 temperature = <95000>; 853}; 854 855&main0_crit { 856 temperature = <105000>; 857}; 858 859&main1_alert { 860 temperature = <95000>; 861}; 862 863&main1_crit { 864 temperature = <105000>; 865}; 866 867&main2_alert { 868 temperature = <95000>; 869}; 870 871&main2_crit { 872 temperature = <105000>; 873}; 874 875&main_gpio0 { 876 gpio-line-names = 877 "SODIMM_52", 878 "SODIMM_252", 879 "SODIMM_66", 880 "SODIMM_56", 881 "SODIMM_58", 882 "SODIMM_60", 883 "SODIMM_62", 884 "", 885 "", 886 "", 887 "", /* 10 */ 888 "SODIMM_54", 889 "SODIMM_64", 890 "SODIMM_174", 891 "SODIMM_244", 892 "", 893 "", 894 "", 895 "", 896 "", 897 "", /* 20 */ 898 "PMIC_SD_VSEL", 899 "", 900 "", 901 "", 902 "TPM_EXTINT#", 903 "", 904 "", 905 "", 906 "WiFi_WKUP_BT#", 907 "WiFi_WKUP_WLAN#", /* 30 */ 908 "SODIMM_161", 909 "SODIMM_157", 910 "", 911 "", 912 "", 913 "ETH_INT#", 914 "", 915 "SODIMM_17", 916 "SODIMM_21", 917 "", /* 40 */ 918 "SODIMM_187", 919 "SODIMM_189", 920 "", 921 "", 922 "", 923 "", 924 "SODIMM_76", 925 "", 926 "SODIMM_216", 927 "SODIMM_218", /* 50 */ 928 "SODIMM_220", 929 "SODIMM_222", 930 "", 931 "", 932 "", 933 "", 934 "SODIMM_172", 935 "", 936 "WIFI_SD_INT", 937 "WIFI_SPI_CS#", /* 60 */ 938 "", 939 "", 940 "", 941 "", 942 "", 943 "", 944 "", 945 "", 946 "", 947 "", /* 70 */ 948 "", 949 "", 950 "", 951 "", 952 "", 953 "", 954 "", 955 "", 956 "", 957 "", /* 80 */ 958 "", 959 "", 960 "", 961 "", 962 "", 963 "", 964 "", 965 "", 966 "", 967 "", /* 90 */ 968 ""; 969 970 verdin_pcie_1_reset_hog: pcie-1-reset-hog { 971 gpio-hog; 972 /* Verdin PCIE_1_RESET# (SODIMM 244) */ 973 gpios = <14 GPIO_ACTIVE_LOW>; 974 line-name = "PCIE_1_RESET#"; 975 output-low; 976 status = "disabled"; 977 }; 978}; 979 980&main_gpio1 { 981 gpio-line-names = 982 "", 983 "", 984 "", 985 "", 986 "", 987 "", 988 "", 989 "", 990 "", 991 "", 992 "", /* 10 */ 993 "", 994 "", 995 "", 996 "", 997 "", 998 "", 999 "", 1000 "", 1001 "", 1002 "", /* 20 */ 1003 "", 1004 "", 1005 "", 1006 "", 1007 "", 1008 "", 1009 "", 1010 "", 1011 "", 1012 "", /* 30 */ 1013 "", 1014 "", 1015 "", 1016 "", 1017 "", 1018 "", 1019 "", 1020 "", 1021 "", 1022 "", /* 40 */ 1023 "", 1024 "", 1025 "", 1026 "", 1027 "", 1028 "", 1029 "", 1030 "SODIMM_84", 1031 "SODIMM_154", 1032 "SODIMM_155", /* 50 */ 1033 ""; 1034}; 1035 1036/* Verdin I2C_1 */ 1037&main_i2c0 { 1038 pinctrl-names = "default"; 1039 pinctrl-0 = <&pinctrl_main_i2c0>; 1040 status = "disabled"; 1041}; 1042 1043/* Verdin I2C_2_DSI */ 1044&main_i2c1 { 1045 pinctrl-names = "default"; 1046 pinctrl-0 = <&pinctrl_main_i2c1>; 1047 status = "disabled"; 1048}; 1049 1050/* Verdin I2C_4_CSI */ 1051&main_i2c3 { 1052 pinctrl-names = "default"; 1053 pinctrl-0 = <&pinctrl_main_i2c3>; 1054 status = "disabled"; 1055}; 1056 1057/* Verdin CAN_1 */ 1058&main_mcan0 { 1059 pinctrl-names = "default"; 1060 pinctrl-0 = <&pinctrl_main_mcan0>; 1061 status = "disabled"; 1062}; 1063 1064/* TPM SPI, optional SPI on module specific pins */ 1065&main_spi0 { 1066 pinctrl-names = "default"; 1067 pinctrl-0 = <&pinctrl_main_spi0>; 1068 ti,pindir-d0-out-d1-in; 1069 status = "okay"; 1070 1071 tpm@0 { 1072 compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 1073 reg = <0>; 1074 pinctrl-names = "default"; 1075 pinctrl-0 = <&pinctrl_tpm_extint>; 1076 interrupt-parent = <&main_gpio0>; 1077 interrupts = <25 IRQ_TYPE_EDGE_FALLING>; 1078 spi-max-frequency = <18500000>; 1079 }; 1080}; 1081 1082/* Verdin SPI_1 */ 1083&main_spi1 { 1084 pinctrl-names = "default"; 1085 pinctrl-0 = <&pinctrl_main_spi1>, <&pinctrl_main_spi1_cs0>; 1086 ti,pindir-d0-out-d1-in; 1087 status = "disabled"; 1088}; 1089 1090/* Verdin UART_3, used as the Linux console */ 1091&main_uart0 { 1092 pinctrl-names = "default"; 1093 pinctrl-0 = <&pinctrl_uart0>; 1094 status = "disabled"; 1095}; 1096 1097/* Verdin UART_1 */ 1098&main_uart1 { 1099 pinctrl-names = "default"; 1100 pinctrl-0 = <&pinctrl_uart1>; 1101 uart-has-rtscts; 1102 status = "disabled"; 1103}; 1104 1105/* Verdin I2S_1 */ 1106&mcasp0 { 1107 pinctrl-names = "default"; 1108 pinctrl-0 = <&pinctrl_mcasp0>; 1109 op-mode = <0>; /* I2S mode */ 1110 serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 1111 1 2 0 0 1112 0 0 0 0 1113 0 0 0 0 1114 0 0 0 0 1115 >; 1116 tdm-slots = <2>; 1117 rx-num-evt = <0>; 1118 tx-num-evt = <0>; 1119 #sound-dai-cells = <0>; 1120 status = "disabled"; 1121}; 1122 1123/* Verdin I2S_2 */ 1124&mcasp1 { 1125 pinctrl-names = "default"; 1126 pinctrl-0 = <&pinctrl_mcasp1>; 1127 op-mode = <0>; /* I2S mode */ 1128 serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 1129 1 2 0 0 1130 0 0 0 0 1131 0 0 0 0 1132 0 0 0 0 1133 >; 1134 tdm-slots = <2>; 1135 rx-num-evt = <0>; 1136 tx-num-evt = <0>; 1137 #sound-dai-cells = <0>; 1138 status = "disabled"; 1139}; 1140 1141&mcu_gpio0 { 1142 gpio-line-names = 1143 "", 1144 "SODIMM_206", 1145 "SODIMM_208", 1146 "SODIMM_210", 1147 "SODIMM_212", 1148 "", 1149 "", 1150 "", 1151 "", 1152 "", 1153 "", /* 10 */ 1154 "", 1155 "", 1156 "", 1157 "", 1158 "", 1159 "", 1160 "", 1161 "", 1162 "", 1163 "", /* 20 */ 1164 "", 1165 "", 1166 ""; 1167}; 1168 1169/* Verdin I2C_3_HDMI */ 1170&mcu_i2c0 { 1171 pinctrl-names = "default"; 1172 pinctrl-0 = <&pinctrl_mcu_i2c0>; 1173 status = "disabled"; 1174}; 1175 1176/* Verdin CAN_2 */ 1177&mcu_mcan0 { 1178 pinctrl-names = "default"; 1179 pinctrl-0 = <&pinctrl_mcu_mcan0>; 1180 status = "disabled"; 1181}; 1182 1183/* Verdin UART_4 */ 1184&mcu_uart0 { 1185 pinctrl-names = "default"; 1186 pinctrl-0 = <&pinctrl_mcu_uart0>; 1187 status = "disabled"; 1188}; 1189 1190/* Verdin QSPI_1 */ 1191&ospi0 { 1192 pinctrl-names = "default"; 1193 pinctrl-0 = <&pinctrl_ospi0>; 1194 status = "disabled"; 1195}; 1196 1197/* On-module eMMC */ 1198&sdhci0 { 1199 no-mmc-hs400; 1200 non-removable; 1201 ti,driver-strength-ohm = <50>; 1202 status = "okay"; 1203}; 1204 1205/* Verdin SD_1 */ 1206&sdhci1 { 1207 pinctrl-names = "default"; 1208 pinctrl-0 = <&pinctrl_sdhci1>, <&pinctrl_sd1_cd>; 1209 cd-gpios = <&main_gpio1 48 GPIO_ACTIVE_LOW>; 1210 disable-wp; 1211 vmmc-supply = <®_sd1_vmmc>; 1212 vqmmc-supply = <®_sd1_vqmmc>; 1213 ti,fails-without-test-cd; 1214 status = "disabled"; 1215}; 1216 1217/* Verdin USB_1 */ 1218&usbss0 { 1219 ti,vbus-divider; 1220 status = "disabled"; 1221}; 1222 1223&usb0 { 1224 adp-disable; 1225 usb-role-switch; 1226 status = "disabled"; 1227 1228 port { 1229 usb0_ep: endpoint { 1230 remote-endpoint = <&usb_dr_connector>; 1231 }; 1232 }; 1233}; 1234 1235/* Verdin USB_2 */ 1236&usbss1 { 1237 ti,vbus-divider; 1238 status = "disabled"; 1239}; 1240 1241&usb1 { 1242 pinctrl-names = "default"; 1243 pinctrl-0 = <&pinctrl_usb1>; 1244 dr_mode = "host"; 1245 status = "disabled"; 1246}; 1247 1248/* On-module I2C - PMIC_I2C */ 1249&wkup_i2c0 { 1250 pinctrl-names = "default"; 1251 pinctrl-0 = <&pinctrl_wkup_i2c0>; 1252 clock-frequency = <400000>; 1253 status = "okay"; 1254 1255 som_gpio_expander: gpio@21 { 1256 compatible = "nxp,pcal6408"; 1257 reg = <0x21>; 1258 #gpio-cells = <2>; 1259 gpio-controller; 1260 gpio-line-names = "SODIMM_256"; 1261 }; 1262 1263 pmic@30 { 1264 compatible = "ti,tps65219"; 1265 reg = <0x30>; 1266 pinctrl-names = "default"; 1267 pinctrl-0 = <&pinctrl_pmic_extint>; 1268 interrupt-parent = <&gic500>; 1269 interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; 1270 1271 buck1-supply = <®_vsodimm>; 1272 buck2-supply = <®_vsodimm>; 1273 buck3-supply = <®_vsodimm>; 1274 ldo1-supply = <®_3v3>; 1275 ldo2-supply = <®_1v8>; 1276 ldo3-supply = <®_3v3>; 1277 ldo4-supply = <®_3v3>; 1278 system-power-controller; 1279 ti,power-button; 1280 1281 regulators { 1282 reg_3v3: buck1 { 1283 regulator-always-on; 1284 regulator-boot-on; 1285 regulator-max-microvolt = <3300000>; 1286 regulator-min-microvolt = <3300000>; 1287 regulator-name = "+V3.3 (PMIC BUCK1)"; 1288 }; 1289 1290 reg_1v8: buck2 { 1291 regulator-always-on; 1292 regulator-boot-on; 1293 regulator-max-microvolt = <1800000>; 1294 regulator-min-microvolt = <1800000>; 1295 regulator-name = "+V1.8 (PMIC BUCK2)"; /* On-module and SODIMM 214 */ 1296 }; 1297 1298 buck3 { 1299 regulator-always-on; 1300 regulator-boot-on; 1301 regulator-max-microvolt = <1100000>; 1302 regulator-min-microvolt = <1100000>; 1303 regulator-name = "+VDD_DDR (PMIC BUCK3)"; 1304 }; 1305 1306 reg_sd_3v3_1v8: ldo1 { 1307 regulator-allow-bypass; 1308 regulator-always-on; 1309 regulator-boot-on; 1310 regulator-max-microvolt = <3300000>; 1311 regulator-min-microvolt = <3300000>; 1312 regulator-name = "+V3.3_1.8_SD (PMIC LDO1)"; 1313 }; 1314 1315 ldo2 { 1316 regulator-always-on; 1317 regulator-boot-on; 1318 regulator-max-microvolt = <850000>; 1319 regulator-min-microvolt = <850000>; 1320 regulator-name = "+V_PMIC_LDO2 (PMIC LDO4)"; // +VDDR_CORE 1321 }; 1322 1323 ldo3 { 1324 regulator-always-on; 1325 regulator-boot-on; 1326 regulator-max-microvolt = <1800000>; 1327 regulator-min-microvolt = <1800000>; 1328 regulator-name = "+V1.8A (PMIC LDO3)"; 1329 }; 1330 1331 ldo4 { 1332 regulator-always-on; 1333 regulator-boot-on; 1334 regulator-max-microvolt = <2500000>; 1335 regulator-min-microvolt = <2500000>; 1336 regulator-name = "+V2.5_ETH (PMIC LDO4)"; 1337 }; 1338 }; 1339 }; 1340 1341 som_rtc_i2c: rtc@32 { 1342 compatible = "epson,rx8130"; 1343 reg = <0x32>; 1344 }; 1345 1346 temperature-sensor@48 { 1347 compatible = "ti,tmp1075"; 1348 reg = <0x48>; 1349 }; 1350 1351 som_adc: adc@49 { 1352 compatible = "ti,tla2024"; 1353 reg = <0x49>; 1354 #address-cells = <1>; 1355 #size-cells = <0>; 1356 #io-channel-cells = <1>; 1357 1358 /* Verdin (ADC_4 - ADC_3) */ 1359 channel@0 { 1360 reg = <0>; 1361 ti,datarate = <4>; 1362 ti,gain = <2>; 1363 }; 1364 1365 /* Verdin (ADC_4 - ADC_1) */ 1366 channel@1 { 1367 reg = <1>; 1368 ti,datarate = <4>; 1369 ti,gain = <2>; 1370 }; 1371 1372 /* Verdin (ADC_3 - ADC_1) */ 1373 channel@2 { 1374 reg = <2>; 1375 ti,datarate = <4>; 1376 ti,gain = <2>; 1377 }; 1378 1379 /* Verdin (ADC_2 - ADC_1) */ 1380 channel@3 { 1381 reg = <3>; 1382 ti,datarate = <4>; 1383 ti,gain = <2>; 1384 }; 1385 1386 /* Verdin ADC_4 */ 1387 channel@4 { 1388 reg = <4>; 1389 ti,datarate = <4>; 1390 ti,gain = <2>; 1391 }; 1392 1393 /* Verdin ADC_3 */ 1394 channel@5 { 1395 reg = <5>; 1396 ti,datarate = <4>; 1397 ti,gain = <2>; 1398 }; 1399 1400 /* Verdin ADC_2 */ 1401 channel@6 { 1402 reg = <6>; 1403 ti,datarate = <4>; 1404 ti,gain = <2>; 1405 }; 1406 1407 /* Verdin ADC_1 */ 1408 channel@7 { 1409 reg = <7>; 1410 ti,datarate = <4>; 1411 ti,gain = <2>; 1412 }; 1413 }; 1414 1415 som_eeprom: eeprom@50 { 1416 compatible = "st,24c02", "atmel,24c02"; 1417 reg = <0x50>; 1418 pagesize = <16>; 1419 }; 1420}; 1421 1422/* Verdin UART_2 */ 1423&wkup_uart0 { 1424 pinctrl-names = "default"; 1425 pinctrl-0 = <&pinctrl_wkup_uart0>; 1426 uart-has-rtscts; 1427 status = "disabled"; 1428}; 1429