14717a36fSMatthias Schiffer// SPDX-License-Identifier: GPL-2.0-only 24717a36fSMatthias Schiffer/* 34717a36fSMatthias Schiffer * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/ 44717a36fSMatthias Schiffer * Copyright (c) 2022-2023 TQ-Systems GmbH <linux@ew.tq-group.com>, D-82229 Seefeld, Germany. 54717a36fSMatthias Schiffer */ 64717a36fSMatthias Schiffer 74717a36fSMatthias Schiffer/dts-v1/; 84717a36fSMatthias Schiffer 94717a36fSMatthias Schiffer#include <dt-bindings/gpio/gpio.h> 104717a36fSMatthias Schiffer#include <dt-bindings/input/input.h> 114717a36fSMatthias Schiffer#include <dt-bindings/net/ti-dp83867.h> 124717a36fSMatthias Schiffer#include <dt-bindings/phy/phy.h> 134717a36fSMatthias Schiffer#include <dt-bindings/pwm/pwm.h> 144717a36fSMatthias Schiffer#include "k3-serdes.h" 154717a36fSMatthias Schiffer 164717a36fSMatthias Schiffer#include "k3-am642-tqma64xxl.dtsi" 174717a36fSMatthias Schiffer 184717a36fSMatthias Schiffer/ { 194717a36fSMatthias Schiffer compatible = "tq,am642-tqma6442l-mbax4xxl", "tq,am642-tqma6442l", 204717a36fSMatthias Schiffer "ti,am642"; 214717a36fSMatthias Schiffer model = "TQ-Systems TQMa64xxL SoM on MBax4xxL carrier board"; 224717a36fSMatthias Schiffer 234717a36fSMatthias Schiffer aliases { 244717a36fSMatthias Schiffer ethernet0 = &cpsw_port1; 254717a36fSMatthias Schiffer i2c1 = &mcu_i2c0; 264717a36fSMatthias Schiffer mmc1 = &sdhci1; 274717a36fSMatthias Schiffer serial0 = &mcu_uart0; 284717a36fSMatthias Schiffer serial1 = &mcu_uart1; 294717a36fSMatthias Schiffer serial2 = &main_uart0; 304717a36fSMatthias Schiffer serial3 = &main_uart1; 314717a36fSMatthias Schiffer serial4 = &main_uart2; 324717a36fSMatthias Schiffer serial5 = &main_uart4; 334717a36fSMatthias Schiffer serial6 = &main_uart5; 344717a36fSMatthias Schiffer serial7 = &main_uart3; 354717a36fSMatthias Schiffer spi1 = &main_spi0; 364717a36fSMatthias Schiffer spi2 = &mcu_spi0; 374717a36fSMatthias Schiffer }; 384717a36fSMatthias Schiffer 394717a36fSMatthias Schiffer chosen { 404717a36fSMatthias Schiffer stdout-path = &main_uart0; 414717a36fSMatthias Schiffer }; 424717a36fSMatthias Schiffer 434717a36fSMatthias Schiffer gpio-keys { 444717a36fSMatthias Schiffer compatible = "gpio-keys"; 454717a36fSMatthias Schiffer pinctrl-names = "default"; 464717a36fSMatthias Schiffer pinctrl-0 = <&mcu_gpio_keys_pins>; 474717a36fSMatthias Schiffer 484717a36fSMatthias Schiffer user-button { 494717a36fSMatthias Schiffer label = "USER_BUTTON"; 504717a36fSMatthias Schiffer linux,code = <BTN_0>; 514717a36fSMatthias Schiffer gpios = <&mcu_gpio0 5 GPIO_ACTIVE_LOW>; 524717a36fSMatthias Schiffer }; 534717a36fSMatthias Schiffer }; 544717a36fSMatthias Schiffer 554717a36fSMatthias Schiffer gpio-leds { 564717a36fSMatthias Schiffer compatible = "gpio-leds"; 574717a36fSMatthias Schiffer pinctrl-names = "default"; 584717a36fSMatthias Schiffer pinctrl-0 = <&mcu_gpio_leds_pins>; 594717a36fSMatthias Schiffer 604717a36fSMatthias Schiffer led-0 { 614717a36fSMatthias Schiffer label = "led0"; 624717a36fSMatthias Schiffer gpios = <&mcu_gpio0 8 GPIO_ACTIVE_HIGH>; 634717a36fSMatthias Schiffer }; 644717a36fSMatthias Schiffer led-1 { 654717a36fSMatthias Schiffer label = "led1"; 664717a36fSMatthias Schiffer gpios = <&mcu_gpio0 9 GPIO_ACTIVE_HIGH>; 674717a36fSMatthias Schiffer }; 684717a36fSMatthias Schiffer }; 694717a36fSMatthias Schiffer 704717a36fSMatthias Schiffer fan0: pwm-fan { 714717a36fSMatthias Schiffer compatible = "pwm-fan"; 724717a36fSMatthias Schiffer pinctrl-names = "default"; 734717a36fSMatthias Schiffer pinctrl-0 = <&pwm_fan_pins>; 744717a36fSMatthias Schiffer fan-supply = <®_pwm_fan>; 754717a36fSMatthias Schiffer #cooling-cells = <2>; 764717a36fSMatthias Schiffer /* typical 25 kHz -> 40.000 nsec */ 774717a36fSMatthias Schiffer pwms = <&epwm5 0 40000 PWM_POLARITY_INVERTED>; 784717a36fSMatthias Schiffer cooling-levels = <0 32 64 128 196 240>; 794717a36fSMatthias Schiffer pulses-per-revolution = <2>; 804717a36fSMatthias Schiffer interrupt-parent = <&main_gpio1>; 814717a36fSMatthias Schiffer interrupts = <49 IRQ_TYPE_EDGE_FALLING>; 824717a36fSMatthias Schiffer status = "disabled"; 834717a36fSMatthias Schiffer }; 844717a36fSMatthias Schiffer 854717a36fSMatthias Schiffer wifi_pwrseq: pwrseq-wifi { 864717a36fSMatthias Schiffer compatible = "mmc-pwrseq-simple"; 874717a36fSMatthias Schiffer pinctrl-names = "default"; 884717a36fSMatthias Schiffer pinctrl-0 = <&main_mmc1_wifi_pwrseq_pins>; 894717a36fSMatthias Schiffer reset-gpios = <&main_gpio0 23 GPIO_ACTIVE_LOW>; 904717a36fSMatthias Schiffer }; 914717a36fSMatthias Schiffer 924717a36fSMatthias Schiffer reg_pwm_fan: regulator-pwm-fan { 934717a36fSMatthias Schiffer compatible = "regulator-fixed"; 944717a36fSMatthias Schiffer pinctrl-names = "default"; 954717a36fSMatthias Schiffer pinctrl-0 = <&pwm_fan_reg_pins>; 964717a36fSMatthias Schiffer regulator-name = "FAN_PWR"; 974717a36fSMatthias Schiffer regulator-min-microvolt = <12000000>; 984717a36fSMatthias Schiffer regulator-max-microvolt = <12000000>; 994717a36fSMatthias Schiffer gpio = <&main_gpio1 48 GPIO_ACTIVE_HIGH>; 1004717a36fSMatthias Schiffer enable-active-high; 1014717a36fSMatthias Schiffer }; 1024717a36fSMatthias Schiffer 1034717a36fSMatthias Schiffer reg_sd: regulator-sd { 1044717a36fSMatthias Schiffer compatible = "regulator-fixed"; 1054717a36fSMatthias Schiffer pinctrl-names = "default"; 1064717a36fSMatthias Schiffer pinctrl-0 = <&main_mmc1_reg_pins>; 1074717a36fSMatthias Schiffer regulator-name = "V_3V3_SD"; 1084717a36fSMatthias Schiffer regulator-min-microvolt = <3300000>; 1094717a36fSMatthias Schiffer regulator-max-microvolt = <3300000>; 1104717a36fSMatthias Schiffer gpio = <&main_gpio1 43 GPIO_ACTIVE_HIGH>; 1114717a36fSMatthias Schiffer enable-active-high; 1124717a36fSMatthias Schiffer }; 1134717a36fSMatthias Schiffer}; 1144717a36fSMatthias Schiffer 1154717a36fSMatthias Schiffer&cpsw3g { 1164717a36fSMatthias Schiffer pinctrl-names = "default"; 1174717a36fSMatthias Schiffer pinctrl-0 = <&cpsw_pins>; 1184717a36fSMatthias Schiffer}; 1194717a36fSMatthias Schiffer 1204717a36fSMatthias Schiffer&cpsw_port1 { 1214717a36fSMatthias Schiffer phy-mode = "rgmii-rxid"; 1224717a36fSMatthias Schiffer phy-handle = <&cpsw3g_phy0>; 1234717a36fSMatthias Schiffer}; 1244717a36fSMatthias Schiffer 1254717a36fSMatthias Schiffer&cpsw_port2 { 1264717a36fSMatthias Schiffer status = "disabled"; 1274717a36fSMatthias Schiffer}; 1284717a36fSMatthias Schiffer 1294717a36fSMatthias Schiffer&cpsw3g_mdio { 1304717a36fSMatthias Schiffer pinctrl-names = "default"; 1314717a36fSMatthias Schiffer pinctrl-0 = <&cpsw_mdio_pins>; 1324717a36fSMatthias Schiffer status = "okay"; 1334717a36fSMatthias Schiffer 1344717a36fSMatthias Schiffer cpsw3g_phy0: ethernet-phy@0 { 1354717a36fSMatthias Schiffer compatible = "ethernet-phy-ieee802.3-c22"; 1364717a36fSMatthias Schiffer reg = <0>; 1374717a36fSMatthias Schiffer reset-gpios = <&main_gpio0 44 GPIO_ACTIVE_LOW>; 1384717a36fSMatthias Schiffer reset-assert-us = <1000>; 1394717a36fSMatthias Schiffer reset-deassert-us = <1000>; 1404717a36fSMatthias Schiffer ti,rx-fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 1414717a36fSMatthias Schiffer ti,tx-fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 1424717a36fSMatthias Schiffer ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 1434717a36fSMatthias Schiffer ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 1444717a36fSMatthias Schiffer }; 1454717a36fSMatthias Schiffer}; 1464717a36fSMatthias Schiffer 1474717a36fSMatthias Schiffer&epwm5 { 1484717a36fSMatthias Schiffer pinctrl-names = "default"; 1494717a36fSMatthias Schiffer pinctrl-0 = <&epwm5_pins>; 1504717a36fSMatthias Schiffer status = "okay"; 1514717a36fSMatthias Schiffer}; 1524717a36fSMatthias Schiffer 1534717a36fSMatthias Schiffer&main_gpio0 { 1544717a36fSMatthias Schiffer pinctrl-names = "default"; 1554717a36fSMatthias Schiffer pinctrl-0 = <&main_gpio0_digital_pins>, 1564717a36fSMatthias Schiffer <&main_gpio0_hog_pins>; 1574717a36fSMatthias Schiffer gpio-line-names = 1584717a36fSMatthias Schiffer "", "", "", "", /* 0-3 */ 1594717a36fSMatthias Schiffer "", "", "", "", /* 4-7 */ 1604717a36fSMatthias Schiffer "", "", "", "", /* 8-11 */ 1614717a36fSMatthias Schiffer "", "", "", "", /* 12-15 */ 1624717a36fSMatthias Schiffer "", "", "", "", /* 16-19 */ 1634717a36fSMatthias Schiffer "", "", "", "", /* 20-23 */ 1644717a36fSMatthias Schiffer "", "", "EN_DIG_OUT_1", "STATUS_OUT_1", /* 24-27 */ 1654717a36fSMatthias Schiffer "EN_DIG_OUT_2", "STATUS_OUT_2", "EN_SIG_OUT_3", "", /* 28-31 */ 1664717a36fSMatthias Schiffer "", "", "STATUS_OUT_3", "EN_DIG_OUT_4", /* 32-35 */ 1674717a36fSMatthias Schiffer "", "", "STATUS_OUT_4", "DIG_IN_1", /* 36-39 */ 1684717a36fSMatthias Schiffer "DIG_IN_2", "DIG_IN_3", "DIG_IN_4"; /* 40- */ 1694717a36fSMatthias Schiffer}; 1704717a36fSMatthias Schiffer 1714717a36fSMatthias Schiffer&main_gpio1 { 1724717a36fSMatthias Schiffer pinctrl-names = "default"; 1734717a36fSMatthias Schiffer pinctrl-0 = <&main_gpio1_hog_pins>; 1744717a36fSMatthias Schiffer gpio-line-names = 1754717a36fSMatthias Schiffer "", "", "", "", /* 0-3 */ 1764717a36fSMatthias Schiffer "", "", "", "", /* 4-7 */ 1774717a36fSMatthias Schiffer "", "", "", "", /* 8-11 */ 1784717a36fSMatthias Schiffer "", "", "", "", /* 12-15 */ 1794717a36fSMatthias Schiffer "", "", "", "", /* 16-19 */ 1804717a36fSMatthias Schiffer "", "", "", "", /* 20-23 */ 1814717a36fSMatthias Schiffer "", "", "", "", /* 24-27 */ 1824717a36fSMatthias Schiffer "", "", "", "", /* 28-31 */ 1834717a36fSMatthias Schiffer "", "", "", "", /* 32-35 */ 1844717a36fSMatthias Schiffer "", "", "", "", /* 36-39 */ 1854717a36fSMatthias Schiffer "", "", "", "", /* 40-43 */ 1864717a36fSMatthias Schiffer "", "", "", "", /* 44-47 */ 1874717a36fSMatthias Schiffer "", "", "", "", /* 48-51 */ 1884717a36fSMatthias Schiffer "", "", "", "ADC_SYNC", /* 52-55 */ 1894717a36fSMatthias Schiffer "", "", "ADC_RST#", "ADC_DATA_RDY", /* 56-59 */ 1904717a36fSMatthias Schiffer "", "", "", "", /* 60-63 */ 1914717a36fSMatthias Schiffer "", "", "", "ADC_INT#", /* 64-67 */ 1924717a36fSMatthias Schiffer "BG95_PWRKEY", "BG95_RESET"; /* 68- */ 1934717a36fSMatthias Schiffer 1944717a36fSMatthias Schiffer line50-hog { 1954717a36fSMatthias Schiffer /* See also usb0 */ 1964717a36fSMatthias Schiffer gpio-hog; 1974717a36fSMatthias Schiffer gpios = <50 0>; 1984717a36fSMatthias Schiffer line-name = "USB0_VBUS_OC#"; 1994717a36fSMatthias Schiffer input; 2004717a36fSMatthias Schiffer }; 2014717a36fSMatthias Schiffer 2024717a36fSMatthias Schiffer line54-hog { 2034717a36fSMatthias Schiffer gpio-hog; 2044717a36fSMatthias Schiffer gpios = <54 0>; 2054717a36fSMatthias Schiffer line-name = "PRG0_MDIO_SWITCH"; 2064717a36fSMatthias Schiffer output-low; 2074717a36fSMatthias Schiffer }; 2084717a36fSMatthias Schiffer 2094717a36fSMatthias Schiffer line70-hog { 2104717a36fSMatthias Schiffer gpio-hog; 2114717a36fSMatthias Schiffer gpios = <70 0>; 2124717a36fSMatthias Schiffer line-name = "PHY_INT#"; 2134717a36fSMatthias Schiffer input; 2144717a36fSMatthias Schiffer }; 2154717a36fSMatthias Schiffer}; 2164717a36fSMatthias Schiffer 2174717a36fSMatthias Schiffer&main_mcan0 { 2184717a36fSMatthias Schiffer pinctrl-names = "default"; 2194717a36fSMatthias Schiffer pinctrl-0 = <&main_mcan0_pins>; 2204717a36fSMatthias Schiffer status = "okay"; 2214717a36fSMatthias Schiffer}; 2224717a36fSMatthias Schiffer 2234717a36fSMatthias Schiffer&main_mcan1 { 2244717a36fSMatthias Schiffer pinctrl-names = "default"; 2254717a36fSMatthias Schiffer pinctrl-0 = <&main_mcan1_pins>; 2264717a36fSMatthias Schiffer status = "okay"; 2274717a36fSMatthias Schiffer}; 2284717a36fSMatthias Schiffer 2294717a36fSMatthias Schiffer&main_spi0 { 2304717a36fSMatthias Schiffer pinctrl-names = "default"; 2314717a36fSMatthias Schiffer pinctrl-0 = <&main_spi0_pins>; 2324717a36fSMatthias Schiffer ti,pindir-d0-out-d1-in; 2334717a36fSMatthias Schiffer status = "okay"; 2344717a36fSMatthias Schiffer 2354717a36fSMatthias Schiffer /* adc@0: NXP NAFE13388 */ 2364717a36fSMatthias Schiffer}; 2374717a36fSMatthias Schiffer 2384717a36fSMatthias Schiffer/* UART/USB adapter port 1 */ 2394717a36fSMatthias Schiffer&main_uart0 { 2404717a36fSMatthias Schiffer pinctrl-names = "default"; 2414717a36fSMatthias Schiffer pinctrl-0 = <&main_uart0_pins>; 2424717a36fSMatthias Schiffer status = "okay"; 2434717a36fSMatthias Schiffer}; 2444717a36fSMatthias Schiffer 2454717a36fSMatthias Schiffer/* 2464717a36fSMatthias Schiffer * IOT Module - GNSS UART 2474717a36fSMatthias Schiffer * 2484717a36fSMatthias Schiffer * Note: We expect usage of a SYSFW that does not reserve UART1 for debug traces 2494717a36fSMatthias Schiffer */ 2504717a36fSMatthias Schiffer&main_uart1 { 2514717a36fSMatthias Schiffer pinctrl-names = "default"; 2524717a36fSMatthias Schiffer pinctrl-0 = <&main_uart1_pins>; 2534717a36fSMatthias Schiffer status = "okay"; 2544717a36fSMatthias Schiffer}; 2554717a36fSMatthias Schiffer 2564717a36fSMatthias Schiffer/* RS485 port */ 2574717a36fSMatthias Schiffer&main_uart2 { 2584717a36fSMatthias Schiffer pinctrl-names = "default"; 2594717a36fSMatthias Schiffer pinctrl-0 = <&main_uart2_pins>; 2604717a36fSMatthias Schiffer linux,rs485-enabled-at-boot-time; 2614717a36fSMatthias Schiffer rs485-rts-active-low; 2624717a36fSMatthias Schiffer status = "okay"; 2634717a36fSMatthias Schiffer}; 2644717a36fSMatthias Schiffer 2654717a36fSMatthias Schiffer/* Bluetooth module */ 2664717a36fSMatthias Schiffer&main_uart3 { 2674717a36fSMatthias Schiffer pinctrl-names = "default"; 2684717a36fSMatthias Schiffer pinctrl-0 = <&main_uart3_pins>; 2694717a36fSMatthias Schiffer /* 2704717a36fSMatthias Schiffer * Left disabled for now, until a way to deal with drivers and firmware 2714717a36fSMatthias Schiffer * for the combined WLAN/BT module has been figured out 2724717a36fSMatthias Schiffer */ 2734717a36fSMatthias Schiffer}; 2744717a36fSMatthias Schiffer 2754717a36fSMatthias Schiffer/* IOT module - Main UART */ 2764717a36fSMatthias Schiffer&main_uart4 { 2774717a36fSMatthias Schiffer pinctrl-names = "default"; 2784717a36fSMatthias Schiffer pinctrl-0 = <&main_uart4_pins>; 2794717a36fSMatthias Schiffer status = "okay"; 2804717a36fSMatthias Schiffer}; 2814717a36fSMatthias Schiffer 2824717a36fSMatthias Schiffer/* IOT module - DBG UART */ 2834717a36fSMatthias Schiffer&main_uart5 { 2844717a36fSMatthias Schiffer pinctrl-names = "default"; 2854717a36fSMatthias Schiffer pinctrl-0 = <&main_uart5_pins>; 2864717a36fSMatthias Schiffer status = "okay"; 2874717a36fSMatthias Schiffer}; 2884717a36fSMatthias Schiffer 2894717a36fSMatthias Schiffer&main0_thermal { 2904717a36fSMatthias Schiffer trips { 2914717a36fSMatthias Schiffer main0_active0: trip-active0 { 2924717a36fSMatthias Schiffer temperature = <40000>; 2934717a36fSMatthias Schiffer hysteresis = <5000>; 2944717a36fSMatthias Schiffer type = "active"; 2954717a36fSMatthias Schiffer }; 2964717a36fSMatthias Schiffer 2974717a36fSMatthias Schiffer main0_active1: trip-active1 { 2984717a36fSMatthias Schiffer temperature = <48000>; 2994717a36fSMatthias Schiffer hysteresis = <3000>; 3004717a36fSMatthias Schiffer type = "active"; 3014717a36fSMatthias Schiffer }; 3024717a36fSMatthias Schiffer 3034717a36fSMatthias Schiffer main0_active2: trip-active2 { 3044717a36fSMatthias Schiffer temperature = <60000>; 3054717a36fSMatthias Schiffer hysteresis = <10000>; 3064717a36fSMatthias Schiffer type = "active"; 3074717a36fSMatthias Schiffer }; 3084717a36fSMatthias Schiffer }; 3094717a36fSMatthias Schiffer 3104717a36fSMatthias Schiffer cooling-maps { 3114717a36fSMatthias Schiffer map1 { 3124717a36fSMatthias Schiffer trip = <&main0_active0>; 3134717a36fSMatthias Schiffer cooling-device = <&fan0 1 1>; 3144717a36fSMatthias Schiffer }; 3154717a36fSMatthias Schiffer 3164717a36fSMatthias Schiffer map2 { 3174717a36fSMatthias Schiffer trip = <&main0_active1>; 3184717a36fSMatthias Schiffer cooling-device = <&fan0 2 2>; 3194717a36fSMatthias Schiffer }; 3204717a36fSMatthias Schiffer 3214717a36fSMatthias Schiffer map3 { 3224717a36fSMatthias Schiffer trip = <&main0_active2>; 3234717a36fSMatthias Schiffer cooling-device = <&fan0 3 3>; 3244717a36fSMatthias Schiffer }; 3254717a36fSMatthias Schiffer }; 3264717a36fSMatthias Schiffer}; 3274717a36fSMatthias Schiffer 3284717a36fSMatthias Schiffer&main1_thermal { 3294717a36fSMatthias Schiffer trips { 3304717a36fSMatthias Schiffer main1_active0: trip-active0 { 3314717a36fSMatthias Schiffer temperature = <40000>; 3324717a36fSMatthias Schiffer hysteresis = <5000>; 3334717a36fSMatthias Schiffer type = "active"; 3344717a36fSMatthias Schiffer }; 3354717a36fSMatthias Schiffer 3364717a36fSMatthias Schiffer main1_active1: trip-active1 { 3374717a36fSMatthias Schiffer temperature = <48000>; 3384717a36fSMatthias Schiffer hysteresis = <3000>; 3394717a36fSMatthias Schiffer type = "active"; 3404717a36fSMatthias Schiffer }; 3414717a36fSMatthias Schiffer 3424717a36fSMatthias Schiffer main1_active2: trip-active2 { 3434717a36fSMatthias Schiffer temperature = <60000>; 3444717a36fSMatthias Schiffer hysteresis = <10000>; 3454717a36fSMatthias Schiffer type = "active"; 3464717a36fSMatthias Schiffer }; 3474717a36fSMatthias Schiffer }; 3484717a36fSMatthias Schiffer 3494717a36fSMatthias Schiffer cooling-maps { 3504717a36fSMatthias Schiffer map1 { 3514717a36fSMatthias Schiffer trip = <&main1_active0>; 3524717a36fSMatthias Schiffer cooling-device = <&fan0 1 1>; 3534717a36fSMatthias Schiffer }; 3544717a36fSMatthias Schiffer 3554717a36fSMatthias Schiffer map2 { 3564717a36fSMatthias Schiffer trip = <&main1_active1>; 3574717a36fSMatthias Schiffer cooling-device = <&fan0 2 2>; 3584717a36fSMatthias Schiffer }; 3594717a36fSMatthias Schiffer 3604717a36fSMatthias Schiffer map3 { 3614717a36fSMatthias Schiffer trip = <&main1_active2>; 3624717a36fSMatthias Schiffer cooling-device = <&fan0 3 3>; 3634717a36fSMatthias Schiffer }; 3644717a36fSMatthias Schiffer }; 3654717a36fSMatthias Schiffer}; 3664717a36fSMatthias Schiffer 3674717a36fSMatthias Schiffer&mcu_gpio0 { 3684717a36fSMatthias Schiffer pinctrl-names = "default"; 3694717a36fSMatthias Schiffer pinctrl-0 = <&mcu_gpio0_pins>; 3704717a36fSMatthias Schiffer}; 3714717a36fSMatthias Schiffer 3724717a36fSMatthias Schiffer&mcu_i2c0 { 3734717a36fSMatthias Schiffer pinctrl-names = "default"; 3744717a36fSMatthias Schiffer pinctrl-0 = <&mcu_i2c0_pins>; 3754717a36fSMatthias Schiffer /* Left disabled: not functional without external pullup */ 3764717a36fSMatthias Schiffer}; 3774717a36fSMatthias Schiffer 3784717a36fSMatthias Schiffer&mcu_spi0 { 3794717a36fSMatthias Schiffer pinctrl-names = "default"; 3804717a36fSMatthias Schiffer pinctrl-0 = <&mcu_spi0_pins>; 3814717a36fSMatthias Schiffer ti,pindir-d0-out-d1-in; 3824717a36fSMatthias Schiffer status = "okay"; 3834717a36fSMatthias Schiffer}; 3844717a36fSMatthias Schiffer 3854717a36fSMatthias Schiffer/* UART/USB adapter port 2 */ 3864717a36fSMatthias Schiffer&mcu_uart0 { 3874717a36fSMatthias Schiffer pinctrl-names = "default"; 3884717a36fSMatthias Schiffer pinctrl-0 = <&mcu_uart0_pins>; 3894717a36fSMatthias Schiffer status = "okay"; 3904717a36fSMatthias Schiffer}; 3914717a36fSMatthias Schiffer 3924717a36fSMatthias Schiffer/* Pin header */ 3934717a36fSMatthias Schiffer&mcu_uart1 { 3944717a36fSMatthias Schiffer pinctrl-names = "default"; 3954717a36fSMatthias Schiffer pinctrl-0 = <&mcu_uart1_pins>; 3964717a36fSMatthias Schiffer status = "okay"; 3974717a36fSMatthias Schiffer}; 3984717a36fSMatthias Schiffer 3994717a36fSMatthias Schiffer&serdes_ln_ctrl { 4004717a36fSMatthias Schiffer idle-states = <AM64_SERDES0_LANE0_USB>; 4014717a36fSMatthias Schiffer}; 4024717a36fSMatthias Schiffer 4034717a36fSMatthias Schiffer&serdes0 { 4044717a36fSMatthias Schiffer serdes0_usb_link: phy@0 { 4054717a36fSMatthias Schiffer reg = <0>; 4064717a36fSMatthias Schiffer #phy-cells = <0>; 4074717a36fSMatthias Schiffer resets = <&serdes_wiz0 1>; 4084717a36fSMatthias Schiffer cdns,num-lanes = <1>; 4094717a36fSMatthias Schiffer cdns,phy-type = <PHY_TYPE_USB3>; 4104717a36fSMatthias Schiffer }; 4114717a36fSMatthias Schiffer}; 4124717a36fSMatthias Schiffer 4134717a36fSMatthias Schiffer&sdhci1 { 4144717a36fSMatthias Schiffer pinctrl-names = "default"; 4154717a36fSMatthias Schiffer pinctrl-0 = <&main_mmc1_pins>; 4164717a36fSMatthias Schiffer bus-width = <4>; 4174717a36fSMatthias Schiffer cd-gpios = <&main_gpio1 77 GPIO_ACTIVE_LOW>; 4184717a36fSMatthias Schiffer disable-wp; 4194717a36fSMatthias Schiffer no-mmc; 4204717a36fSMatthias Schiffer ti,driver-strength-ohm = <50>; 4214717a36fSMatthias Schiffer ti,fails-without-test-cd; 4224717a36fSMatthias Schiffer /* Enabled by overlay */ 4234717a36fSMatthias Schiffer status = "disabled"; 4244717a36fSMatthias Schiffer}; 4254717a36fSMatthias Schiffer 4264717a36fSMatthias Schiffer&tscadc0 { 427*bcd8a3f2SAndrew Davis status = "okay"; 4284717a36fSMatthias Schiffer adc { 4294717a36fSMatthias Schiffer ti,adc-channels = <0 1 2 3 4 5 6 7>; 4304717a36fSMatthias Schiffer }; 4314717a36fSMatthias Schiffer}; 4324717a36fSMatthias Schiffer 4334717a36fSMatthias Schiffer&usb0 { 4344717a36fSMatthias Schiffer /* 4354717a36fSMatthias Schiffer * The CDNS USB driver currently doesn't support overcurrent GPIOs, 4364717a36fSMatthias Schiffer * so there is no overcurrent detection. The OC pin is configured 4374717a36fSMatthias Schiffer * as a GPIO hog instead. 4384717a36fSMatthias Schiffer */ 4394717a36fSMatthias Schiffer pinctrl-names = "default"; 4404717a36fSMatthias Schiffer pinctrl-0 = <&main_usb0_pins>; 4414717a36fSMatthias Schiffer dr_mode = "otg"; 4424717a36fSMatthias Schiffer maximum-speed = "super-speed"; 4434717a36fSMatthias Schiffer phys = <&serdes0_usb_link>; 4444717a36fSMatthias Schiffer phy-names = "cdns3,usb3-phy"; 4454717a36fSMatthias Schiffer}; 4464717a36fSMatthias Schiffer 4474717a36fSMatthias Schiffer&usbss0 { 4484717a36fSMatthias Schiffer ti,vbus-divider; 4494717a36fSMatthias Schiffer}; 4504717a36fSMatthias Schiffer 4514717a36fSMatthias Schiffer&main_pmx0 { 4524717a36fSMatthias Schiffer cpsw_pins: cpsw-pins { 4534717a36fSMatthias Schiffer pinctrl-single,pins = < 4544717a36fSMatthias Schiffer /* (W5) PRG0_PRU1_GPO7.RGMII1_RD0 */ 4554717a36fSMatthias Schiffer AM64X_IOPAD(0x01cc, PIN_INPUT, 4) 4564717a36fSMatthias Schiffer /* (Y5) PRG0_PRU1_GPO9.RGMII1_RD1 */ 4574717a36fSMatthias Schiffer AM64X_IOPAD(0x01d4, PIN_INPUT, 4) 4584717a36fSMatthias Schiffer /* (V6) PRG0_PRU1_GPO10.RGMII1_RD2 */ 4594717a36fSMatthias Schiffer AM64X_IOPAD(0x01d8, PIN_INPUT, 4) 4604717a36fSMatthias Schiffer /* (V5) PRG0_PRU1_GPO17.RGMII1_RD3 */ 4614717a36fSMatthias Schiffer AM64X_IOPAD(0x01f4, PIN_INPUT, 4) 4624717a36fSMatthias Schiffer /* (AA5) PRG0_PRU0_GPO10.RGMII1_RXC */ 4634717a36fSMatthias Schiffer AM64X_IOPAD(0x0188, PIN_INPUT, 4) 4644717a36fSMatthias Schiffer /* (W6) PRG0_PRU0_GPO9.RGMII1_RX_CTL */ 4654717a36fSMatthias Schiffer AM64X_IOPAD(0x0184, PIN_INPUT, 4) 4664717a36fSMatthias Schiffer /* (V15) PRG1_PRU1_GPO7.RGMII1_TD0 */ 4674717a36fSMatthias Schiffer AM64X_IOPAD(0x0124, PIN_OUTPUT, 4) 4684717a36fSMatthias Schiffer /* (V14) PRG1_PRU1_GPO9.RGMII1_TD1 */ 4694717a36fSMatthias Schiffer AM64X_IOPAD(0x012c, PIN_OUTPUT, 4) 4704717a36fSMatthias Schiffer /* (W14) PRG1_PRU1_GPO10.RGMII1_TD2 */ 4714717a36fSMatthias Schiffer AM64X_IOPAD(0x0130, PIN_OUTPUT, 4) 4724717a36fSMatthias Schiffer /* (AA14) PRG1_PRU1_GPO17.RGMII1_TD3 */ 4734717a36fSMatthias Schiffer AM64X_IOPAD(0x014c, PIN_OUTPUT, 4) 4744717a36fSMatthias Schiffer /* (U14) PRG1_PRU0_GPO10.RGMII1_TXC */ 4754717a36fSMatthias Schiffer AM64X_IOPAD(0x00e0, PIN_OUTPUT, 4) 4764717a36fSMatthias Schiffer /* (U15) PRG1_PRU0_GPO9.RGMII1_TX_CTL */ 4774717a36fSMatthias Schiffer AM64X_IOPAD(0x00dc, PIN_OUTPUT, 4) 4784717a36fSMatthias Schiffer >; 4794717a36fSMatthias Schiffer }; 4804717a36fSMatthias Schiffer 4814717a36fSMatthias Schiffer cpsw_mdio_pins: cpsw-mdio-pins { 4824717a36fSMatthias Schiffer pinctrl-single,pins = < 4834717a36fSMatthias Schiffer /* (R21) GPMC0_CSn3.GPIO0_44 - RESET_RGMII1# */ 4844717a36fSMatthias Schiffer AM64X_IOPAD(0x00b4, PIN_OUTPUT, 7) 4854717a36fSMatthias Schiffer 4864717a36fSMatthias Schiffer /* (R2) PRG0_PRU1_GPO19.MDIO0_MDC */ 4874717a36fSMatthias Schiffer AM64X_IOPAD(0x01fc, PIN_OUTPUT, 4) 4884717a36fSMatthias Schiffer /* (P5) PRG0_PRU1_GPO18.MDIO0_MDIO */ 4894717a36fSMatthias Schiffer AM64X_IOPAD(0x01f8, PIN_INPUT, 4) 4904717a36fSMatthias Schiffer >; 4914717a36fSMatthias Schiffer }; 4924717a36fSMatthias Schiffer 4934717a36fSMatthias Schiffer epwm5_pins: epwm5-pins { 4944717a36fSMatthias Schiffer pinctrl-single,pins = < 4954717a36fSMatthias Schiffer /* (W19) GPMC0_WAIT0.EHRPWM5_B */ 4964717a36fSMatthias Schiffer AM64X_IOPAD(0x0098, PIN_OUTPUT, 3) 4974717a36fSMatthias Schiffer >; 4984717a36fSMatthias Schiffer }; 4994717a36fSMatthias Schiffer 5004717a36fSMatthias Schiffer /* Digital IOs */ 5014717a36fSMatthias Schiffer main_gpio0_digital_pins: main-gpio0-digital-pins { 5024717a36fSMatthias Schiffer pinctrl-single,pins = < 5034717a36fSMatthias Schiffer /* (W20) GPMC0_AD11.GPIO0_26 - EN_DIG_OUT_1 */ 5044717a36fSMatthias Schiffer AM64X_IOPAD(0x0068, PIN_OUTPUT, 7) 5054717a36fSMatthias Schiffer /* (W21) GPMC0_AD12.GPIO0_27 - STATUS_OUT_1 */ 5064717a36fSMatthias Schiffer AM64X_IOPAD(0x006c, PIN_INPUT, 7) 5074717a36fSMatthias Schiffer /* (V18) GPMC0_AD13.GPIO0_28 - EN_DIG_OUT_2 */ 5084717a36fSMatthias Schiffer AM64X_IOPAD(0x0070, PIN_OUTPUT, 7) 5094717a36fSMatthias Schiffer /* (Y21) GPMC0_AD14.GPIO0_29 - STATUS_OUT_2 */ 5104717a36fSMatthias Schiffer AM64X_IOPAD(0x0074, PIN_INPUT, 7) 5114717a36fSMatthias Schiffer /* (Y20) GPMC0_AD15.GPIO0_30 - EN_DIG_OUT_3 */ 5124717a36fSMatthias Schiffer AM64X_IOPAD(0x0078, PIN_OUTPUT, 7) 5134717a36fSMatthias Schiffer /* (T21) GPMC0_WEn.GPIO0_34 - STATUS_OUT_3 */ 5144717a36fSMatthias Schiffer AM64X_IOPAD(0x008c, PIN_INPUT, 7) 5154717a36fSMatthias Schiffer /* (P17) GPMC0_BE0n_CLE.GPIO0_35 - EN_DIG_OUT_4 */ 5164717a36fSMatthias Schiffer AM64X_IOPAD(0x0090, PIN_OUTPUT, 7) 5174717a36fSMatthias Schiffer /* (Y18) GPMC0_WAIT1.GPIO0_38 - STATUS_OUT_4 */ 5184717a36fSMatthias Schiffer AM64X_IOPAD(0x009c, PIN_INPUT, 7) 5194717a36fSMatthias Schiffer /* (N16) GPMC0_WPn.GPIO0_39 - DIG_IN_1 */ 5204717a36fSMatthias Schiffer AM64X_IOPAD(0x00a0, PIN_INPUT, 7) 5214717a36fSMatthias Schiffer /* (N17) GPMC0_DIR.GPIO0_40 - DIG_IN_2 */ 5224717a36fSMatthias Schiffer AM64X_IOPAD(0x00a4, PIN_INPUT, 7) 5234717a36fSMatthias Schiffer /* (R19) GPMC0_CSn0.GPIO0_41 - DIG_IN_3 */ 5244717a36fSMatthias Schiffer AM64X_IOPAD(0x00a8, PIN_INPUT, 7) 5254717a36fSMatthias Schiffer /* (R20) GPMC0_CSn1.GPIO0_42 - DIG_IN_4 */ 5264717a36fSMatthias Schiffer AM64X_IOPAD(0x00ac, PIN_INPUT, 7) 5274717a36fSMatthias Schiffer >; 5284717a36fSMatthias Schiffer }; 5294717a36fSMatthias Schiffer 5304717a36fSMatthias Schiffer main_gpio0_hog_pins: main-gpio0-hog-pins { 5314717a36fSMatthias Schiffer pinctrl-single,pins = < 5324717a36fSMatthias Schiffer /* (P19) GPMC0_CSn2.GPIO0_43 - MMC1_CTRL */ 5334717a36fSMatthias Schiffer AM64X_IOPAD(0x00b0, PIN_OUTPUT, 7) 5344717a36fSMatthias Schiffer >; 5354717a36fSMatthias Schiffer }; 5364717a36fSMatthias Schiffer 5374717a36fSMatthias Schiffer main_gpio1_hog_pins: main-gpio1-hog-pins { 5384717a36fSMatthias Schiffer pinctrl-single,pins = < 5394717a36fSMatthias Schiffer /* (B15) SPI1_D0.GPIO1_50 - USB0_VBUS_OC# */ 5404717a36fSMatthias Schiffer AM64X_IOPAD(0x0228, PIN_INPUT, 7) 5414717a36fSMatthias Schiffer /* (B16) UART0_CTSn.GPIO1_54 - PRG0_MDIO_SWITCH */ 5424717a36fSMatthias Schiffer AM64X_IOPAD(0x0238, PIN_OUTPUT, 7) 5434717a36fSMatthias Schiffer /* (C19) EXTINTn.GPIO1_70 - PHY_INT# */ 5444717a36fSMatthias Schiffer AM64X_IOPAD(0x0278, PIN_INPUT, 7) 5454717a36fSMatthias Schiffer >; 5464717a36fSMatthias Schiffer }; 5474717a36fSMatthias Schiffer 5484717a36fSMatthias Schiffer main_mcan0_pins: main-mcan0-pins { 5494717a36fSMatthias Schiffer pinctrl-single,pins = < 5504717a36fSMatthias Schiffer /* (B17) MCAN0_RX */ 5514717a36fSMatthias Schiffer AM64X_IOPAD(0x0254, PIN_INPUT, 0) 5524717a36fSMatthias Schiffer /* (A17) MCAN0_TX */ 5534717a36fSMatthias Schiffer AM64X_IOPAD(0x0250, PIN_OUTPUT, 0) 5544717a36fSMatthias Schiffer >; 5554717a36fSMatthias Schiffer }; 5564717a36fSMatthias Schiffer 5574717a36fSMatthias Schiffer main_mcan1_pins: main-mcan1-pins { 5584717a36fSMatthias Schiffer pinctrl-single,pins = < 5594717a36fSMatthias Schiffer /* (D17) MCAN1_RX */ 5604717a36fSMatthias Schiffer AM64X_IOPAD(0x025c, PIN_INPUT, 0) 5614717a36fSMatthias Schiffer /* (C17) MCAN1_TX */ 5624717a36fSMatthias Schiffer AM64X_IOPAD(0x0258, PIN_OUTPUT, 0) 5634717a36fSMatthias Schiffer >; 5644717a36fSMatthias Schiffer }; 5654717a36fSMatthias Schiffer 5664717a36fSMatthias Schiffer main_mmc1_pins: main-mmc1-pins { 5674717a36fSMatthias Schiffer pinctrl-single,pins = < 5684717a36fSMatthias Schiffer /* (J19) MMC1_CMD */ 5694717a36fSMatthias Schiffer AM64X_IOPAD(0x0294, PIN_INPUT, 0) 5704717a36fSMatthias Schiffer /* (L20) MMC1_CLK */ 5714717a36fSMatthias Schiffer AM64X_IOPAD(0x028c, PIN_INPUT, 0) 5724717a36fSMatthias Schiffer /* (K21) MMC1_DAT0 */ 5734717a36fSMatthias Schiffer AM64X_IOPAD(0x0288, PIN_INPUT, 0) 5744717a36fSMatthias Schiffer /* (L21) MMC1_DAT1 */ 5754717a36fSMatthias Schiffer AM64X_IOPAD(0x0284, PIN_INPUT, 0) 5764717a36fSMatthias Schiffer /* (K19) MMC1_DAT2 */ 5774717a36fSMatthias Schiffer AM64X_IOPAD(0x0280, PIN_INPUT, 0) 5784717a36fSMatthias Schiffer /* (K18) MMC1_DAT3 */ 5794717a36fSMatthias Schiffer AM64X_IOPAD(0x027c, PIN_INPUT, 0) 5804717a36fSMatthias Schiffer /* (D19) MMC1_SDCD.GPIO1_77 */ 5814717a36fSMatthias Schiffer AM64X_IOPAD(0x0298, PIN_INPUT, 7) 5824717a36fSMatthias Schiffer /* (#N/A) MMC1_CLKLB */ 5834717a36fSMatthias Schiffer AM64X_IOPAD(0x0290, PIN_INPUT, 0) 5844717a36fSMatthias Schiffer >; 5854717a36fSMatthias Schiffer }; 5864717a36fSMatthias Schiffer 5874717a36fSMatthias Schiffer main_mmc1_reg_pins: main-mmc1-reg-pins { 5884717a36fSMatthias Schiffer pinctrl-single,pins = < 5894717a36fSMatthias Schiffer /* (C13) SPI0_CS1.GPIO1_43 - MMC1_SD_EN */ 5904717a36fSMatthias Schiffer AM64X_IOPAD(0x020c, PIN_OUTPUT, 7) 5914717a36fSMatthias Schiffer >; 5924717a36fSMatthias Schiffer }; 5934717a36fSMatthias Schiffer 5944717a36fSMatthias Schiffer main_mmc1_wifi_pwrseq_pins: main-mmc1-wifi-pwrseq-pins { 5954717a36fSMatthias Schiffer pinctrl-single,pins = < 5964717a36fSMatthias Schiffer /* (V19) GPMC0_AD8.GPIO0_23 - WIFI-BT_EN */ 5974717a36fSMatthias Schiffer AM64X_IOPAD(0x005c, PIN_OUTPUT, 7) 5984717a36fSMatthias Schiffer >; 5994717a36fSMatthias Schiffer }; 6004717a36fSMatthias Schiffer 6014717a36fSMatthias Schiffer main_spi0_pins: main-spi0-pins { 6024717a36fSMatthias Schiffer pinctrl-single,pins = < 6034717a36fSMatthias Schiffer /* (D13) SPI0_CLK */ 6044717a36fSMatthias Schiffer AM64X_IOPAD(0x0210, PIN_OUTPUT, 0) 6054717a36fSMatthias Schiffer /* (D12) SPI0_CS0 */ 6064717a36fSMatthias Schiffer AM64X_IOPAD(0x0208, PIN_OUTPUT, 0) 6074717a36fSMatthias Schiffer /* (A13) SPI0_D0 */ 6084717a36fSMatthias Schiffer AM64X_IOPAD(0x0214, PIN_OUTPUT, 0) 6094717a36fSMatthias Schiffer /* (A14) SPI0_D1 */ 6104717a36fSMatthias Schiffer AM64X_IOPAD(0x0218, PIN_INPUT, 0) 6114717a36fSMatthias Schiffer >; 6124717a36fSMatthias Schiffer }; 6134717a36fSMatthias Schiffer 6144717a36fSMatthias Schiffer main_spi0_adc_pins: main-spi0-adc-pins { 6154717a36fSMatthias Schiffer pinctrl-single,pins = < 6164717a36fSMatthias Schiffer /* (A16) UART0_RTSn.GPIO1_55 - ADC_SYNC */ 6174717a36fSMatthias Schiffer AM64X_IOPAD(0x023c, PIN_INPUT, 7) 6184717a36fSMatthias Schiffer /* (D16) UART1_CTSn.GPIO1_58 - ADC_RST# */ 6194717a36fSMatthias Schiffer AM64X_IOPAD(0x0248, PIN_OUTPUT, 7) 6204717a36fSMatthias Schiffer /* (E16) UART1_RTSn.GPIO1_59 - ADC_DATA_RDY */ 6214717a36fSMatthias Schiffer AM64X_IOPAD(0x024c, PIN_INPUT, 7) 6224717a36fSMatthias Schiffer /* (B19) I2C1_SDA.GPIO1_67 - ADC_INT# */ 6234717a36fSMatthias Schiffer AM64X_IOPAD(0x026c, PIN_INPUT, 7) 6244717a36fSMatthias Schiffer >; 6254717a36fSMatthias Schiffer }; 6264717a36fSMatthias Schiffer 6274717a36fSMatthias Schiffer main_uart0_pins: main-uart0-pins { 6284717a36fSMatthias Schiffer pinctrl-single,pins = < 6294717a36fSMatthias Schiffer /* (D15) UART0_RXD */ 6304717a36fSMatthias Schiffer AM64X_IOPAD(0x0230, PIN_INPUT, 0) 6314717a36fSMatthias Schiffer /* (C16) UART0_TXD */ 6324717a36fSMatthias Schiffer AM64X_IOPAD(0x0234, PIN_OUTPUT, 0) 6334717a36fSMatthias Schiffer >; 6344717a36fSMatthias Schiffer }; 6354717a36fSMatthias Schiffer 6364717a36fSMatthias Schiffer main_uart1_pins: main-uart1-pins { 6374717a36fSMatthias Schiffer pinctrl-single,pins = < 6384717a36fSMatthias Schiffer /* (E15) UART1_RXD */ 6394717a36fSMatthias Schiffer AM64X_IOPAD(0x0240, PIN_INPUT, 0) 6404717a36fSMatthias Schiffer /* (E14) UART1_TXD */ 6414717a36fSMatthias Schiffer AM64X_IOPAD(0x0244, PIN_OUTPUT, 0) 6424717a36fSMatthias Schiffer >; 6434717a36fSMatthias Schiffer }; 6444717a36fSMatthias Schiffer 6454717a36fSMatthias Schiffer main_uart2_pins: main-uart2-pins { 6464717a36fSMatthias Schiffer pinctrl-single,pins = < 6474717a36fSMatthias Schiffer /* (T18) GPMC0_AD2.UART2_RTSn */ 6484717a36fSMatthias Schiffer AM64X_IOPAD(0x0044, PIN_OUTPUT, 2) 6494717a36fSMatthias Schiffer /* (T20) GPMC0_AD0.UART2_RXD */ 6504717a36fSMatthias Schiffer AM64X_IOPAD(0x003c, PIN_INPUT, 2) 6514717a36fSMatthias Schiffer /* (U21) GPMC0_AD1.UART2_TXD */ 6524717a36fSMatthias Schiffer AM64X_IOPAD(0x0040, PIN_OUTPUT, 2) 6534717a36fSMatthias Schiffer >; 6544717a36fSMatthias Schiffer }; 6554717a36fSMatthias Schiffer 6564717a36fSMatthias Schiffer main_uart3_pins: main-uart3-pins { 6574717a36fSMatthias Schiffer pinctrl-single,pins = < 6584717a36fSMatthias Schiffer /* (T17) GPMC0_AD9.UART3_CTSn */ 6594717a36fSMatthias Schiffer AM64X_IOPAD(0x0060, PIN_INPUT, 2) 6604717a36fSMatthias Schiffer /* (U19) GPMC0_AD5.UART3_RTSn */ 6614717a36fSMatthias Schiffer AM64X_IOPAD(0x0050, PIN_OUTPUT, 2) 6624717a36fSMatthias Schiffer /* (U20) GPMC0_AD3.UART3_RXD */ 6634717a36fSMatthias Schiffer AM64X_IOPAD(0x0048, PIN_INPUT, 2) 6644717a36fSMatthias Schiffer /* (U18) GPMC0_AD4.UART3_TXD */ 6654717a36fSMatthias Schiffer AM64X_IOPAD(0x004c, PIN_OUTPUT, 2) 6664717a36fSMatthias Schiffer >; 6674717a36fSMatthias Schiffer }; 6684717a36fSMatthias Schiffer 6694717a36fSMatthias Schiffer main_uart4_pins: main-uart4-pins { 6704717a36fSMatthias Schiffer pinctrl-single,pins = < 6714717a36fSMatthias Schiffer /* (R16) GPMC0_AD10.UART4_CTSn */ 6724717a36fSMatthias Schiffer AM64X_IOPAD(0x0064, PIN_INPUT, 2) 6734717a36fSMatthias Schiffer /* (R17) GPMC0_CLK.UART4_RTSn */ 6744717a36fSMatthias Schiffer AM64X_IOPAD(0x007c, PIN_OUTPUT, 2) 6754717a36fSMatthias Schiffer /* (V20) GPMC0_AD6.UART4_RXD */ 6764717a36fSMatthias Schiffer AM64X_IOPAD(0x0054, PIN_INPUT, 2) 6774717a36fSMatthias Schiffer /* (V21) GPMC0_AD7.UART4_TXD */ 6784717a36fSMatthias Schiffer AM64X_IOPAD(0x0058, PIN_OUTPUT, 2) 6794717a36fSMatthias Schiffer 6804717a36fSMatthias Schiffer /* Control GPIOs for IOT Module connected to UART4 */ 6814717a36fSMatthias Schiffer /* (D18) ECAP0_IN_APWM_OUT.GPIO1_68 - BG95_PWRKEY */ 6824717a36fSMatthias Schiffer AM64X_IOPAD(0x0270, PIN_OUTPUT, 7) 6834717a36fSMatthias Schiffer /* (A19) EXT_REFCLK1.GPIO1_69 - BG95_RESET */ 6844717a36fSMatthias Schiffer AM64X_IOPAD(0x0274, PIN_OUTPUT, 7) 6854717a36fSMatthias Schiffer >; 6864717a36fSMatthias Schiffer }; 6874717a36fSMatthias Schiffer 6884717a36fSMatthias Schiffer main_uart5_pins: main-uart5-pins { 6894717a36fSMatthias Schiffer pinctrl-single,pins = < 6904717a36fSMatthias Schiffer /* (P16) GPMC0_ADVn_ALE.UART5_RXD */ 6914717a36fSMatthias Schiffer AM64X_IOPAD(0x0084, PIN_INPUT, 2) 6924717a36fSMatthias Schiffer /* (R18) GPMC0_OEn_REn.UART5_TXD */ 6934717a36fSMatthias Schiffer AM64X_IOPAD(0x0088, PIN_OUTPUT, 2) 6944717a36fSMatthias Schiffer >; 6954717a36fSMatthias Schiffer }; 6964717a36fSMatthias Schiffer 6974717a36fSMatthias Schiffer main_usb0_pins: main-usb0-pins { 6984717a36fSMatthias Schiffer pinctrl-single,pins = < 6994717a36fSMatthias Schiffer /* (E19) USB0_DRVVBUS */ 7004717a36fSMatthias Schiffer AM64X_IOPAD(0x02a8, PIN_OUTPUT, 0) 7014717a36fSMatthias Schiffer >; 7024717a36fSMatthias Schiffer }; 7034717a36fSMatthias Schiffer 7044717a36fSMatthias Schiffer pru_icssg1_mdio_pins: pru-icssg1-mdio-pins { 7054717a36fSMatthias Schiffer pinctrl-single,pins = < 7064717a36fSMatthias Schiffer /* (A15) SPI1_D1.GPIO1_51 - RESET_PRG1_RGMII1# */ 7074717a36fSMatthias Schiffer AM64X_IOPAD(0x022c, PIN_OUTPUT, 7) 7084717a36fSMatthias Schiffer /* (B14) SPI1_CS0.GPIO1_47 - RESET_PRG1_RGMII2# */ 7094717a36fSMatthias Schiffer AM64X_IOPAD(0x021c, PIN_OUTPUT, 7) 7104717a36fSMatthias Schiffer 7114717a36fSMatthias Schiffer /* (Y6) PRG1_MDIO0_MDC */ 7124717a36fSMatthias Schiffer AM64X_IOPAD(0x015c, PIN_OUTPUT, 0) 7134717a36fSMatthias Schiffer /* (AA6) PRG1_MDIO0_MDIO */ 7144717a36fSMatthias Schiffer AM64X_IOPAD(0x0158, PIN_INPUT, 0) 7154717a36fSMatthias Schiffer >; 7164717a36fSMatthias Schiffer }; 7174717a36fSMatthias Schiffer 7184717a36fSMatthias Schiffer pru_icssg1_rgmii1_pins: pru-icssg1-rgmii1-pins { 7194717a36fSMatthias Schiffer pinctrl-single,pins = < 7204717a36fSMatthias Schiffer /* (Y7) PRG1_PRU0_GPO0.PRG1_RGMII1_RD0 */ 7214717a36fSMatthias Schiffer AM64X_IOPAD(0x00b8, PIN_INPUT, 2) 7224717a36fSMatthias Schiffer /* (U8) PRG1_PRU0_GPO1.PRG1_RGMII1_RD1 */ 7234717a36fSMatthias Schiffer AM64X_IOPAD(0x00bc, PIN_INPUT, 2) 7244717a36fSMatthias Schiffer /* (W8) PRG1_PRU0_GPO2.PRG1_RGMII1_RD2 */ 7254717a36fSMatthias Schiffer AM64X_IOPAD(0x00c0, PIN_INPUT, 2) 7264717a36fSMatthias Schiffer /* (V8) PRG1_PRU0_GPO3.PRG1_RGMII1_RD3 */ 7274717a36fSMatthias Schiffer AM64X_IOPAD(0x00c4, PIN_INPUT, 2) 7284717a36fSMatthias Schiffer /* (AA7) PRG1_PRU0_GPO6.PRG1_RGMII1_RXC */ 7294717a36fSMatthias Schiffer AM64X_IOPAD(0x00d0, PIN_INPUT, 2) 7304717a36fSMatthias Schiffer /* (Y8) PRG1_PRU0_GPO4.PRG1_RGMII1_RX_CTL */ 7314717a36fSMatthias Schiffer AM64X_IOPAD(0x00c8, PIN_INPUT, 2) 7324717a36fSMatthias Schiffer /* (AA8) PRG1_PRU0_GPO11.PRG1_RGMII1_TD0 */ 7334717a36fSMatthias Schiffer AM64X_IOPAD(0x00e4, PIN_OUTPUT, 2) 7344717a36fSMatthias Schiffer /* (U9) PRG1_PRU0_GPO12.PRG1_RGMII1_TD1 */ 7354717a36fSMatthias Schiffer AM64X_IOPAD(0x00e8, PIN_OUTPUT, 2) 7364717a36fSMatthias Schiffer /* (W9) PRG1_PRU0_GPO13.PRG1_RGMII1_TD2 */ 7374717a36fSMatthias Schiffer AM64X_IOPAD(0x00ec, PIN_OUTPUT, 2) 7384717a36fSMatthias Schiffer /* (AA9) PRG1_PRU0_GPO14.PRG1_RGMII1_TD3 */ 7394717a36fSMatthias Schiffer AM64X_IOPAD(0x00f0, PIN_OUTPUT, 2) 7404717a36fSMatthias Schiffer /* (V9) PRG1_PRU0_GPO16.PRG1_RGMII1_TXC */ 7414717a36fSMatthias Schiffer AM64X_IOPAD(0x00f8, PIN_OUTPUT, 2) 7424717a36fSMatthias Schiffer /* (Y9) PRG1_PRU0_GPO15.PRG1_RGMII1_TX_CTL */ 7434717a36fSMatthias Schiffer AM64X_IOPAD(0x00f4, PIN_OUTPUT, 2) 7444717a36fSMatthias Schiffer >; 7454717a36fSMatthias Schiffer }; 7464717a36fSMatthias Schiffer 7474717a36fSMatthias Schiffer pru_icssg1_rgmii2_pins: pru-icssg1-rgmii2-pins { 7484717a36fSMatthias Schiffer pinctrl-single,pins = < 7494717a36fSMatthias Schiffer /* (W11) PRG1_PRU1_GPO0.PRG1_RGMII2_RD0 */ 7504717a36fSMatthias Schiffer AM64X_IOPAD(0x0108, PIN_INPUT, 2) 7514717a36fSMatthias Schiffer /* (V11) PRG1_PRU1_GPO1.PRG1_RGMII2_RD1 */ 7524717a36fSMatthias Schiffer AM64X_IOPAD(0x010c, PIN_INPUT, 2) 7534717a36fSMatthias Schiffer /* (AA12) PRG1_PRU1_GPO2.PRG1_RGMII2_RD2 */ 7544717a36fSMatthias Schiffer AM64X_IOPAD(0x0110, PIN_INPUT, 2) 7554717a36fSMatthias Schiffer /* (Y12) PRG1_PRU1_GPO3.PRG1_RGMII2_RD3 */ 7564717a36fSMatthias Schiffer AM64X_IOPAD(0x0114, PIN_INPUT, 2) 7574717a36fSMatthias Schiffer /* (U11) PRG1_PRU1_GPO6.PRG1_RGMII2_RXC */ 7584717a36fSMatthias Schiffer AM64X_IOPAD(0x0120, PIN_INPUT, 2) 7594717a36fSMatthias Schiffer /* (W12) PRG1_PRU1_GPO4.PRG1_RGMII2_RX_CTL */ 7604717a36fSMatthias Schiffer AM64X_IOPAD(0x0118, PIN_INPUT, 2) 7614717a36fSMatthias Schiffer /* (AA10) PRG1_PRU1_GPO11.PRG1_RGMII2_TD0 */ 7624717a36fSMatthias Schiffer AM64X_IOPAD(0x0134, PIN_OUTPUT, 2) 7634717a36fSMatthias Schiffer /* (V10) PRG1_PRU1_GPO12.PRG1_RGMII2_TD1 */ 7644717a36fSMatthias Schiffer AM64X_IOPAD(0x0138, PIN_OUTPUT, 2) 7654717a36fSMatthias Schiffer /* (U10) PRG1_PRU1_GPO13.PRG1_RGMII2_TD2 */ 7664717a36fSMatthias Schiffer AM64X_IOPAD(0x013c, PIN_OUTPUT, 2) 7674717a36fSMatthias Schiffer /* (AA11) PRG1_PRU1_GPO14.PRG1_RGMII2_TD3 */ 7684717a36fSMatthias Schiffer AM64X_IOPAD(0x0140, PIN_OUTPUT, 2) 7694717a36fSMatthias Schiffer /* (Y10) PRG1_PRU1_GPO16.PRG1_RGMII2_TXC */ 7704717a36fSMatthias Schiffer AM64X_IOPAD(0x0148, PIN_OUTPUT, 2) 7714717a36fSMatthias Schiffer /* (Y11) PRG1_PRU1_GPO15.PRG1_RGMII2_TX_CTL */ 7724717a36fSMatthias Schiffer AM64X_IOPAD(0x0144, PIN_OUTPUT, 2) 7734717a36fSMatthias Schiffer >; 7744717a36fSMatthias Schiffer }; 7754717a36fSMatthias Schiffer 7764717a36fSMatthias Schiffer pwm_fan_pins: pwm-fan-pins { 7774717a36fSMatthias Schiffer pinctrl-single,pins = < 7784717a36fSMatthias Schiffer /* (T19) GPMC0_BE1n.EHRPWM5_A */ 7794717a36fSMatthias Schiffer AM64X_IOPAD(0x0094, PIN_OUTPUT, 3) 7804717a36fSMatthias Schiffer /* (C14) SPI1_CLK.GPIO1_49 - FAN_RPM */ 7814717a36fSMatthias Schiffer AM64X_IOPAD(0x0224, PIN_INPUT, 7) 7824717a36fSMatthias Schiffer >; 7834717a36fSMatthias Schiffer }; 7844717a36fSMatthias Schiffer 7854717a36fSMatthias Schiffer pwm_fan_reg_pins: pwm-fan-reg-pins { 7864717a36fSMatthias Schiffer pinctrl-single,pins = < 7874717a36fSMatthias Schiffer /* (D14) SPI1_CS1.GPIO1_48 - FAN_PWR */ 7884717a36fSMatthias Schiffer AM64X_IOPAD(0x0220, PIN_OUTPUT, 7) 7894717a36fSMatthias Schiffer >; 7904717a36fSMatthias Schiffer }; 7914717a36fSMatthias Schiffer}; 7924717a36fSMatthias Schiffer 7934717a36fSMatthias Schiffer&mcu_pmx0 { 7944717a36fSMatthias Schiffer mcu_gpio_keys_pins: mcu-gpio-keys-pins { 7954717a36fSMatthias Schiffer pinctrl-single,pins = < 7964717a36fSMatthias Schiffer /* (A7) MCU_SPI1_CS0.MCU_GPIO0_5 */ 7974717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0014, PIN_INPUT, 7) 7984717a36fSMatthias Schiffer >; 7994717a36fSMatthias Schiffer }; 8004717a36fSMatthias Schiffer 8014717a36fSMatthias Schiffer mcu_gpio_leds_pins: mcu-gpio-leds-pins { 8024717a36fSMatthias Schiffer pinctrl-single,pins = < 8034717a36fSMatthias Schiffer /* (C7) MCU_SPI1_D0.MCU_GPIO0_8 */ 8044717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0020, PIN_OUTPUT, 7) 8054717a36fSMatthias Schiffer /* (C8) MCU_SPI1_D1.MCU_GPIO0_9 */ 8064717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0024, PIN_OUTPUT, 7) 8074717a36fSMatthias Schiffer >; 8084717a36fSMatthias Schiffer }; 8094717a36fSMatthias Schiffer 8104717a36fSMatthias Schiffer mcu_gpio0_pins: mcu-gpio0-pins { 8114717a36fSMatthias Schiffer pinctrl-single,pins = < 8124717a36fSMatthias Schiffer /* (E8) MCU_UART0_RTSn.MCU_GPIO0_0 */ 8134717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0034, PIN_INPUT, 7) 8144717a36fSMatthias Schiffer /* (D8) MCU_UART0_CTSn.MCU_GPIO0_1 */ 8154717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0030, PIN_INPUT, 7) 8164717a36fSMatthias Schiffer /* (B7) MCU_SPI1_CS1.MCU_GPIO0_6 */ 8174717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0018, PIN_INPUT, 7) 8184717a36fSMatthias Schiffer /* (D7) MCU_SPI1_CLK.MCU_GPIO0_7 */ 8194717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x001c, PIN_INPUT, 7) 8204717a36fSMatthias Schiffer /* (A11) MCU_I2C1_SCL.MCU_GPIO0_20 */ 8214717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0050, PIN_INPUT, 7) 8224717a36fSMatthias Schiffer /* (B10) MCU_I2C1_SDA.MCU_GPIO0_21 */ 8234717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0054, PIN_INPUT, 7) 8244717a36fSMatthias Schiffer >; 8254717a36fSMatthias Schiffer }; 8264717a36fSMatthias Schiffer 8274717a36fSMatthias Schiffer mcu_i2c0_pins: mcu-i2c0-pins { 8284717a36fSMatthias Schiffer pinctrl-single,pins = < 8294717a36fSMatthias Schiffer /* (E9) MCU_I2C0_SCL */ 8304717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0048, PIN_INPUT, 0) 8314717a36fSMatthias Schiffer /* (A10) MCU_I2C0_SDA */ 8324717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x004c, PIN_INPUT, 0) 8334717a36fSMatthias Schiffer >; 8344717a36fSMatthias Schiffer }; 8354717a36fSMatthias Schiffer 8364717a36fSMatthias Schiffer mcu_spi0_pins: mcu-spi0-pins { 8374717a36fSMatthias Schiffer pinctrl-single,pins = < 8384717a36fSMatthias Schiffer /* (E6) MCU_SPI0_CLK */ 8394717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0008, PIN_OUTPUT, 0) 8404717a36fSMatthias Schiffer /* (D6) MCU_SPI0_CS0 */ 8414717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0000, PIN_OUTPUT, 0) 8424717a36fSMatthias Schiffer /* (C6) MCU_SPI0_CS1 */ 8434717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0004, PIN_OUTPUT, 0) 8444717a36fSMatthias Schiffer /* (E7) MCU_SPI0_D0 */ 8454717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x000c, PIN_OUTPUT, 0) 8464717a36fSMatthias Schiffer /* (B6) MCU_SPI0_D1 */ 8474717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0010, PIN_INPUT, 0) 8484717a36fSMatthias Schiffer >; 8494717a36fSMatthias Schiffer }; 8504717a36fSMatthias Schiffer 8514717a36fSMatthias Schiffer mcu_uart0_pins: mcu-uart0-pins { 8524717a36fSMatthias Schiffer pinctrl-single,pins = < 8534717a36fSMatthias Schiffer /* (A9) MCU_UART0_RXD */ 8544717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0028, PIN_INPUT, 0) 8554717a36fSMatthias Schiffer /* (A8) MCU_UART0_TXD */ 8564717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x002c, PIN_OUTPUT, 0) 8574717a36fSMatthias Schiffer >; 8584717a36fSMatthias Schiffer }; 8594717a36fSMatthias Schiffer 8604717a36fSMatthias Schiffer mcu_uart1_pins: mcu-uart1-pins { 8614717a36fSMatthias Schiffer pinctrl-single,pins = < 8624717a36fSMatthias Schiffer /* (B8) MCU_UART1_CTSn */ 8634717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0040, PIN_INPUT, 0) 8644717a36fSMatthias Schiffer /* (B9) MCU_UART1_RTSn */ 8654717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0044, PIN_OUTPUT, 0) 8664717a36fSMatthias Schiffer /* (C9) MCU_UART1_RXD */ 8674717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x0038, PIN_INPUT, 0) 8684717a36fSMatthias Schiffer /* (D9) MCU_UART1_TXD */ 8694717a36fSMatthias Schiffer AM64X_MCU_IOPAD(0x003c, PIN_OUTPUT, 0) 8704717a36fSMatthias Schiffer >; 8714717a36fSMatthias Schiffer }; 8724717a36fSMatthias Schiffer}; 873