11e6550d3SDave Gerlach// SPDX-License-Identifier: GPL-2.0 21e6550d3SDave Gerlach/* 31e6550d3SDave Gerlach * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/ 41e6550d3SDave Gerlach */ 51e6550d3SDave Gerlach 61e6550d3SDave Gerlach/dts-v1/; 71e6550d3SDave Gerlach 8354065beSKishon Vijay Abraham I#include <dt-bindings/phy/phy.h> 9354065beSKishon Vijay Abraham I#include <dt-bindings/mux/ti-serdes.h> 101e6550d3SDave Gerlach#include <dt-bindings/leds/common.h> 11985204ecSVignesh Raghavendra#include <dt-bindings/gpio/gpio.h> 12985204ecSVignesh Raghavendra#include <dt-bindings/net/ti-dp83867.h> 131e6550d3SDave Gerlach#include "k3-am642.dtsi" 141e6550d3SDave Gerlach 151e6550d3SDave Gerlach/ { 161e6550d3SDave Gerlach compatible = "ti,am642-evm", "ti,am642"; 171e6550d3SDave Gerlach model = "Texas Instruments AM642 EVM"; 181e6550d3SDave Gerlach 191e6550d3SDave Gerlach chosen { 201e6550d3SDave Gerlach stdout-path = "serial2:115200n8"; 211e6550d3SDave Gerlach bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000"; 221e6550d3SDave Gerlach }; 231e6550d3SDave Gerlach 241e6550d3SDave Gerlach memory@80000000 { 251e6550d3SDave Gerlach device_type = "memory"; 261e6550d3SDave Gerlach /* 2G RAM */ 271e6550d3SDave Gerlach reg = <0x00000000 0x80000000 0x00000000 0x80000000>; 281e6550d3SDave Gerlach 291e6550d3SDave Gerlach }; 301e6550d3SDave Gerlach 311e6550d3SDave Gerlach reserved-memory { 321e6550d3SDave Gerlach #address-cells = <2>; 331e6550d3SDave Gerlach #size-cells = <2>; 341e6550d3SDave Gerlach ranges; 351e6550d3SDave Gerlach 361e6550d3SDave Gerlach secure_ddr: optee@9e800000 { 371e6550d3SDave Gerlach reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */ 381e6550d3SDave Gerlach alignment = <0x1000>; 391e6550d3SDave Gerlach no-map; 401e6550d3SDave Gerlach }; 41d71abfccSSuman Anna 42d71abfccSSuman Anna main_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 { 43d71abfccSSuman Anna compatible = "shared-dma-pool"; 44d71abfccSSuman Anna reg = <0x00 0xa0000000 0x00 0x100000>; 45d71abfccSSuman Anna no-map; 46d71abfccSSuman Anna }; 47d71abfccSSuman Anna 48d71abfccSSuman Anna main_r5fss0_core0_memory_region: r5f-memory@a0100000 { 49d71abfccSSuman Anna compatible = "shared-dma-pool"; 50d71abfccSSuman Anna reg = <0x00 0xa0100000 0x00 0xf00000>; 51d71abfccSSuman Anna no-map; 52d71abfccSSuman Anna }; 53d71abfccSSuman Anna 54d71abfccSSuman Anna main_r5fss0_core1_dma_memory_region: r5f-dma-memory@a1000000 { 55d71abfccSSuman Anna compatible = "shared-dma-pool"; 56d71abfccSSuman Anna reg = <0x00 0xa1000000 0x00 0x100000>; 57d71abfccSSuman Anna no-map; 58d71abfccSSuman Anna }; 59d71abfccSSuman Anna 60d71abfccSSuman Anna main_r5fss0_core1_memory_region: r5f-memory@a1100000 { 61d71abfccSSuman Anna compatible = "shared-dma-pool"; 62d71abfccSSuman Anna reg = <0x00 0xa1100000 0x00 0xf00000>; 63d71abfccSSuman Anna no-map; 64d71abfccSSuman Anna }; 65d71abfccSSuman Anna 66d71abfccSSuman Anna main_r5fss1_core0_dma_memory_region: r5f-dma-memory@a2000000 { 67d71abfccSSuman Anna compatible = "shared-dma-pool"; 68d71abfccSSuman Anna reg = <0x00 0xa2000000 0x00 0x100000>; 69d71abfccSSuman Anna no-map; 70d71abfccSSuman Anna }; 71d71abfccSSuman Anna 72d71abfccSSuman Anna main_r5fss1_core0_memory_region: r5f-memory@a2100000 { 73d71abfccSSuman Anna compatible = "shared-dma-pool"; 74d71abfccSSuman Anna reg = <0x00 0xa2100000 0x00 0xf00000>; 75d71abfccSSuman Anna no-map; 76d71abfccSSuman Anna }; 77d71abfccSSuman Anna 78d71abfccSSuman Anna main_r5fss1_core1_dma_memory_region: r5f-dma-memory@a3000000 { 79d71abfccSSuman Anna compatible = "shared-dma-pool"; 80d71abfccSSuman Anna reg = <0x00 0xa3000000 0x00 0x100000>; 81d71abfccSSuman Anna no-map; 82d71abfccSSuman Anna }; 83d71abfccSSuman Anna 84d71abfccSSuman Anna main_r5fss1_core1_memory_region: r5f-memory@a3100000 { 85d71abfccSSuman Anna compatible = "shared-dma-pool"; 86d71abfccSSuman Anna reg = <0x00 0xa3100000 0x00 0xf00000>; 87d71abfccSSuman Anna no-map; 88d71abfccSSuman Anna }; 89d71abfccSSuman Anna 90d71abfccSSuman Anna rtos_ipc_memory_region: ipc-memories@a5000000 { 91d71abfccSSuman Anna reg = <0x00 0xa5000000 0x00 0x00800000>; 92d71abfccSSuman Anna alignment = <0x1000>; 93d71abfccSSuman Anna no-map; 94d71abfccSSuman Anna }; 951e6550d3SDave Gerlach }; 961e6550d3SDave Gerlach 971e6550d3SDave Gerlach evm_12v0: fixedregulator-evm12v0 { 981e6550d3SDave Gerlach /* main DC jack */ 991e6550d3SDave Gerlach compatible = "regulator-fixed"; 1001e6550d3SDave Gerlach regulator-name = "evm_12v0"; 1011e6550d3SDave Gerlach regulator-min-microvolt = <12000000>; 1021e6550d3SDave Gerlach regulator-max-microvolt = <12000000>; 1031e6550d3SDave Gerlach regulator-always-on; 1041e6550d3SDave Gerlach regulator-boot-on; 1051e6550d3SDave Gerlach }; 1061e6550d3SDave Gerlach 1071e6550d3SDave Gerlach vsys_5v0: fixedregulator-vsys5v0 { 1081e6550d3SDave Gerlach /* output of LM5140 */ 1091e6550d3SDave Gerlach compatible = "regulator-fixed"; 1101e6550d3SDave Gerlach regulator-name = "vsys_5v0"; 1111e6550d3SDave Gerlach regulator-min-microvolt = <5000000>; 1121e6550d3SDave Gerlach regulator-max-microvolt = <5000000>; 1131e6550d3SDave Gerlach vin-supply = <&evm_12v0>; 1141e6550d3SDave Gerlach regulator-always-on; 1151e6550d3SDave Gerlach regulator-boot-on; 1161e6550d3SDave Gerlach }; 1171e6550d3SDave Gerlach 1181e6550d3SDave Gerlach vsys_3v3: fixedregulator-vsys3v3 { 1191e6550d3SDave Gerlach /* output of LM5140 */ 1201e6550d3SDave Gerlach compatible = "regulator-fixed"; 1211e6550d3SDave Gerlach regulator-name = "vsys_3v3"; 1221e6550d3SDave Gerlach regulator-min-microvolt = <3300000>; 1231e6550d3SDave Gerlach regulator-max-microvolt = <3300000>; 1241e6550d3SDave Gerlach vin-supply = <&evm_12v0>; 1251e6550d3SDave Gerlach regulator-always-on; 1261e6550d3SDave Gerlach regulator-boot-on; 1271e6550d3SDave Gerlach }; 1281e6550d3SDave Gerlach 1291e6550d3SDave Gerlach vdd_mmc1: fixed-regulator-sd { 1301e6550d3SDave Gerlach /* TPS2051BD */ 1311e6550d3SDave Gerlach compatible = "regulator-fixed"; 1321e6550d3SDave Gerlach regulator-name = "vdd_mmc1"; 1331e6550d3SDave Gerlach regulator-min-microvolt = <3300000>; 1341e6550d3SDave Gerlach regulator-max-microvolt = <3300000>; 1351e6550d3SDave Gerlach regulator-boot-on; 1361e6550d3SDave Gerlach enable-active-high; 1371e6550d3SDave Gerlach vin-supply = <&vsys_3v3>; 1381e6550d3SDave Gerlach gpio = <&exp1 6 GPIO_ACTIVE_HIGH>; 1391e6550d3SDave Gerlach }; 1401e6550d3SDave Gerlach 1411e6550d3SDave Gerlach vddb: fixedregulator-vddb { 1421e6550d3SDave Gerlach compatible = "regulator-fixed"; 1431e6550d3SDave Gerlach regulator-name = "vddb_3v3_display"; 1441e6550d3SDave Gerlach regulator-min-microvolt = <3300000>; 1451e6550d3SDave Gerlach regulator-max-microvolt = <3300000>; 1461e6550d3SDave Gerlach vin-supply = <&vsys_3v3>; 1471e6550d3SDave Gerlach regulator-always-on; 1481e6550d3SDave Gerlach regulator-boot-on; 1491e6550d3SDave Gerlach }; 1501e6550d3SDave Gerlach 1511e6550d3SDave Gerlach leds { 1521e6550d3SDave Gerlach compatible = "gpio-leds"; 1531e6550d3SDave Gerlach 1541e6550d3SDave Gerlach led-0 { 1551e6550d3SDave Gerlach label = "am64-evm:red:heartbeat"; 1561e6550d3SDave Gerlach gpios = <&exp1 16 GPIO_ACTIVE_HIGH>; 1571e6550d3SDave Gerlach linux,default-trigger = "heartbeat"; 1581e6550d3SDave Gerlach function = LED_FUNCTION_HEARTBEAT; 1591e6550d3SDave Gerlach default-state = "off"; 1601e6550d3SDave Gerlach }; 1611e6550d3SDave Gerlach }; 162985204ecSVignesh Raghavendra 163985204ecSVignesh Raghavendra mdio_mux: mux-controller { 164985204ecSVignesh Raghavendra compatible = "gpio-mux"; 165985204ecSVignesh Raghavendra #mux-control-cells = <0>; 166985204ecSVignesh Raghavendra 167985204ecSVignesh Raghavendra mux-gpios = <&exp1 12 GPIO_ACTIVE_HIGH>; 168985204ecSVignesh Raghavendra }; 169985204ecSVignesh Raghavendra 170985204ecSVignesh Raghavendra mdio-mux-1 { 171985204ecSVignesh Raghavendra compatible = "mdio-mux-multiplexer"; 172985204ecSVignesh Raghavendra mux-controls = <&mdio_mux>; 173985204ecSVignesh Raghavendra mdio-parent-bus = <&cpsw3g_mdio>; 174985204ecSVignesh Raghavendra #address-cells = <1>; 175985204ecSVignesh Raghavendra #size-cells = <0>; 176985204ecSVignesh Raghavendra 177985204ecSVignesh Raghavendra mdio@1 { 178985204ecSVignesh Raghavendra reg = <0x1>; 179985204ecSVignesh Raghavendra #address-cells = <1>; 180985204ecSVignesh Raghavendra #size-cells = <0>; 181985204ecSVignesh Raghavendra 182985204ecSVignesh Raghavendra cpsw3g_phy3: ethernet-phy@3 { 183985204ecSVignesh Raghavendra reg = <3>; 184985204ecSVignesh Raghavendra }; 185985204ecSVignesh Raghavendra }; 186985204ecSVignesh Raghavendra }; 1872f474da9SAswath Govindraju 1882f474da9SAswath Govindraju transceiver1: can-phy0 { 1892f474da9SAswath Govindraju compatible = "ti,tcan1042"; 1902f474da9SAswath Govindraju #phy-cells = <0>; 1912f474da9SAswath Govindraju max-bitrate = <5000000>; 1922f474da9SAswath Govindraju standby-gpios = <&exp1 8 GPIO_ACTIVE_HIGH>; 1932f474da9SAswath Govindraju }; 1942f474da9SAswath Govindraju 1952f474da9SAswath Govindraju transceiver2: can-phy1 { 1962f474da9SAswath Govindraju compatible = "ti,tcan1042"; 1972f474da9SAswath Govindraju #phy-cells = <0>; 1982f474da9SAswath Govindraju max-bitrate = <5000000>; 1992f474da9SAswath Govindraju standby-gpios = <&exp1 9 GPIO_ACTIVE_HIGH>; 2002f474da9SAswath Govindraju }; 2011e6550d3SDave Gerlach}; 2021e6550d3SDave Gerlach 2031e6550d3SDave Gerlach&main_pmx0 { 2041e6550d3SDave Gerlach main_mmc1_pins_default: main-mmc1-pins-default { 2051e6550d3SDave Gerlach pinctrl-single,pins = < 2061e6550d3SDave Gerlach AM64X_IOPAD(0x0294, PIN_INPUT_PULLUP, 0) /* (J19) MMC1_CMD */ 2071e6550d3SDave Gerlach AM64X_IOPAD(0x028c, PIN_INPUT_PULLDOWN, 0) /* (L20) MMC1_CLK */ 2081e6550d3SDave Gerlach AM64X_IOPAD(0x0288, PIN_INPUT_PULLUP, 0) /* (K21) MMC1_DAT0 */ 2091e6550d3SDave Gerlach AM64X_IOPAD(0x0284, PIN_INPUT_PULLUP, 0) /* (L21) MMC1_DAT1 */ 2101e6550d3SDave Gerlach AM64X_IOPAD(0x0280, PIN_INPUT_PULLUP, 0) /* (K19) MMC1_DAT2 */ 2111e6550d3SDave Gerlach AM64X_IOPAD(0x027c, PIN_INPUT_PULLUP, 0) /* (K18) MMC1_DAT3 */ 2121e6550d3SDave Gerlach AM64X_IOPAD(0x0298, PIN_INPUT_PULLUP, 0) /* (D19) MMC1_SDCD */ 2131e6550d3SDave Gerlach AM64X_IOPAD(0x029c, PIN_INPUT, 0) /* (C20) MMC1_SDWP */ 2141e6550d3SDave Gerlach AM64X_IOPAD(0x0290, PIN_INPUT, 0) /* MMC1_CLKLB */ 2151e6550d3SDave Gerlach >; 2161e6550d3SDave Gerlach }; 2171e6550d3SDave Gerlach 2181e6550d3SDave Gerlach main_uart0_pins_default: main-uart0-pins-default { 2191e6550d3SDave Gerlach pinctrl-single,pins = < 2201e6550d3SDave Gerlach AM64X_IOPAD(0x0238, PIN_INPUT, 0) /* (B16) UART0_CTSn */ 2211e6550d3SDave Gerlach AM64X_IOPAD(0x023c, PIN_OUTPUT, 0) /* (A16) UART0_RTSn */ 2221e6550d3SDave Gerlach AM64X_IOPAD(0x0230, PIN_INPUT, 0) /* (D15) UART0_RXD */ 2231e6550d3SDave Gerlach AM64X_IOPAD(0x0234, PIN_OUTPUT, 0) /* (C16) UART0_TXD */ 2241e6550d3SDave Gerlach >; 2251e6550d3SDave Gerlach }; 2261e6550d3SDave Gerlach 2274fb6c046SAswath Govindraju main_spi0_pins_default: main-spi0-pins-default { 2284fb6c046SAswath Govindraju pinctrl-single,pins = < 2294fb6c046SAswath Govindraju AM64X_IOPAD(0x0210, PIN_INPUT, 0) /* (D13) SPI0_CLK */ 2304fb6c046SAswath Govindraju AM64X_IOPAD(0x0208, PIN_OUTPUT, 0) /* (D12) SPI0_CS0 */ 2314fb6c046SAswath Govindraju AM64X_IOPAD(0x0214, PIN_OUTPUT, 0) /* (A13) SPI0_D0 */ 2324fb6c046SAswath Govindraju AM64X_IOPAD(0x0218, PIN_INPUT, 0) /* (A14) SPI0_D1 */ 2334fb6c046SAswath Govindraju >; 2344fb6c046SAswath Govindraju }; 2354fb6c046SAswath Govindraju 236*cf3b25bcSNishanth Menon main_i2c0_pins_default: main-i2c0-pins-default { 237*cf3b25bcSNishanth Menon pinctrl-single,pins = < 238*cf3b25bcSNishanth Menon AM64X_IOPAD(0x0260, PIN_INPUT_PULLUP, 0) /* (A18) I2C0_SCL */ 239*cf3b25bcSNishanth Menon AM64X_IOPAD(0x0264, PIN_INPUT_PULLUP, 0) /* (B18) I2C0_SDA */ 240*cf3b25bcSNishanth Menon >; 241*cf3b25bcSNishanth Menon }; 242*cf3b25bcSNishanth Menon 2431e6550d3SDave Gerlach main_i2c1_pins_default: main-i2c1-pins-default { 2441e6550d3SDave Gerlach pinctrl-single,pins = < 2451e6550d3SDave Gerlach AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */ 2461e6550d3SDave Gerlach AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */ 2471e6550d3SDave Gerlach >; 2481e6550d3SDave Gerlach }; 249985204ecSVignesh Raghavendra 250985204ecSVignesh Raghavendra mdio1_pins_default: mdio1-pins-default { 251985204ecSVignesh Raghavendra pinctrl-single,pins = < 252985204ecSVignesh Raghavendra AM64X_IOPAD(0x01fc, PIN_OUTPUT, 4) /* (R2) PRG0_PRU1_GPO19.MDIO0_MDC */ 253985204ecSVignesh Raghavendra AM64X_IOPAD(0x01f8, PIN_INPUT, 4) /* (P5) PRG0_PRU1_GPO18.MDIO0_MDIO */ 254985204ecSVignesh Raghavendra >; 255985204ecSVignesh Raghavendra }; 256985204ecSVignesh Raghavendra 257985204ecSVignesh Raghavendra rgmii1_pins_default: rgmii1-pins-default { 258985204ecSVignesh Raghavendra pinctrl-single,pins = < 259985204ecSVignesh Raghavendra AM64X_IOPAD(0x01cc, PIN_INPUT, 4) /* (W5) PRG0_PRU1_GPO7.RGMII1_RD0 */ 260985204ecSVignesh Raghavendra AM64X_IOPAD(0x01d4, PIN_INPUT, 4) /* (Y5) PRG0_PRU1_GPO9.RGMII1_RD1 */ 261985204ecSVignesh Raghavendra AM64X_IOPAD(0x01d8, PIN_INPUT, 4) /* (V6) PRG0_PRU1_GPO10.RGMII1_RD2 */ 262985204ecSVignesh Raghavendra AM64X_IOPAD(0x01f4, PIN_INPUT, 4) /* (V5) PRG0_PRU1_GPO17.RGMII1_RD3 */ 263985204ecSVignesh Raghavendra AM64X_IOPAD(0x0188, PIN_INPUT, 4) /* (AA5) PRG0_PRU0_GPO10.RGMII1_RXC */ 264985204ecSVignesh Raghavendra AM64X_IOPAD(0x0184, PIN_INPUT, 4) /* (W6) PRG0_PRU0_GPO9.RGMII1_RX_CTL */ 265985204ecSVignesh Raghavendra AM64X_IOPAD(0x0124, PIN_OUTPUT, 4) /* (V15) PRG1_PRU1_GPO7.RGMII1_TD0 */ 266985204ecSVignesh Raghavendra AM64X_IOPAD(0x012c, PIN_OUTPUT, 4) /* (V14) PRG1_PRU1_GPO9.RGMII1_TD1 */ 267985204ecSVignesh Raghavendra AM64X_IOPAD(0x0130, PIN_OUTPUT, 4) /* (W14) PRG1_PRU1_GPO10.RGMII1_TD2 */ 268985204ecSVignesh Raghavendra AM64X_IOPAD(0x014c, PIN_OUTPUT, 4) /* (AA14) PRG1_PRU1_GPO17.RGMII1_TD3 */ 269985204ecSVignesh Raghavendra AM64X_IOPAD(0x00e0, PIN_OUTPUT, 4) /* (U14) PRG1_PRU0_GPO10.RGMII1_TXC */ 270985204ecSVignesh Raghavendra AM64X_IOPAD(0x00dc, PIN_OUTPUT, 4) /* (U15) PRG1_PRU0_GPO9.RGMII1_TX_CTL */ 271985204ecSVignesh Raghavendra >; 272985204ecSVignesh Raghavendra }; 273985204ecSVignesh Raghavendra 274985204ecSVignesh Raghavendra rgmii2_pins_default: rgmii2-pins-default { 275985204ecSVignesh Raghavendra pinctrl-single,pins = < 276985204ecSVignesh Raghavendra AM64X_IOPAD(0x0108, PIN_INPUT, 4) /* (W11) PRG1_PRU1_GPO0.RGMII2_RD0 */ 277985204ecSVignesh Raghavendra AM64X_IOPAD(0x010c, PIN_INPUT, 4) /* (V11) PRG1_PRU1_GPO1.RGMII2_RD1 */ 278985204ecSVignesh Raghavendra AM64X_IOPAD(0x0110, PIN_INPUT, 4) /* (AA12) PRG1_PRU1_GPO2.RGMII2_RD2 */ 279985204ecSVignesh Raghavendra AM64X_IOPAD(0x0114, PIN_INPUT, 4) /* (Y12) PRG1_PRU1_GPO3.RGMII2_RD3 */ 280985204ecSVignesh Raghavendra AM64X_IOPAD(0x0120, PIN_INPUT, 4) /* (U11) PRG1_PRU1_GPO6.RGMII2_RXC */ 281985204ecSVignesh Raghavendra AM64X_IOPAD(0x0118, PIN_INPUT, 4) /* (W12) PRG1_PRU1_GPO4.RGMII2_RX_CTL */ 282985204ecSVignesh Raghavendra AM64X_IOPAD(0x0134, PIN_OUTPUT, 4) /* (AA10) PRG1_PRU1_GPO11.RGMII2_TD0 */ 283985204ecSVignesh Raghavendra AM64X_IOPAD(0x0138, PIN_OUTPUT, 4) /* (V10) PRG1_PRU1_GPO12.RGMII2_TD1 */ 284985204ecSVignesh Raghavendra AM64X_IOPAD(0x013c, PIN_OUTPUT, 4) /* (U10) PRG1_PRU1_GPO13.RGMII2_TD2 */ 285985204ecSVignesh Raghavendra AM64X_IOPAD(0x0140, PIN_OUTPUT, 4) /* (AA11) PRG1_PRU1_GPO14.RGMII2_TD3 */ 286985204ecSVignesh Raghavendra AM64X_IOPAD(0x0148, PIN_OUTPUT, 4) /* (Y10) PRG1_PRU1_GPO16.RGMII2_TXC */ 287985204ecSVignesh Raghavendra AM64X_IOPAD(0x0144, PIN_OUTPUT, 4) /* (Y11) PRG1_PRU1_GPO15.RGMII2_TX_CTL */ 288985204ecSVignesh Raghavendra >; 289985204ecSVignesh Raghavendra }; 29004a80a75SAswath Govindraju 29104a80a75SAswath Govindraju main_usb0_pins_default: main-usb0-pins-default { 29204a80a75SAswath Govindraju pinctrl-single,pins = < 29304a80a75SAswath Govindraju AM64X_IOPAD(0x02a8, PIN_OUTPUT, 0) /* (E19) USB0_DRVVBUS */ 29404a80a75SAswath Govindraju >; 29504a80a75SAswath Govindraju }; 296e4e4e894SVignesh Raghavendra 297e4e4e894SVignesh Raghavendra ospi0_pins_default: ospi0-pins-default { 298e4e4e894SVignesh Raghavendra pinctrl-single,pins = < 299e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0000, PIN_OUTPUT, 0) /* (N20) OSPI0_CLK */ 300e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x002c, PIN_OUTPUT, 0) /* (L19) OSPI0_CSn0 */ 301e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x000c, PIN_INPUT, 0) /* (M19) OSPI0_D0 */ 302e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0010, PIN_INPUT, 0) /* (M18) OSPI0_D1 */ 303e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0014, PIN_INPUT, 0) /* (M20) OSPI0_D2 */ 304e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0018, PIN_INPUT, 0) /* (M21) OSPI0_D3 */ 305e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x001c, PIN_INPUT, 0) /* (P21) OSPI0_D4 */ 306e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0020, PIN_INPUT, 0) /* (P20) OSPI0_D5 */ 307e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0024, PIN_INPUT, 0) /* (N18) OSPI0_D6 */ 308e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0028, PIN_INPUT, 0) /* (M17) OSPI0_D7 */ 309e4e4e894SVignesh Raghavendra AM64X_IOPAD(0x0008, PIN_INPUT, 0) /* (N19) OSPI0_DQS */ 310e4e4e894SVignesh Raghavendra >; 311e4e4e894SVignesh Raghavendra }; 3128032affdSLokesh Vutla 3138032affdSLokesh Vutla main_ecap0_pins_default: main-ecap0-pins-default { 3148032affdSLokesh Vutla pinctrl-single,pins = < 3158032affdSLokesh Vutla AM64X_IOPAD(0x0270, PIN_INPUT, 0) /* (D18) ECAP0_IN_APWM_OUT */ 3168032affdSLokesh Vutla >; 3178032affdSLokesh Vutla }; 3182f474da9SAswath Govindraju 3192f474da9SAswath Govindraju main_mcan0_pins_default: main-mcan0-pins-default { 3202f474da9SAswath Govindraju pinctrl-single,pins = < 3212f474da9SAswath Govindraju AM64X_IOPAD(0x0254, PIN_INPUT, 0) /* (B17) MCAN0_RX */ 3222f474da9SAswath Govindraju AM64X_IOPAD(0x0250, PIN_OUTPUT, 0) /* (A17) MCAN0_TX */ 3232f474da9SAswath Govindraju >; 3242f474da9SAswath Govindraju }; 3252f474da9SAswath Govindraju 3262f474da9SAswath Govindraju main_mcan1_pins_default: main-mcan1-pins-default { 3272f474da9SAswath Govindraju pinctrl-single,pins = < 3282f474da9SAswath Govindraju AM64X_IOPAD(0x025c, PIN_INPUT, 0) /* (D17) MCAN1_RX */ 3292f474da9SAswath Govindraju AM64X_IOPAD(0x0258, PIN_OUTPUT, 0) /* (C17) MCAN1_TX */ 3302f474da9SAswath Govindraju >; 3312f474da9SAswath Govindraju }; 3321e6550d3SDave Gerlach}; 3331e6550d3SDave Gerlach 3341e6550d3SDave Gerlach&main_uart0 { 335dacf4705SAndrew Davis status = "okay"; 3361e6550d3SDave Gerlach pinctrl-names = "default"; 3371e6550d3SDave Gerlach pinctrl-0 = <&main_uart0_pins_default>; 3381e6550d3SDave Gerlach}; 3391e6550d3SDave Gerlach 3401e6550d3SDave Gerlach/* main_uart1 is reserved for firmware usage */ 3411e6550d3SDave Gerlach&main_uart1 { 3421e6550d3SDave Gerlach status = "reserved"; 3431e6550d3SDave Gerlach}; 3441e6550d3SDave Gerlach 345*cf3b25bcSNishanth Menon&main_i2c0 { 346*cf3b25bcSNishanth Menon status = "okay"; 347*cf3b25bcSNishanth Menon pinctrl-names = "default"; 348*cf3b25bcSNishanth Menon pinctrl-0 = <&main_i2c0_pins_default>; 349*cf3b25bcSNishanth Menon clock-frequency = <400000>; 350*cf3b25bcSNishanth Menon 351*cf3b25bcSNishanth Menon eeprom@50 { 352*cf3b25bcSNishanth Menon /* AT24CM01 */ 353*cf3b25bcSNishanth Menon compatible = "atmel,24c1024"; 354*cf3b25bcSNishanth Menon reg = <0x50>; 355*cf3b25bcSNishanth Menon }; 356*cf3b25bcSNishanth Menon}; 357*cf3b25bcSNishanth Menon 3581e6550d3SDave Gerlach&main_i2c1 { 359b80f75d8SAndrew Davis status = "okay"; 3601e6550d3SDave Gerlach pinctrl-names = "default"; 3611e6550d3SDave Gerlach pinctrl-0 = <&main_i2c1_pins_default>; 3621e6550d3SDave Gerlach clock-frequency = <400000>; 3631e6550d3SDave Gerlach 3641e6550d3SDave Gerlach exp1: gpio@22 { 3651e6550d3SDave Gerlach compatible = "ti,tca6424"; 3661e6550d3SDave Gerlach reg = <0x22>; 3671e6550d3SDave Gerlach gpio-controller; 3681e6550d3SDave Gerlach #gpio-cells = <2>; 3691e6550d3SDave Gerlach gpio-line-names = "GPIO_eMMC_RSTn", "CAN_MUX_SEL", 3701e6550d3SDave Gerlach "GPIO_CPSW1_RST", "GPIO_RGMII1_RST", 3711e6550d3SDave Gerlach "GPIO_RGMII2_RST", "GPIO_PCIe_RST_OUT", 3721e6550d3SDave Gerlach "MMC1_SD_EN", "FSI_FET_SEL", 3731e6550d3SDave Gerlach "MCAN0_STB_3V3", "MCAN1_STB_3V3", 3741e6550d3SDave Gerlach "CPSW_FET_SEL", "CPSW_FET2_SEL", 3751e6550d3SDave Gerlach "PRG1_RGMII2_FET_SEL", "TEST_GPIO2", 3761e6550d3SDave Gerlach "GPIO_OLED_RESETn", "VPP_LDO_EN", 3771e6550d3SDave Gerlach "TEST_LED1", "TP92", "TP90", "TP88", 3781e6550d3SDave Gerlach "TP87", "TP86", "TP89", "TP91"; 3791e6550d3SDave Gerlach }; 3801e6550d3SDave Gerlach 3811e6550d3SDave Gerlach /* osd9616p0899-10 */ 3821e6550d3SDave Gerlach display@3c { 3831e6550d3SDave Gerlach compatible = "solomon,ssd1306fb-i2c"; 3841e6550d3SDave Gerlach reg = <0x3c>; 3851e6550d3SDave Gerlach reset-gpios = <&exp1 14 GPIO_ACTIVE_LOW>; 3861e6550d3SDave Gerlach vbat-supply = <&vddb>; 3871e6550d3SDave Gerlach solomon,height = <16>; 3881e6550d3SDave Gerlach solomon,width = <96>; 3891e6550d3SDave Gerlach solomon,com-seq; 3901e6550d3SDave Gerlach solomon,com-invdir; 3911e6550d3SDave Gerlach solomon,page-offset = <0>; 3921e6550d3SDave Gerlach solomon,prechargep1 = <2>; 3931e6550d3SDave Gerlach solomon,prechargep2 = <13>; 3941e6550d3SDave Gerlach }; 3951e6550d3SDave Gerlach}; 3961e6550d3SDave Gerlach 397d5a4d541SAswath Govindraju/* mcu_gpio0 is reserved for mcu firmware usage */ 398d5a4d541SAswath Govindraju&mcu_gpio0 { 399d5a4d541SAswath Govindraju status = "reserved"; 400d5a4d541SAswath Govindraju}; 401d5a4d541SAswath Govindraju 4024fb6c046SAswath Govindraju&main_spi0 { 40379d4aa62SAndrew Davis status = "okay"; 4044fb6c046SAswath Govindraju pinctrl-names = "default"; 4054fb6c046SAswath Govindraju pinctrl-0 = <&main_spi0_pins_default>; 406d3f1b155SAswath Govindraju ti,pindir-d0-out-d1-in; 4074fb6c046SAswath Govindraju eeprom@0 { 4084fb6c046SAswath Govindraju compatible = "microchip,93lc46b"; 4094fb6c046SAswath Govindraju reg = <0>; 4104fb6c046SAswath Govindraju spi-max-frequency = <1000000>; 4114fb6c046SAswath Govindraju spi-cs-high; 4124fb6c046SAswath Govindraju data-size = <16>; 4134fb6c046SAswath Govindraju }; 4144fb6c046SAswath Govindraju}; 4154fb6c046SAswath Govindraju 4161e6550d3SDave Gerlach&sdhci0 { 4171e6550d3SDave Gerlach /* emmc */ 4181e6550d3SDave Gerlach bus-width = <8>; 4191e6550d3SDave Gerlach non-removable; 4201e6550d3SDave Gerlach ti,driver-strength-ohm = <50>; 4211e6550d3SDave Gerlach disable-wp; 4221e6550d3SDave Gerlach}; 4231e6550d3SDave Gerlach 4241e6550d3SDave Gerlach&sdhci1 { 4251e6550d3SDave Gerlach /* SD/MMC */ 4261e6550d3SDave Gerlach vmmc-supply = <&vdd_mmc1>; 4271e6550d3SDave Gerlach pinctrl-names = "default"; 4281e6550d3SDave Gerlach bus-width = <4>; 4291e6550d3SDave Gerlach pinctrl-0 = <&main_mmc1_pins_default>; 4301e6550d3SDave Gerlach ti,driver-strength-ohm = <50>; 4311e6550d3SDave Gerlach disable-wp; 4321e6550d3SDave Gerlach}; 433985204ecSVignesh Raghavendra 43404a80a75SAswath Govindraju&usbss0 { 43504a80a75SAswath Govindraju ti,vbus-divider; 43604a80a75SAswath Govindraju ti,usb2-only; 43704a80a75SAswath Govindraju}; 43804a80a75SAswath Govindraju 43904a80a75SAswath Govindraju&usb0 { 44004a80a75SAswath Govindraju dr_mode = "otg"; 44104a80a75SAswath Govindraju maximum-speed = "high-speed"; 44204a80a75SAswath Govindraju pinctrl-names = "default"; 44304a80a75SAswath Govindraju pinctrl-0 = <&main_usb0_pins_default>; 44404a80a75SAswath Govindraju}; 44504a80a75SAswath Govindraju 446985204ecSVignesh Raghavendra&cpsw3g { 447985204ecSVignesh Raghavendra pinctrl-names = "default"; 448aa62d661SAndrew Davis pinctrl-0 = <&rgmii1_pins_default 449985204ecSVignesh Raghavendra &rgmii2_pins_default>; 450985204ecSVignesh Raghavendra}; 451985204ecSVignesh Raghavendra 452985204ecSVignesh Raghavendra&cpsw_port1 { 453985204ecSVignesh Raghavendra phy-mode = "rgmii-rxid"; 454985204ecSVignesh Raghavendra phy-handle = <&cpsw3g_phy0>; 455985204ecSVignesh Raghavendra}; 456985204ecSVignesh Raghavendra 457985204ecSVignesh Raghavendra&cpsw_port2 { 458985204ecSVignesh Raghavendra phy-mode = "rgmii-rxid"; 459985204ecSVignesh Raghavendra phy-handle = <&cpsw3g_phy3>; 460985204ecSVignesh Raghavendra}; 461985204ecSVignesh Raghavendra 462985204ecSVignesh Raghavendra&cpsw3g_mdio { 463f572888bSAndrew Davis status = "okay"; 464aa62d661SAndrew Davis pinctrl-names = "default"; 465aa62d661SAndrew Davis pinctrl-0 = <&mdio1_pins_default>; 466aa62d661SAndrew Davis 467985204ecSVignesh Raghavendra cpsw3g_phy0: ethernet-phy@0 { 468985204ecSVignesh Raghavendra reg = <0>; 469985204ecSVignesh Raghavendra ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 470985204ecSVignesh Raghavendra ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 471985204ecSVignesh Raghavendra }; 472985204ecSVignesh Raghavendra}; 473fad4e18fSVignesh Raghavendra 474fad4e18fSVignesh Raghavendra&tscadc0 { 475fad4e18fSVignesh Raghavendra /* ADC is reserved for R5 usage */ 476fad4e18fSVignesh Raghavendra status = "reserved"; 477fad4e18fSVignesh Raghavendra}; 478e4e4e894SVignesh Raghavendra 479e4e4e894SVignesh Raghavendra&ospi0 { 480e4e4e894SVignesh Raghavendra pinctrl-names = "default"; 481e4e4e894SVignesh Raghavendra pinctrl-0 = <&ospi0_pins_default>; 482e4e4e894SVignesh Raghavendra 483e4e4e894SVignesh Raghavendra flash@0 { 484e4e4e894SVignesh Raghavendra compatible = "jedec,spi-nor"; 485e4e4e894SVignesh Raghavendra reg = <0x0>; 486e4e4e894SVignesh Raghavendra spi-tx-bus-width = <8>; 487e4e4e894SVignesh Raghavendra spi-rx-bus-width = <8>; 488e4e4e894SVignesh Raghavendra spi-max-frequency = <25000000>; 489e4e4e894SVignesh Raghavendra cdns,tshsl-ns = <60>; 490e4e4e894SVignesh Raghavendra cdns,tsd2d-ns = <60>; 491e4e4e894SVignesh Raghavendra cdns,tchsh-ns = <60>; 492e4e4e894SVignesh Raghavendra cdns,tslch-ns = <60>; 493e4e4e894SVignesh Raghavendra cdns,read-delay = <4>; 494e4e4e894SVignesh Raghavendra }; 495e4e4e894SVignesh Raghavendra}; 4967dd84752SSuman Anna 4977dd84752SSuman Anna&mailbox0_cluster2 { 4987dd84752SSuman Anna mbox_main_r5fss0_core0: mbox-main-r5fss0-core0 { 4997dd84752SSuman Anna ti,mbox-rx = <0 0 2>; 5007dd84752SSuman Anna ti,mbox-tx = <1 0 2>; 5017dd84752SSuman Anna }; 5027dd84752SSuman Anna 5037dd84752SSuman Anna mbox_main_r5fss0_core1: mbox-main-r5fss0-core1 { 5047dd84752SSuman Anna ti,mbox-rx = <2 0 2>; 5057dd84752SSuman Anna ti,mbox-tx = <3 0 2>; 5067dd84752SSuman Anna }; 5077dd84752SSuman Anna}; 5087dd84752SSuman Anna 5097dd84752SSuman Anna&mailbox0_cluster3 { 5107dd84752SSuman Anna status = "disabled"; 5117dd84752SSuman Anna}; 5127dd84752SSuman Anna 5137dd84752SSuman Anna&mailbox0_cluster4 { 5147dd84752SSuman Anna mbox_main_r5fss1_core0: mbox-main-r5fss1-core0 { 5157dd84752SSuman Anna ti,mbox-rx = <0 0 2>; 5167dd84752SSuman Anna ti,mbox-tx = <1 0 2>; 5177dd84752SSuman Anna }; 5187dd84752SSuman Anna 5197dd84752SSuman Anna mbox_main_r5fss1_core1: mbox-main-r5fss1-core1 { 5207dd84752SSuman Anna ti,mbox-rx = <2 0 2>; 5217dd84752SSuman Anna ti,mbox-tx = <3 0 2>; 5227dd84752SSuman Anna }; 5237dd84752SSuman Anna}; 5247dd84752SSuman Anna 5257dd84752SSuman Anna&mailbox0_cluster5 { 5267dd84752SSuman Anna status = "disabled"; 5277dd84752SSuman Anna}; 5287dd84752SSuman Anna 5297dd84752SSuman Anna&mailbox0_cluster6 { 5307dd84752SSuman Anna mbox_m4_0: mbox-m4-0 { 5317dd84752SSuman Anna ti,mbox-rx = <0 0 2>; 5327dd84752SSuman Anna ti,mbox-tx = <1 0 2>; 5337dd84752SSuman Anna }; 5347dd84752SSuman Anna}; 5357dd84752SSuman Anna 5367dd84752SSuman Anna&mailbox0_cluster7 { 5377dd84752SSuman Anna status = "disabled"; 5387dd84752SSuman Anna}; 539354065beSKishon Vijay Abraham I 5400afadba4SSuman Anna&main_r5fss0_core0 { 5410afadba4SSuman Anna mboxes = <&mailbox0_cluster2 &mbox_main_r5fss0_core0>; 542d71abfccSSuman Anna memory-region = <&main_r5fss0_core0_dma_memory_region>, 543d71abfccSSuman Anna <&main_r5fss0_core0_memory_region>; 5440afadba4SSuman Anna}; 5450afadba4SSuman Anna 5460afadba4SSuman Anna&main_r5fss0_core1 { 5470afadba4SSuman Anna mboxes = <&mailbox0_cluster2 &mbox_main_r5fss0_core1>; 548d71abfccSSuman Anna memory-region = <&main_r5fss0_core1_dma_memory_region>, 549d71abfccSSuman Anna <&main_r5fss0_core1_memory_region>; 5500afadba4SSuman Anna}; 5510afadba4SSuman Anna 5520afadba4SSuman Anna&main_r5fss1_core0 { 5530afadba4SSuman Anna mboxes = <&mailbox0_cluster4 &mbox_main_r5fss1_core0>; 554d71abfccSSuman Anna memory-region = <&main_r5fss1_core0_dma_memory_region>, 555d71abfccSSuman Anna <&main_r5fss1_core0_memory_region>; 5560afadba4SSuman Anna}; 5570afadba4SSuman Anna 5580afadba4SSuman Anna&main_r5fss1_core1 { 5590afadba4SSuman Anna mboxes = <&mailbox0_cluster4 &mbox_main_r5fss1_core1>; 560d71abfccSSuman Anna memory-region = <&main_r5fss1_core1_dma_memory_region>, 561d71abfccSSuman Anna <&main_r5fss1_core1_memory_region>; 5620afadba4SSuman Anna}; 5630afadba4SSuman Anna 564354065beSKishon Vijay Abraham I&serdes_ln_ctrl { 565354065beSKishon Vijay Abraham I idle-states = <AM64_SERDES0_LANE0_PCIE0>; 566354065beSKishon Vijay Abraham I}; 567354065beSKishon Vijay Abraham I 568354065beSKishon Vijay Abraham I&serdes0 { 569354065beSKishon Vijay Abraham I serdes0_pcie_link: phy@0 { 570354065beSKishon Vijay Abraham I reg = <0>; 571354065beSKishon Vijay Abraham I cdns,num-lanes = <1>; 572354065beSKishon Vijay Abraham I #phy-cells = <0>; 573354065beSKishon Vijay Abraham I cdns,phy-type = <PHY_TYPE_PCIE>; 574354065beSKishon Vijay Abraham I resets = <&serdes_wiz0 1>; 575354065beSKishon Vijay Abraham I }; 576354065beSKishon Vijay Abraham I}; 577354065beSKishon Vijay Abraham I 578354065beSKishon Vijay Abraham I&pcie0_rc { 5793e21ec28SAndrew Davis status = "okay"; 580354065beSKishon Vijay Abraham I reset-gpios = <&exp1 5 GPIO_ACTIVE_HIGH>; 581354065beSKishon Vijay Abraham I phys = <&serdes0_pcie_link>; 582354065beSKishon Vijay Abraham I phy-names = "pcie-phy"; 583354065beSKishon Vijay Abraham I num-lanes = <1>; 584354065beSKishon Vijay Abraham I}; 585354065beSKishon Vijay Abraham I 586354065beSKishon Vijay Abraham I&pcie0_ep { 587354065beSKishon Vijay Abraham I phys = <&serdes0_pcie_link>; 588354065beSKishon Vijay Abraham I phy-names = "pcie-phy"; 589354065beSKishon Vijay Abraham I num-lanes = <1>; 590354065beSKishon Vijay Abraham I}; 5918032affdSLokesh Vutla 5928032affdSLokesh Vutla&ecap0 { 593dcac8eaaSAndrew Davis status = "okay"; 5948032affdSLokesh Vutla /* PWM is available on Pin 1 of header J12 */ 5958032affdSLokesh Vutla pinctrl-names = "default"; 5968032affdSLokesh Vutla pinctrl-0 = <&main_ecap0_pins_default>; 5978032affdSLokesh Vutla}; 5988032affdSLokesh Vutla 5992f474da9SAswath Govindraju&main_mcan0 { 6004a579887SAndrew Davis status = "okay"; 6012f474da9SAswath Govindraju pinctrl-names = "default"; 6022f474da9SAswath Govindraju pinctrl-0 = <&main_mcan0_pins_default>; 6032f474da9SAswath Govindraju phys = <&transceiver1>; 6042f474da9SAswath Govindraju}; 6052f474da9SAswath Govindraju 6062f474da9SAswath Govindraju&main_mcan1 { 6074a579887SAndrew Davis status = "okay"; 6082f474da9SAswath Govindraju pinctrl-names = "default"; 6092f474da9SAswath Govindraju pinctrl-0 = <&main_mcan1_pins_default>; 6102f474da9SAswath Govindraju phys = <&transceiver2>; 6112f474da9SAswath Govindraju}; 612