1*e180f76dSJan Kiszka// SPDX-License-Identifier: GPL-2.0 2*e180f76dSJan Kiszka/* 3*e180f76dSJan Kiszka * Copyright (c) Siemens AG, 2018-2021 4*e180f76dSJan Kiszka * 5*e180f76dSJan Kiszka * Authors: 6*e180f76dSJan Kiszka * Le Jin <le.jin@siemens.com> 7*e180f76dSJan Kiszka * Jan Kiszka <jan.kiszk@siemens.com> 8*e180f76dSJan Kiszka * 9*e180f76dSJan Kiszka * Common bits of the IOT2050 Basic and Advanced variants 10*e180f76dSJan Kiszka */ 11*e180f76dSJan Kiszka 12*e180f76dSJan Kiszka/dts-v1/; 13*e180f76dSJan Kiszka 14*e180f76dSJan Kiszka#include "k3-am654.dtsi" 15*e180f76dSJan Kiszka#include <dt-bindings/phy/phy.h> 16*e180f76dSJan Kiszka 17*e180f76dSJan Kiszka/ { 18*e180f76dSJan Kiszka aliases { 19*e180f76dSJan Kiszka spi0 = &mcu_spi0; 20*e180f76dSJan Kiszka }; 21*e180f76dSJan Kiszka 22*e180f76dSJan Kiszka chosen { 23*e180f76dSJan Kiszka stdout-path = "serial3:115200n8"; 24*e180f76dSJan Kiszka bootargs = "earlycon=ns16550a,mmio32,0x02810000"; 25*e180f76dSJan Kiszka }; 26*e180f76dSJan Kiszka 27*e180f76dSJan Kiszka reserved-memory { 28*e180f76dSJan Kiszka #address-cells = <2>; 29*e180f76dSJan Kiszka #size-cells = <2>; 30*e180f76dSJan Kiszka ranges; 31*e180f76dSJan Kiszka 32*e180f76dSJan Kiszka secure_ddr: secure-ddr@9e800000 { 33*e180f76dSJan Kiszka reg = <0 0x9e800000 0 0x01800000>; /* for OP-TEE */ 34*e180f76dSJan Kiszka alignment = <0x1000>; 35*e180f76dSJan Kiszka no-map; 36*e180f76dSJan Kiszka }; 37*e180f76dSJan Kiszka 38*e180f76dSJan Kiszka mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 { 39*e180f76dSJan Kiszka compatible = "shared-dma-pool"; 40*e180f76dSJan Kiszka reg = <0 0xa0000000 0 0x100000>; 41*e180f76dSJan Kiszka no-map; 42*e180f76dSJan Kiszka }; 43*e180f76dSJan Kiszka 44*e180f76dSJan Kiszka mcu_r5fss0_core0_memory_region: r5f-memory@a0100000 { 45*e180f76dSJan Kiszka compatible = "shared-dma-pool"; 46*e180f76dSJan Kiszka reg = <0 0xa0100000 0 0xf00000>; 47*e180f76dSJan Kiszka no-map; 48*e180f76dSJan Kiszka }; 49*e180f76dSJan Kiszka 50*e180f76dSJan Kiszka mcu_r5fss0_core1_dma_memory_region: r5f-dma-memory@a1000000 { 51*e180f76dSJan Kiszka compatible = "shared-dma-pool"; 52*e180f76dSJan Kiszka reg = <0 0xa1000000 0 0x100000>; 53*e180f76dSJan Kiszka no-map; 54*e180f76dSJan Kiszka }; 55*e180f76dSJan Kiszka 56*e180f76dSJan Kiszka mcu_r5fss0_core1_memory_region: r5f-memory@a1100000 { 57*e180f76dSJan Kiszka compatible = "shared-dma-pool"; 58*e180f76dSJan Kiszka reg = <0 0xa1100000 0 0xf00000>; 59*e180f76dSJan Kiszka no-map; 60*e180f76dSJan Kiszka }; 61*e180f76dSJan Kiszka 62*e180f76dSJan Kiszka rtos_ipc_memory_region: ipc-memories@a2000000 { 63*e180f76dSJan Kiszka reg = <0x00 0xa2000000 0x00 0x00200000>; 64*e180f76dSJan Kiszka alignment = <0x1000>; 65*e180f76dSJan Kiszka no-map; 66*e180f76dSJan Kiszka }; 67*e180f76dSJan Kiszka }; 68*e180f76dSJan Kiszka 69*e180f76dSJan Kiszka leds { 70*e180f76dSJan Kiszka compatible = "gpio-leds"; 71*e180f76dSJan Kiszka pinctrl-names = "default"; 72*e180f76dSJan Kiszka pinctrl-0 = <&leds_pins_default>; 73*e180f76dSJan Kiszka 74*e180f76dSJan Kiszka status-led-red { 75*e180f76dSJan Kiszka gpios = <&wkup_gpio0 32 GPIO_ACTIVE_HIGH>; 76*e180f76dSJan Kiszka panic-indicator; 77*e180f76dSJan Kiszka }; 78*e180f76dSJan Kiszka 79*e180f76dSJan Kiszka status-led-green { 80*e180f76dSJan Kiszka gpios = <&wkup_gpio0 24 GPIO_ACTIVE_HIGH>; 81*e180f76dSJan Kiszka }; 82*e180f76dSJan Kiszka 83*e180f76dSJan Kiszka user-led1-red { 84*e180f76dSJan Kiszka gpios = <&pcal9535_3 14 GPIO_ACTIVE_HIGH>; 85*e180f76dSJan Kiszka }; 86*e180f76dSJan Kiszka 87*e180f76dSJan Kiszka user-led1-green { 88*e180f76dSJan Kiszka gpios = <&pcal9535_2 15 GPIO_ACTIVE_HIGH>; 89*e180f76dSJan Kiszka }; 90*e180f76dSJan Kiszka 91*e180f76dSJan Kiszka user-led2-red { 92*e180f76dSJan Kiszka gpios = <&wkup_gpio0 17 GPIO_ACTIVE_HIGH>; 93*e180f76dSJan Kiszka }; 94*e180f76dSJan Kiszka 95*e180f76dSJan Kiszka user-led2-green { 96*e180f76dSJan Kiszka gpios = <&wkup_gpio0 22 GPIO_ACTIVE_HIGH>; 97*e180f76dSJan Kiszka }; 98*e180f76dSJan Kiszka }; 99*e180f76dSJan Kiszka 100*e180f76dSJan Kiszka dp_refclk: clock { 101*e180f76dSJan Kiszka compatible = "fixed-clock"; 102*e180f76dSJan Kiszka #clock-cells = <0>; 103*e180f76dSJan Kiszka clock-frequency = <19200000>; 104*e180f76dSJan Kiszka }; 105*e180f76dSJan Kiszka}; 106*e180f76dSJan Kiszka 107*e180f76dSJan Kiszka&wkup_pmx0 { 108*e180f76dSJan Kiszka wkup_i2c0_pins_default: wkup-i2c0-pins-default { 109*e180f76dSJan Kiszka pinctrl-single,pins = < 110*e180f76dSJan Kiszka /* (AC7) WKUP_I2C0_SCL */ 111*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00e0, PIN_INPUT, 0) 112*e180f76dSJan Kiszka /* (AD6) WKUP_I2C0_SDA */ 113*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00e4, PIN_INPUT, 0) 114*e180f76dSJan Kiszka >; 115*e180f76dSJan Kiszka }; 116*e180f76dSJan Kiszka 117*e180f76dSJan Kiszka mcu_i2c0_pins_default: mcu-i2c0-pins-default { 118*e180f76dSJan Kiszka pinctrl-single,pins = < 119*e180f76dSJan Kiszka /* (AD8) MCU_I2C0_SCL */ 120*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00e8, PIN_INPUT, 0) 121*e180f76dSJan Kiszka /* (AD7) MCU_I2C0_SDA */ 122*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00ec, PIN_INPUT, 0) 123*e180f76dSJan Kiszka >; 124*e180f76dSJan Kiszka }; 125*e180f76dSJan Kiszka 126*e180f76dSJan Kiszka arduino_i2c_aio_switch_pins_default: arduino-i2c-aio-switch-pins-default { 127*e180f76dSJan Kiszka pinctrl-single,pins = < 128*e180f76dSJan Kiszka /* (R2) WKUP_GPIO0_21 */ 129*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0024, PIN_OUTPUT, 7) 130*e180f76dSJan Kiszka >; 131*e180f76dSJan Kiszka }; 132*e180f76dSJan Kiszka 133*e180f76dSJan Kiszka push_button_pins_default: push-button-pins-default { 134*e180f76dSJan Kiszka pinctrl-single,pins = < 135*e180f76dSJan Kiszka /* (T1) MCU_OSPI1_CLK.WKUP_GPIO0_25 */ 136*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0034, PIN_INPUT, 7) 137*e180f76dSJan Kiszka >; 138*e180f76dSJan Kiszka }; 139*e180f76dSJan Kiszka 140*e180f76dSJan Kiszka arduino_uart_pins_default: arduino-uart-pins-default { 141*e180f76dSJan Kiszka pinctrl-single,pins = < 142*e180f76dSJan Kiszka /* (P4) MCU_UART0_RXD */ 143*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0044, PIN_INPUT, 4) 144*e180f76dSJan Kiszka /* (P5) MCU_UART0_TXD */ 145*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0048, PIN_OUTPUT, 4) 146*e180f76dSJan Kiszka >; 147*e180f76dSJan Kiszka }; 148*e180f76dSJan Kiszka 149*e180f76dSJan Kiszka arduino_io_d2_to_d3_pins_default: arduino-io-d2-to-d3-pins-default { 150*e180f76dSJan Kiszka pinctrl-single,pins = < 151*e180f76dSJan Kiszka /* (P1) WKUP_GPIO0_31 */ 152*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x004C, PIN_OUTPUT, 7) 153*e180f76dSJan Kiszka /* (N3) WKUP_GPIO0_33 */ 154*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0054, PIN_OUTPUT, 7) 155*e180f76dSJan Kiszka >; 156*e180f76dSJan Kiszka }; 157*e180f76dSJan Kiszka 158*e180f76dSJan Kiszka arduino_io_oe_pins_default: arduino-io-oe-pins-default { 159*e180f76dSJan Kiszka pinctrl-single,pins = < 160*e180f76dSJan Kiszka /* (N4) WKUP_GPIO0_34 */ 161*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0058, PIN_OUTPUT, 7) 162*e180f76dSJan Kiszka /* (M2) WKUP_GPIO0_36 */ 163*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0060, PIN_OUTPUT, 7) 164*e180f76dSJan Kiszka /* (M3) WKUP_GPIO0_37 */ 165*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0064, PIN_OUTPUT, 7) 166*e180f76dSJan Kiszka /* (M4) WKUP_GPIO0_38 */ 167*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0068, PIN_OUTPUT, 7) 168*e180f76dSJan Kiszka /* (M1) WKUP_GPIO0_41 */ 169*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0074, PIN_OUTPUT, 7) 170*e180f76dSJan Kiszka >; 171*e180f76dSJan Kiszka }; 172*e180f76dSJan Kiszka 173*e180f76dSJan Kiszka mcu_fss0_ospi0_pins_default: mcu-fss0-ospi0-pins-default { 174*e180f76dSJan Kiszka pinctrl-single,pins = < 175*e180f76dSJan Kiszka /* (V1) MCU_OSPI0_CLK */ 176*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0000, PIN_OUTPUT, 0) 177*e180f76dSJan Kiszka /* (U2) MCU_OSPI0_DQS */ 178*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0008, PIN_INPUT, 0) 179*e180f76dSJan Kiszka /* (U4) MCU_OSPI0_D0 */ 180*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x000c, PIN_INPUT, 0) 181*e180f76dSJan Kiszka /* (U5) MCU_OSPI0_D1 */ 182*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0010, PIN_INPUT, 0) 183*e180f76dSJan Kiszka /* (R4) MCU_OSPI0_CSn0 */ 184*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x002c, PIN_OUTPUT, 0) 185*e180f76dSJan Kiszka >; 186*e180f76dSJan Kiszka }; 187*e180f76dSJan Kiszka 188*e180f76dSJan Kiszka db9_com_mode_pins_default: db9-com-mode-pins-default { 189*e180f76dSJan Kiszka pinctrl-single,pins = < 190*e180f76dSJan Kiszka /* (AD3) WKUP_GPIO0_5, used as uart0 mode 0 */ 191*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00c4, PIN_OUTPUT, 7) 192*e180f76dSJan Kiszka /* (AC3) WKUP_GPIO0_4, used as uart0 mode 1 */ 193*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00c0, PIN_OUTPUT, 7) 194*e180f76dSJan Kiszka /* (AC1) WKUP_GPIO0_7, used as uart0 term */ 195*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00cc, PIN_OUTPUT, 7) 196*e180f76dSJan Kiszka /* (AC2) WKUP_GPIO0_6, used as uart0 en */ 197*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x00c8, PIN_OUTPUT, 7) 198*e180f76dSJan Kiszka >; 199*e180f76dSJan Kiszka }; 200*e180f76dSJan Kiszka 201*e180f76dSJan Kiszka leds_pins_default: leds-pins-default { 202*e180f76dSJan Kiszka pinctrl-single,pins = < 203*e180f76dSJan Kiszka /* (T2) WKUP_GPIO0_17, used as user led1 red */ 204*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0014, PIN_OUTPUT, 7) 205*e180f76dSJan Kiszka /* (R3) WKUP_GPIO0_22, used as user led1 green */ 206*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0028, PIN_OUTPUT, 7) 207*e180f76dSJan Kiszka /* (R5) WKUP_GPIO0_24, used as status led red */ 208*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0030, PIN_OUTPUT, 7) 209*e180f76dSJan Kiszka /* (N2) WKUP_GPIO0_32, used as status led green */ 210*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0050, PIN_OUTPUT, 7) 211*e180f76dSJan Kiszka >; 212*e180f76dSJan Kiszka }; 213*e180f76dSJan Kiszka 214*e180f76dSJan Kiszka mcu_spi0_pins_default: mcu-spi0-pins-default { 215*e180f76dSJan Kiszka pinctrl-single,pins = < 216*e180f76dSJan Kiszka /* (Y1) MCU_SPI0_CLK */ 217*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0090, PIN_INPUT, 0) 218*e180f76dSJan Kiszka /* (Y3) MCU_SPI0_D0 */ 219*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0094, PIN_INPUT, 0) 220*e180f76dSJan Kiszka /* (Y2) MCU_SPI0_D1 */ 221*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x0098, PIN_INPUT, 0) 222*e180f76dSJan Kiszka /* (Y4) MCU_SPI0_CS0 */ 223*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x009c, PIN_OUTPUT, 0) 224*e180f76dSJan Kiszka >; 225*e180f76dSJan Kiszka }; 226*e180f76dSJan Kiszka 227*e180f76dSJan Kiszka minipcie_pins_default: minipcie-pins-default { 228*e180f76dSJan Kiszka pinctrl-single,pins = < 229*e180f76dSJan Kiszka /* (P2) MCU_OSPI1_DQS.WKUP_GPIO0_27 */ 230*e180f76dSJan Kiszka AM65X_WKUP_IOPAD(0x003C, PIN_OUTPUT, 7) 231*e180f76dSJan Kiszka >; 232*e180f76dSJan Kiszka }; 233*e180f76dSJan Kiszka}; 234*e180f76dSJan Kiszka 235*e180f76dSJan Kiszka&main_pmx0 { 236*e180f76dSJan Kiszka main_uart1_pins_default: main-uart1-pins-default { 237*e180f76dSJan Kiszka pinctrl-single,pins = < 238*e180f76dSJan Kiszka AM65X_IOPAD(0x0174, PIN_INPUT, 6) /* (AE23) UART1_RXD */ 239*e180f76dSJan Kiszka AM65X_IOPAD(0x014c, PIN_OUTPUT, 6) /* (AD23) UART1_TXD */ 240*e180f76dSJan Kiszka AM65X_IOPAD(0x0178, PIN_INPUT, 6) /* (AD22) UART1_CTSn */ 241*e180f76dSJan Kiszka AM65X_IOPAD(0x017c, PIN_OUTPUT, 6) /* (AC21) UART1_RTSn */ 242*e180f76dSJan Kiszka >; 243*e180f76dSJan Kiszka }; 244*e180f76dSJan Kiszka 245*e180f76dSJan Kiszka main_i2c3_pins_default: main-i2c3-pins-default { 246*e180f76dSJan Kiszka pinctrl-single,pins = < 247*e180f76dSJan Kiszka AM65X_IOPAD(0x01c0, PIN_INPUT, 2) /* (AF13) I2C3_SCL */ 248*e180f76dSJan Kiszka AM65X_IOPAD(0x01d4, PIN_INPUT, 2) /* (AG12) I2C3_SDA */ 249*e180f76dSJan Kiszka >; 250*e180f76dSJan Kiszka }; 251*e180f76dSJan Kiszka 252*e180f76dSJan Kiszka main_mmc1_pins_default: main-mmc1-pins-default { 253*e180f76dSJan Kiszka pinctrl-single,pins = < 254*e180f76dSJan Kiszka AM65X_IOPAD(0x02d4, PIN_INPUT_PULLDOWN, 0) /* (C27) MMC1_CLK */ 255*e180f76dSJan Kiszka AM65X_IOPAD(0x02d8, PIN_INPUT_PULLUP, 0) /* (C28) MMC1_CMD */ 256*e180f76dSJan Kiszka AM65X_IOPAD(0x02d0, PIN_INPUT_PULLUP, 0) /* (D28) MMC1_DAT0 */ 257*e180f76dSJan Kiszka AM65X_IOPAD(0x02cc, PIN_INPUT_PULLUP, 0) /* (E27) MMC1_DAT1 */ 258*e180f76dSJan Kiszka AM65X_IOPAD(0x02c8, PIN_INPUT_PULLUP, 0) /* (D26) MMC1_DAT2 */ 259*e180f76dSJan Kiszka AM65X_IOPAD(0x02c4, PIN_INPUT_PULLUP, 0) /* (D27) MMC1_DAT3 */ 260*e180f76dSJan Kiszka AM65X_IOPAD(0x02dc, PIN_INPUT_PULLUP, 0) /* (B24) MMC1_SDCD */ 261*e180f76dSJan Kiszka AM65X_IOPAD(0x02e0, PIN_INPUT_PULLUP, 0) /* (C24) MMC1_SDWP */ 262*e180f76dSJan Kiszka >; 263*e180f76dSJan Kiszka }; 264*e180f76dSJan Kiszka 265*e180f76dSJan Kiszka usb0_pins_default: usb0-pins-default { 266*e180f76dSJan Kiszka pinctrl-single,pins = < 267*e180f76dSJan Kiszka AM65X_IOPAD(0x02bc, PIN_OUTPUT, 0) /* (AD9) USB0_DRVVBUS */ 268*e180f76dSJan Kiszka >; 269*e180f76dSJan Kiszka }; 270*e180f76dSJan Kiszka 271*e180f76dSJan Kiszka usb1_pins_default: usb1-pins-default { 272*e180f76dSJan Kiszka pinctrl-single,pins = < 273*e180f76dSJan Kiszka AM65X_IOPAD(0x02c0, PIN_OUTPUT, 0) /* (AC8) USB1_DRVVBUS */ 274*e180f76dSJan Kiszka >; 275*e180f76dSJan Kiszka }; 276*e180f76dSJan Kiszka 277*e180f76dSJan Kiszka arduino_io_d4_to_d9_pins_default: arduino-io-d4-to-d9-pins-default { 278*e180f76dSJan Kiszka pinctrl-single,pins = < 279*e180f76dSJan Kiszka AM65X_IOPAD(0x0084, PIN_OUTPUT, 7) /* (AG18) GPIO0_33 */ 280*e180f76dSJan Kiszka AM65X_IOPAD(0x008C, PIN_OUTPUT, 7) /* (AF17) GPIO0_35 */ 281*e180f76dSJan Kiszka AM65X_IOPAD(0x0098, PIN_OUTPUT, 7) /* (AH16) GPIO0_38 */ 282*e180f76dSJan Kiszka AM65X_IOPAD(0x00AC, PIN_OUTPUT, 7) /* (AH15) GPIO0_43 */ 283*e180f76dSJan Kiszka AM65X_IOPAD(0x00C0, PIN_OUTPUT, 7) /* (AG15) GPIO0_48 */ 284*e180f76dSJan Kiszka AM65X_IOPAD(0x00CC, PIN_OUTPUT, 7) /* (AD15) GPIO0_51 */ 285*e180f76dSJan Kiszka >; 286*e180f76dSJan Kiszka }; 287*e180f76dSJan Kiszka 288*e180f76dSJan Kiszka dss_vout1_pins_default: dss-vout1-pins-default { 289*e180f76dSJan Kiszka pinctrl-single,pins = < 290*e180f76dSJan Kiszka AM65X_IOPAD(0x0000, PIN_OUTPUT, 1) /* VOUT1_DATA0 */ 291*e180f76dSJan Kiszka AM65X_IOPAD(0x0004, PIN_OUTPUT, 1) /* VOUT1_DATA1 */ 292*e180f76dSJan Kiszka AM65X_IOPAD(0x0008, PIN_OUTPUT, 1) /* VOUT1_DATA2 */ 293*e180f76dSJan Kiszka AM65X_IOPAD(0x000c, PIN_OUTPUT, 1) /* VOUT1_DATA3 */ 294*e180f76dSJan Kiszka AM65X_IOPAD(0x0010, PIN_OUTPUT, 1) /* VOUT1_DATA4 */ 295*e180f76dSJan Kiszka AM65X_IOPAD(0x0014, PIN_OUTPUT, 1) /* VOUT1_DATA5 */ 296*e180f76dSJan Kiszka AM65X_IOPAD(0x0018, PIN_OUTPUT, 1) /* VOUT1_DATA6 */ 297*e180f76dSJan Kiszka AM65X_IOPAD(0x001c, PIN_OUTPUT, 1) /* VOUT1_DATA7 */ 298*e180f76dSJan Kiszka AM65X_IOPAD(0x0020, PIN_OUTPUT, 1) /* VOUT1_DATA8 */ 299*e180f76dSJan Kiszka AM65X_IOPAD(0x0024, PIN_OUTPUT, 1) /* VOUT1_DATA9 */ 300*e180f76dSJan Kiszka AM65X_IOPAD(0x0028, PIN_OUTPUT, 1) /* VOUT1_DATA10 */ 301*e180f76dSJan Kiszka AM65X_IOPAD(0x002c, PIN_OUTPUT, 1) /* VOUT1_DATA11 */ 302*e180f76dSJan Kiszka AM65X_IOPAD(0x0030, PIN_OUTPUT, 1) /* VOUT1_DATA12 */ 303*e180f76dSJan Kiszka AM65X_IOPAD(0x0034, PIN_OUTPUT, 1) /* VOUT1_DATA13 */ 304*e180f76dSJan Kiszka AM65X_IOPAD(0x0038, PIN_OUTPUT, 1) /* VOUT1_DATA14 */ 305*e180f76dSJan Kiszka AM65X_IOPAD(0x003c, PIN_OUTPUT, 1) /* VOUT1_DATA15 */ 306*e180f76dSJan Kiszka AM65X_IOPAD(0x0040, PIN_OUTPUT, 1) /* VOUT1_DATA16 */ 307*e180f76dSJan Kiszka AM65X_IOPAD(0x0044, PIN_OUTPUT, 1) /* VOUT1_DATA17 */ 308*e180f76dSJan Kiszka AM65X_IOPAD(0x0048, PIN_OUTPUT, 1) /* VOUT1_DATA18 */ 309*e180f76dSJan Kiszka AM65X_IOPAD(0x004c, PIN_OUTPUT, 1) /* VOUT1_DATA19 */ 310*e180f76dSJan Kiszka AM65X_IOPAD(0x0050, PIN_OUTPUT, 1) /* VOUT1_DATA20 */ 311*e180f76dSJan Kiszka AM65X_IOPAD(0x0054, PIN_OUTPUT, 1) /* VOUT1_DATA21 */ 312*e180f76dSJan Kiszka AM65X_IOPAD(0x0058, PIN_OUTPUT, 1) /* VOUT1_DATA22 */ 313*e180f76dSJan Kiszka AM65X_IOPAD(0x005c, PIN_OUTPUT, 1) /* VOUT1_DATA23 */ 314*e180f76dSJan Kiszka AM65X_IOPAD(0x0060, PIN_OUTPUT, 1) /* VOUT1_VSYNC */ 315*e180f76dSJan Kiszka AM65X_IOPAD(0x0064, PIN_OUTPUT, 1) /* VOUT1_HSYNC */ 316*e180f76dSJan Kiszka AM65X_IOPAD(0x0068, PIN_OUTPUT, 1) /* VOUT1_PCLK */ 317*e180f76dSJan Kiszka AM65X_IOPAD(0x006c, PIN_OUTPUT, 1) /* VOUT1_DE */ 318*e180f76dSJan Kiszka >; 319*e180f76dSJan Kiszka }; 320*e180f76dSJan Kiszka 321*e180f76dSJan Kiszka dp_pins_default: dp-pins-default { 322*e180f76dSJan Kiszka pinctrl-single,pins = < 323*e180f76dSJan Kiszka AM65X_IOPAD(0x0078, PIN_OUTPUT, 7) /* (AF18) DP rst_n */ 324*e180f76dSJan Kiszka >; 325*e180f76dSJan Kiszka }; 326*e180f76dSJan Kiszka 327*e180f76dSJan Kiszka main_i2c2_pins_default: main-i2c2-pins-default { 328*e180f76dSJan Kiszka pinctrl-single,pins = < 329*e180f76dSJan Kiszka AM65X_IOPAD(0x0074, PIN_INPUT, 5) /* (T27) I2C2_SCL */ 330*e180f76dSJan Kiszka AM65X_IOPAD(0x0070, PIN_INPUT, 5) /* (R25) I2C2_SDA */ 331*e180f76dSJan Kiszka >; 332*e180f76dSJan Kiszka }; 333*e180f76dSJan Kiszka}; 334*e180f76dSJan Kiszka 335*e180f76dSJan Kiszka&main_pmx1 { 336*e180f76dSJan Kiszka main_i2c0_pins_default: main-i2c0-pins-default { 337*e180f76dSJan Kiszka pinctrl-single,pins = < 338*e180f76dSJan Kiszka AM65X_IOPAD(0x0000, PIN_INPUT, 0) /* (D20) I2C0_SCL */ 339*e180f76dSJan Kiszka AM65X_IOPAD(0x0004, PIN_INPUT, 0) /* (C21) I2C0_SDA */ 340*e180f76dSJan Kiszka >; 341*e180f76dSJan Kiszka }; 342*e180f76dSJan Kiszka 343*e180f76dSJan Kiszka main_i2c1_pins_default: main-i2c1-pins-default { 344*e180f76dSJan Kiszka pinctrl-single,pins = < 345*e180f76dSJan Kiszka AM65X_IOPAD(0x0008, PIN_INPUT, 0) /* (B21) I2C1_SCL */ 346*e180f76dSJan Kiszka AM65X_IOPAD(0x000c, PIN_INPUT, 0) /* (E21) I2C1_SDA */ 347*e180f76dSJan Kiszka >; 348*e180f76dSJan Kiszka }; 349*e180f76dSJan Kiszka 350*e180f76dSJan Kiszka ecap0_pins_default: ecap0-pins-default { 351*e180f76dSJan Kiszka pinctrl-single,pins = < 352*e180f76dSJan Kiszka AM65X_IOPAD(0x0010, PIN_INPUT, 0) /* (D21) ECAP0_IN_APWM_OUT */ 353*e180f76dSJan Kiszka >; 354*e180f76dSJan Kiszka }; 355*e180f76dSJan Kiszka}; 356*e180f76dSJan Kiszka 357*e180f76dSJan Kiszka&wkup_uart0 { 358*e180f76dSJan Kiszka /* Wakeup UART is used by System firmware */ 359*e180f76dSJan Kiszka status = "reserved"; 360*e180f76dSJan Kiszka}; 361*e180f76dSJan Kiszka 362*e180f76dSJan Kiszka&main_uart1 { 363*e180f76dSJan Kiszka pinctrl-names = "default"; 364*e180f76dSJan Kiszka pinctrl-0 = <&main_uart1_pins_default>; 365*e180f76dSJan Kiszka}; 366*e180f76dSJan Kiszka 367*e180f76dSJan Kiszka&main_uart2 { 368*e180f76dSJan Kiszka status = "disabled"; 369*e180f76dSJan Kiszka}; 370*e180f76dSJan Kiszka 371*e180f76dSJan Kiszka&mcu_uart0 { 372*e180f76dSJan Kiszka pinctrl-names = "default"; 373*e180f76dSJan Kiszka pinctrl-0 = <&arduino_uart_pins_default>; 374*e180f76dSJan Kiszka}; 375*e180f76dSJan Kiszka 376*e180f76dSJan Kiszka&main_gpio0 { 377*e180f76dSJan Kiszka pinctrl-names = "default"; 378*e180f76dSJan Kiszka pinctrl-0 = <&arduino_io_d4_to_d9_pins_default>; 379*e180f76dSJan Kiszka gpio-line-names = 380*e180f76dSJan Kiszka "main_gpio0-base", "", "", "", "", "", "", "", "", "", 381*e180f76dSJan Kiszka "", "", "", "", "", "", "", "", "", "", 382*e180f76dSJan Kiszka "", "", "", "", "", "", "", "", "", "", 383*e180f76dSJan Kiszka "", "", "", "IO4", "", "IO5", "", "", "IO6", "", 384*e180f76dSJan Kiszka "", "", "", "IO7", "", "", "", "", "IO8", "", 385*e180f76dSJan Kiszka "", "IO9"; 386*e180f76dSJan Kiszka}; 387*e180f76dSJan Kiszka 388*e180f76dSJan Kiszka&wkup_gpio0 { 389*e180f76dSJan Kiszka pinctrl-names = "default"; 390*e180f76dSJan Kiszka pinctrl-0 = < 391*e180f76dSJan Kiszka &arduino_io_d2_to_d3_pins_default 392*e180f76dSJan Kiszka &arduino_i2c_aio_switch_pins_default 393*e180f76dSJan Kiszka &arduino_io_oe_pins_default 394*e180f76dSJan Kiszka &push_button_pins_default 395*e180f76dSJan Kiszka &db9_com_mode_pins_default 396*e180f76dSJan Kiszka >; 397*e180f76dSJan Kiszka gpio-line-names = 398*e180f76dSJan Kiszka /* 0..9 */ 399*e180f76dSJan Kiszka "wkup_gpio0-base", "", "", "", "UART0-mode1", "UART0-mode0", 400*e180f76dSJan Kiszka "UART0-enable", "UART0-terminate", "", "WIFI-disable", 401*e180f76dSJan Kiszka /* 10..19 */ 402*e180f76dSJan Kiszka "", "", "", "", "", "", "", "", "", "", 403*e180f76dSJan Kiszka /* 20..29 */ 404*e180f76dSJan Kiszka "", "A4A5-I2C-mux", "", "", "", "USER-button", "", "", "","IO0", 405*e180f76dSJan Kiszka /* 30..39 */ 406*e180f76dSJan Kiszka "IO1", "IO2", "", "IO3", "IO17-direction", "A5", 407*e180f76dSJan Kiszka "IO16-direction", "IO15-direction", "IO14-direction", "A3", 408*e180f76dSJan Kiszka /* 40..49 */ 409*e180f76dSJan Kiszka "", "IO18-direction", "A4", "A2", "A1", "A0", "", "", "IO13", 410*e180f76dSJan Kiszka "IO11", 411*e180f76dSJan Kiszka /* 50..51 */ 412*e180f76dSJan Kiszka "IO12", "IO10"; 413*e180f76dSJan Kiszka}; 414*e180f76dSJan Kiszka 415*e180f76dSJan Kiszka&wkup_i2c0 { 416*e180f76dSJan Kiszka pinctrl-names = "default"; 417*e180f76dSJan Kiszka pinctrl-0 = <&wkup_i2c0_pins_default>; 418*e180f76dSJan Kiszka clock-frequency = <400000>; 419*e180f76dSJan Kiszka}; 420*e180f76dSJan Kiszka 421*e180f76dSJan Kiszka&mcu_i2c0 { 422*e180f76dSJan Kiszka pinctrl-names = "default"; 423*e180f76dSJan Kiszka pinctrl-0 = <&mcu_i2c0_pins_default>; 424*e180f76dSJan Kiszka clock-frequency = <400000>; 425*e180f76dSJan Kiszka 426*e180f76dSJan Kiszka psu: regulator@60 { 427*e180f76dSJan Kiszka compatible = "ti,tps62363"; 428*e180f76dSJan Kiszka reg = <0x60>; 429*e180f76dSJan Kiszka regulator-name = "tps62363-vout"; 430*e180f76dSJan Kiszka regulator-min-microvolt = <500000>; 431*e180f76dSJan Kiszka regulator-max-microvolt = <1500000>; 432*e180f76dSJan Kiszka regulator-boot-on; 433*e180f76dSJan Kiszka ti,vsel0-state-high; 434*e180f76dSJan Kiszka ti,vsel1-state-high; 435*e180f76dSJan Kiszka ti,enable-vout-discharge; 436*e180f76dSJan Kiszka }; 437*e180f76dSJan Kiszka 438*e180f76dSJan Kiszka /* D4200 */ 439*e180f76dSJan Kiszka pcal9535_1: gpio@20 { 440*e180f76dSJan Kiszka compatible = "nxp,pcal9535"; 441*e180f76dSJan Kiszka reg = <0x20>; 442*e180f76dSJan Kiszka #gpio-cells = <2>; 443*e180f76dSJan Kiszka gpio-controller; 444*e180f76dSJan Kiszka gpio-line-names = 445*e180f76dSJan Kiszka "A0-pull", "A1-pull", "A2-pull", "A3-pull", "A4-pull", 446*e180f76dSJan Kiszka "A5-pull", "", "", 447*e180f76dSJan Kiszka "IO14-enable", "IO15-enable", "IO16-enable", 448*e180f76dSJan Kiszka "IO17-enable", "IO18-enable", "IO19-enable"; 449*e180f76dSJan Kiszka }; 450*e180f76dSJan Kiszka 451*e180f76dSJan Kiszka /* D4201 */ 452*e180f76dSJan Kiszka pcal9535_2: gpio@21 { 453*e180f76dSJan Kiszka compatible = "nxp,pcal9535"; 454*e180f76dSJan Kiszka reg = <0x21>; 455*e180f76dSJan Kiszka #gpio-cells = <2>; 456*e180f76dSJan Kiszka gpio-controller; 457*e180f76dSJan Kiszka gpio-line-names = 458*e180f76dSJan Kiszka "IO0-direction", "IO1-direction", "IO2-direction", 459*e180f76dSJan Kiszka "IO3-direction", "IO4-direction", "IO5-direction", 460*e180f76dSJan Kiszka "IO6-direction", "IO7-direction", 461*e180f76dSJan Kiszka "IO8-direction", "IO9-direction", "IO10-direction", 462*e180f76dSJan Kiszka "IO11-direction", "IO12-direction", "IO13-direction", 463*e180f76dSJan Kiszka "IO19-direction"; 464*e180f76dSJan Kiszka }; 465*e180f76dSJan Kiszka 466*e180f76dSJan Kiszka /* D4202 */ 467*e180f76dSJan Kiszka pcal9535_3: gpio@25 { 468*e180f76dSJan Kiszka compatible = "nxp,pcal9535"; 469*e180f76dSJan Kiszka reg = <0x25>; 470*e180f76dSJan Kiszka #gpio-cells = <2>; 471*e180f76dSJan Kiszka gpio-controller; 472*e180f76dSJan Kiszka gpio-line-names = 473*e180f76dSJan Kiszka "IO0-pull", "IO1-pull", "IO2-pull", "IO3-pull", 474*e180f76dSJan Kiszka "IO4-pull", "IO5-pull", "IO6-pull", "IO7-pull", 475*e180f76dSJan Kiszka "IO8-pull", "IO9-pull", "IO10-pull", "IO11-pull", 476*e180f76dSJan Kiszka "IO12-pull", "IO13-pull"; 477*e180f76dSJan Kiszka }; 478*e180f76dSJan Kiszka}; 479*e180f76dSJan Kiszka 480*e180f76dSJan Kiszka&main_i2c0 { 481*e180f76dSJan Kiszka pinctrl-names = "default"; 482*e180f76dSJan Kiszka pinctrl-0 = <&main_i2c0_pins_default>; 483*e180f76dSJan Kiszka clock-frequency = <400000>; 484*e180f76dSJan Kiszka 485*e180f76dSJan Kiszka rtc: rtc8564@51 { 486*e180f76dSJan Kiszka compatible = "nxp,pcf8563"; 487*e180f76dSJan Kiszka reg = <0x51>; 488*e180f76dSJan Kiszka }; 489*e180f76dSJan Kiszka 490*e180f76dSJan Kiszka eeprom: eeprom@54 { 491*e180f76dSJan Kiszka compatible = "atmel,24c08"; 492*e180f76dSJan Kiszka reg = <0x54>; 493*e180f76dSJan Kiszka pagesize = <16>; 494*e180f76dSJan Kiszka }; 495*e180f76dSJan Kiszka}; 496*e180f76dSJan Kiszka 497*e180f76dSJan Kiszka&main_i2c1 { 498*e180f76dSJan Kiszka pinctrl-names = "default"; 499*e180f76dSJan Kiszka pinctrl-0 = <&main_i2c1_pins_default>; 500*e180f76dSJan Kiszka clock-frequency = <400000>; 501*e180f76dSJan Kiszka}; 502*e180f76dSJan Kiszka 503*e180f76dSJan Kiszka&main_i2c2 { 504*e180f76dSJan Kiszka pinctrl-names = "default"; 505*e180f76dSJan Kiszka pinctrl-0 = <&main_i2c2_pins_default>; 506*e180f76dSJan Kiszka clock-frequency = <400000>; 507*e180f76dSJan Kiszka}; 508*e180f76dSJan Kiszka 509*e180f76dSJan Kiszka&main_i2c3 { 510*e180f76dSJan Kiszka pinctrl-names = "default"; 511*e180f76dSJan Kiszka pinctrl-0 = <&main_i2c3_pins_default>; 512*e180f76dSJan Kiszka clock-frequency = <400000>; 513*e180f76dSJan Kiszka 514*e180f76dSJan Kiszka #address-cells = <1>; 515*e180f76dSJan Kiszka #size-cells = <0>; 516*e180f76dSJan Kiszka 517*e180f76dSJan Kiszka edp-bridge@f { 518*e180f76dSJan Kiszka compatible = "toshiba,tc358767"; 519*e180f76dSJan Kiszka reg = <0x0f>; 520*e180f76dSJan Kiszka pinctrl-names = "default"; 521*e180f76dSJan Kiszka pinctrl-0 = <&dp_pins_default>; 522*e180f76dSJan Kiszka reset-gpios = <&main_gpio0 30 GPIO_ACTIVE_HIGH>; 523*e180f76dSJan Kiszka 524*e180f76dSJan Kiszka clock-names = "ref"; 525*e180f76dSJan Kiszka clocks = <&dp_refclk>; 526*e180f76dSJan Kiszka 527*e180f76dSJan Kiszka toshiba,hpd-pin = <0>; 528*e180f76dSJan Kiszka 529*e180f76dSJan Kiszka ports { 530*e180f76dSJan Kiszka #address-cells = <1>; 531*e180f76dSJan Kiszka #size-cells = <0>; 532*e180f76dSJan Kiszka 533*e180f76dSJan Kiszka port@1 { 534*e180f76dSJan Kiszka reg = <1>; 535*e180f76dSJan Kiszka 536*e180f76dSJan Kiszka bridge_in: endpoint { 537*e180f76dSJan Kiszka remote-endpoint = <&dpi_out>; 538*e180f76dSJan Kiszka }; 539*e180f76dSJan Kiszka }; 540*e180f76dSJan Kiszka }; 541*e180f76dSJan Kiszka }; 542*e180f76dSJan Kiszka}; 543*e180f76dSJan Kiszka 544*e180f76dSJan Kiszka&mcu_cpsw { 545*e180f76dSJan Kiszka status = "disabled"; 546*e180f76dSJan Kiszka}; 547*e180f76dSJan Kiszka 548*e180f76dSJan Kiszka&ecap0 { 549*e180f76dSJan Kiszka pinctrl-names = "default"; 550*e180f76dSJan Kiszka pinctrl-0 = <&ecap0_pins_default>; 551*e180f76dSJan Kiszka}; 552*e180f76dSJan Kiszka 553*e180f76dSJan Kiszka&sdhci1 { 554*e180f76dSJan Kiszka pinctrl-names = "default"; 555*e180f76dSJan Kiszka pinctrl-0 = <&main_mmc1_pins_default>; 556*e180f76dSJan Kiszka ti,driver-strength-ohm = <50>; 557*e180f76dSJan Kiszka disable-wp; 558*e180f76dSJan Kiszka}; 559*e180f76dSJan Kiszka 560*e180f76dSJan Kiszka&usb0 { 561*e180f76dSJan Kiszka pinctrl-names = "default"; 562*e180f76dSJan Kiszka pinctrl-0 = <&usb0_pins_default>; 563*e180f76dSJan Kiszka dr_mode = "host"; 564*e180f76dSJan Kiszka}; 565*e180f76dSJan Kiszka 566*e180f76dSJan Kiszka&usb1 { 567*e180f76dSJan Kiszka pinctrl-names = "default"; 568*e180f76dSJan Kiszka pinctrl-0 = <&usb1_pins_default>; 569*e180f76dSJan Kiszka dr_mode = "host"; 570*e180f76dSJan Kiszka}; 571*e180f76dSJan Kiszka 572*e180f76dSJan Kiszka&mcu_spi0 { 573*e180f76dSJan Kiszka pinctrl-names = "default"; 574*e180f76dSJan Kiszka pinctrl-0 = <&mcu_spi0_pins_default>; 575*e180f76dSJan Kiszka 576*e180f76dSJan Kiszka #address-cells = <1>; 577*e180f76dSJan Kiszka #size-cells= <0>; 578*e180f76dSJan Kiszka ti,pindir-d0-out-d1-in = <1>; 579*e180f76dSJan Kiszka}; 580*e180f76dSJan Kiszka 581*e180f76dSJan Kiszka&tscadc0 { 582*e180f76dSJan Kiszka status = "disabled"; 583*e180f76dSJan Kiszka}; 584*e180f76dSJan Kiszka 585*e180f76dSJan Kiszka&tscadc1 { 586*e180f76dSJan Kiszka adc { 587*e180f76dSJan Kiszka ti,adc-channels = <0 1 2 3 4 5>; 588*e180f76dSJan Kiszka }; 589*e180f76dSJan Kiszka}; 590*e180f76dSJan Kiszka 591*e180f76dSJan Kiszka&ospi0 { 592*e180f76dSJan Kiszka pinctrl-names = "default"; 593*e180f76dSJan Kiszka pinctrl-0 = <&mcu_fss0_ospi0_pins_default>; 594*e180f76dSJan Kiszka 595*e180f76dSJan Kiszka flash@0 { 596*e180f76dSJan Kiszka compatible = "jedec,spi-nor"; 597*e180f76dSJan Kiszka reg = <0x0>; 598*e180f76dSJan Kiszka spi-tx-bus-width = <1>; 599*e180f76dSJan Kiszka spi-rx-bus-width = <1>; 600*e180f76dSJan Kiszka spi-max-frequency = <50000000>; 601*e180f76dSJan Kiszka cdns,tshsl-ns = <60>; 602*e180f76dSJan Kiszka cdns,tsd2d-ns = <60>; 603*e180f76dSJan Kiszka cdns,tchsh-ns = <60>; 604*e180f76dSJan Kiszka cdns,tslch-ns = <60>; 605*e180f76dSJan Kiszka cdns,read-delay = <2>; 606*e180f76dSJan Kiszka #address-cells = <1>; 607*e180f76dSJan Kiszka #size-cells = <1>; 608*e180f76dSJan Kiszka }; 609*e180f76dSJan Kiszka}; 610*e180f76dSJan Kiszka 611*e180f76dSJan Kiszka&dss { 612*e180f76dSJan Kiszka pinctrl-names = "default"; 613*e180f76dSJan Kiszka pinctrl-0 = <&dss_vout1_pins_default>; 614*e180f76dSJan Kiszka 615*e180f76dSJan Kiszka assigned-clocks = <&k3_clks 67 2>; 616*e180f76dSJan Kiszka assigned-clock-parents = <&k3_clks 67 5>; 617*e180f76dSJan Kiszka}; 618*e180f76dSJan Kiszka 619*e180f76dSJan Kiszka&dss_ports { 620*e180f76dSJan Kiszka #address-cells = <1>; 621*e180f76dSJan Kiszka #size-cells = <0>; 622*e180f76dSJan Kiszka port@1 { 623*e180f76dSJan Kiszka reg = <1>; 624*e180f76dSJan Kiszka 625*e180f76dSJan Kiszka dpi_out: endpoint { 626*e180f76dSJan Kiszka remote-endpoint = <&bridge_in>; 627*e180f76dSJan Kiszka }; 628*e180f76dSJan Kiszka }; 629*e180f76dSJan Kiszka}; 630*e180f76dSJan Kiszka 631*e180f76dSJan Kiszka&serdes0 { 632*e180f76dSJan Kiszka status = "disabled"; 633*e180f76dSJan Kiszka}; 634*e180f76dSJan Kiszka 635*e180f76dSJan Kiszka&pcie0_rc { 636*e180f76dSJan Kiszka status = "disabled"; 637*e180f76dSJan Kiszka}; 638*e180f76dSJan Kiszka 639*e180f76dSJan Kiszka&pcie0_ep { 640*e180f76dSJan Kiszka status = "disabled"; 641*e180f76dSJan Kiszka}; 642*e180f76dSJan Kiszka 643*e180f76dSJan Kiszka&pcie1_rc { 644*e180f76dSJan Kiszka pinctrl-names = "default"; 645*e180f76dSJan Kiszka pinctrl-0 = <&minipcie_pins_default>; 646*e180f76dSJan Kiszka 647*e180f76dSJan Kiszka num-lanes = <1>; 648*e180f76dSJan Kiszka phys = <&serdes1 PHY_TYPE_PCIE 0>; 649*e180f76dSJan Kiszka phy-names = "pcie-phy0"; 650*e180f76dSJan Kiszka reset-gpios = <&wkup_gpio0 27 GPIO_ACTIVE_HIGH>; 651*e180f76dSJan Kiszka}; 652*e180f76dSJan Kiszka 653*e180f76dSJan Kiszka&pcie1_ep { 654*e180f76dSJan Kiszka status = "disabled"; 655*e180f76dSJan Kiszka}; 656