1034 lines
24 KiB
Devicetree
1034 lines
24 KiB
Devicetree
// SPDX-License-Identifier: GPL-2.0-only OR MIT
|
|
/*
|
|
* Copyright (C) 2021-2022 Texas Instruments Incorporated - https://www.ti.com/
|
|
* Copyright (c) 2023-2026 TQ-Systems GmbH <linux@ew.tq-group.com>, D-82229 Seefeld, Germany.
|
|
* Author: Nora Schiffer
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/leds/common.h>
|
|
#include <dt-bindings/net/ti-dp83867.h>
|
|
#include <dt-bindings/pwm/pwm.h>
|
|
#include "k3-am625-tqma62xx.dtsi"
|
|
|
|
/ {
|
|
compatible = "tq,am625-tqma6254-mba62xx", "tq,am625-tqma6254",
|
|
"ti,am625";
|
|
model = "TQ-Systems TQMa62xx SoM on MBa62xx carrier board";
|
|
chassis-type = "embedded";
|
|
|
|
aliases {
|
|
can0 = &mcu_mcan0;
|
|
can1 = &mcu_mcan1;
|
|
ethernet0 = &cpsw_port1;
|
|
ethernet1 = &cpsw_port2;
|
|
i2c1 = &main_i2c1;
|
|
mmc1 = &sdhci1;
|
|
mmc2 = &sdhci2;
|
|
serial0 = &main_uart0;
|
|
serial1 = &mcu_uart0;
|
|
spi1 = &main_spi0;
|
|
usb0 = &usb0;
|
|
usb1 = &usb1;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = &main_uart0;
|
|
};
|
|
|
|
backlight: backlight {
|
|
compatible = "pwm-backlight";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&backlight_pins>;
|
|
enable-gpios = <&main_gpio0 38 GPIO_ACTIVE_HIGH>;
|
|
/* Enabled by display overlays */
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&gpio_key_pins>;
|
|
|
|
user-button {
|
|
label = "USER_BUTTON";
|
|
linux,code = <BTN_0>;
|
|
gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>;
|
|
};
|
|
};
|
|
|
|
gpio-leds {
|
|
compatible = "gpio-leds";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&gpio_led_pins>;
|
|
|
|
led-1 {
|
|
gpios = <&main_gpio0 41 GPIO_ACTIVE_HIGH>;
|
|
color = <LED_COLOR_ID_GREEN>;
|
|
function = LED_FUNCTION_INDICATOR;
|
|
};
|
|
|
|
led-2 {
|
|
gpios = <&main_gpio0 42 GPIO_ACTIVE_HIGH>;
|
|
color = <LED_COLOR_ID_YELLOW>;
|
|
function = LED_FUNCTION_INDICATOR;
|
|
};
|
|
};
|
|
|
|
panel: panel {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&lvds_panel_pins>;
|
|
enable-gpios = <&main_gpio0 36 GPIO_ACTIVE_HIGH>;
|
|
power-supply = <®_lvds_pwr>;
|
|
/* Completed and enabled by display overlays */
|
|
status = "disabled";
|
|
};
|
|
|
|
fan0: pwm-fan {
|
|
compatible = "pwm-fan";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pwm_fan_pins>;
|
|
fan-supply = <®_pwm_fan>;
|
|
#cooling-cells = <2>;
|
|
/* typical 25 kHz -> 40.000 nsec */
|
|
pwms = <&epwm0 1 40000 PWM_POLARITY_INVERTED>;
|
|
cooling-levels = <0 32 64 128 196 240>;
|
|
pulses-per-revolution = <2>;
|
|
interrupt-parent = <&main_gpio1>;
|
|
interrupts = <30 IRQ_TYPE_EDGE_FALLING>;
|
|
/*
|
|
* 4-pin connector for optional fan - disabled by default, as
|
|
* PWM period may need to be adjusted for the used fan
|
|
*/
|
|
status = "disabled";
|
|
};
|
|
|
|
wifi_pwrseq: pwrseq-wifi {
|
|
compatible = "mmc-pwrseq-simple";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_mmc2_pwrseq_pins>;
|
|
reset-gpios = <&main_gpio0 44 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
reg_1v8: regulator-1v8 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "V_1V8_MBA";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
};
|
|
|
|
reg_3v3_sd: regulator-3v3-sd {
|
|
/* TPS22963CYZTP */
|
|
compatible = "regulator-fixed";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <®_3v3_sd_pins>;
|
|
regulator-name = "V_3V3_SD";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-boot-on;
|
|
enable-active-high;
|
|
vin-supply = <®_3v3>;
|
|
gpio = <&main_gpio1 8 GPIO_ACTIVE_HIGH>;
|
|
bootph-all;
|
|
};
|
|
|
|
reg_lvds_pwr: regulator-lvds-pwr {
|
|
compatible = "regulator-fixed";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <®_lvds_pwr_pins>;
|
|
regulator-name = "LVDS0_PWR";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
enable-active-high;
|
|
vin-supply = <®_3v3>;
|
|
gpio = <&main_gpio0 61 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
reg_pwm_fan: regulator-pwm-fan {
|
|
compatible = "regulator-fixed";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <®_pwm_fan_pins>;
|
|
regulator-name = "FAN_PWR";
|
|
regulator-min-microvolt = <12000000>;
|
|
regulator-max-microvolt = <12000000>;
|
|
gpio = <&main_gpio0 62 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
|
|
sound: sound {
|
|
compatible = "simple-audio-card";
|
|
simple-audio-card,name = "tqm-tlv320aic32";
|
|
simple-audio-card,widgets =
|
|
"Line Out", "Line Out",
|
|
"Line In", "Line In",
|
|
"Microphone", "Microphone Jack";
|
|
simple-audio-card,routing =
|
|
"Line Out", "LOL",
|
|
"Line Out", "LOR",
|
|
"IN1_L", "Line In",
|
|
"IN1_R", "Line In",
|
|
"IN3_L", "Microphone Jack",
|
|
"Microphone Jack", "Mic Bias";
|
|
simple-audio-card,format = "i2s";
|
|
simple-audio-card,bitclock-master = <&sound_master>;
|
|
simple-audio-card,frame-master = <&sound_master>;
|
|
|
|
simple-audio-card,cpu {
|
|
sound-dai = <&mcasp1>;
|
|
};
|
|
|
|
sound_master: simple-audio-card,codec {
|
|
sound-dai = <&tlv320aic32x4>;
|
|
clocks = <&audio_refclk0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&audio_refclk0 {
|
|
/* Set parent to POSTDIV1_16FFT_MAIN_1_HSDIVOUT6, for 96MHz clock output */
|
|
assigned-clock-parents = <&k3_clks 157 7>;
|
|
};
|
|
|
|
&cpsw3g {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_rgmii1_pins>, <&main_rgmii2_pins>;
|
|
status = "okay";
|
|
};
|
|
|
|
&cpsw_port1 {
|
|
phy-mode = "rgmii-id";
|
|
phy-handle = <&cpsw3g_phy0>;
|
|
};
|
|
|
|
&cpsw_port2 {
|
|
phy-mode = "rgmii-id";
|
|
phy-handle = <&cpsw3g_phy3>;
|
|
};
|
|
|
|
&cpsw3g_mdio {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_mdio1_pins>;
|
|
status = "okay";
|
|
|
|
cpsw3g_phy0: ethernet-phy@0 {
|
|
compatible = "ethernet-phy-ieee802.3-c22";
|
|
reg = <0x0>;
|
|
reset-gpios = <&main_gpio1 11 GPIO_ACTIVE_LOW>;
|
|
reset-assert-us = <1000>;
|
|
reset-deassert-us = <1000>;
|
|
ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
|
|
ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
|
|
};
|
|
|
|
cpsw3g_phy3: ethernet-phy@3 {
|
|
compatible = "ethernet-phy-ieee802.3-c22";
|
|
reg = <0x3>;
|
|
reset-gpios = <&main_gpio1 12 GPIO_ACTIVE_LOW>;
|
|
reset-assert-us = <1000>;
|
|
reset-deassert-us = <1000>;
|
|
ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
|
|
ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
|
|
};
|
|
};
|
|
|
|
&dss {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&dss_pins>;
|
|
};
|
|
|
|
&epwm0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&epwm1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&main_gpio0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_gpio0_pins>, <&main_gpio0_pr0_pins>;
|
|
gpio-line-names =
|
|
"", "", "", "", /* 0-3 */
|
|
"", "", "", "", /* 4-7 */
|
|
"", "", "", "", /* 8-11 */
|
|
"ADC_SYNC", "ADC_RST#", "ADC_DATA_RDY", "", /* 12-15 */
|
|
"", "", "", "", /* 16-19 */
|
|
"", "", "", "", /* 20-23 */
|
|
"", "", "", "", /* 24-27 */
|
|
"", "", "", "", /* 28-31 */
|
|
"", "", "", "", /* 32-35 */
|
|
"", "", "", "BG95_PWRKEY", /* 36-39 */
|
|
"", "", "", "BG95_RESET", /* 40-43 */
|
|
"", "", "", "", /* 44-47 */
|
|
"", "", "", "", /* 48-51 */
|
|
"", "", "", "", /* 52-55 */
|
|
"", "", "", "", /* 56-59 */
|
|
"", "", "", "", /* 60-63 */
|
|
"", "", "", "", /* 64-67 */
|
|
"", "", "", "", /* 68-71 */
|
|
"ADC_INT"; /* 72- */
|
|
bootph-all;
|
|
};
|
|
|
|
&main_gpio1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_gpio1_pins>, <&main_gpio1_pr0_pins>;
|
|
bootph-all;
|
|
|
|
/* No overcurrent handling in USB host driver - pin is hogged for now */
|
|
line7-hog {
|
|
gpio-hog;
|
|
gpios = <7 GPIO_ACTIVE_HIGH>;
|
|
line-name = "USB0_VBUS_OC#";
|
|
input;
|
|
};
|
|
};
|
|
|
|
&main_i2c1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_i2c1_pins>;
|
|
clock-frequency = <400000>;
|
|
status = "okay";
|
|
|
|
tlv320aic32x4: audio-codec@18 {
|
|
compatible = "ti,tlv320aic32x4";
|
|
reg = <0x18>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&audio_codec_pins>;
|
|
#sound-dai-cells = <0>;
|
|
clock-names = "mclk";
|
|
clocks = <&audio_refclk0>;
|
|
reset-gpios = <&main_gpio0 33 GPIO_ACTIVE_LOW>;
|
|
iov-supply = <®_1v8>;
|
|
ldoin-supply = <®_3v3>;
|
|
};
|
|
};
|
|
|
|
&main_spi0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_spi0_pins>;
|
|
ti,pindir-d0-out-d1-in;
|
|
status = "okay";
|
|
|
|
/* adc@0: NXP NAFE13388 */
|
|
};
|
|
|
|
&main0_thermal {
|
|
trips {
|
|
main0_active0: trip-active0 {
|
|
temperature = <40000>;
|
|
hysteresis = <5000>;
|
|
type = "active";
|
|
};
|
|
|
|
main0_active1: trip-active1 {
|
|
temperature = <48000>;
|
|
hysteresis = <3000>;
|
|
type = "active";
|
|
};
|
|
|
|
main0_active2: trip-active2 {
|
|
temperature = <60000>;
|
|
hysteresis = <10000>;
|
|
type = "active";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map1 {
|
|
trip = <&main0_active0>;
|
|
cooling-device = <&fan0 1 1>;
|
|
};
|
|
|
|
map2 {
|
|
trip = <&main0_active1>;
|
|
cooling-device = <&fan0 2 2>;
|
|
};
|
|
|
|
map3 {
|
|
trip = <&main0_active2>;
|
|
cooling-device = <&fan0 3 3>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&main1_thermal {
|
|
trips {
|
|
main1_active0: trip-active0 {
|
|
temperature = <40000>;
|
|
hysteresis = <5000>;
|
|
type = "active";
|
|
};
|
|
|
|
main1_active1: trip-active1 {
|
|
temperature = <48000>;
|
|
hysteresis = <3000>;
|
|
type = "active";
|
|
};
|
|
|
|
main1_active2: trip-active2 {
|
|
temperature = <60000>;
|
|
hysteresis = <10000>;
|
|
type = "active";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map1 {
|
|
trip = <&main1_active0>;
|
|
cooling-device = <&fan0 1 1>;
|
|
};
|
|
|
|
map2 {
|
|
trip = <&main1_active1>;
|
|
cooling-device = <&fan0 2 2>;
|
|
};
|
|
|
|
map3 {
|
|
trip = <&main1_active2>;
|
|
cooling-device = <&fan0 3 3>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/* Main console */
|
|
&main_uart0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_uart0_pins>;
|
|
bootph-all;
|
|
status = "okay";
|
|
};
|
|
|
|
/*
|
|
* IOT module - GNSS UART
|
|
*
|
|
* Board configuration must not enable UART trace output for TIFS firmware
|
|
*/
|
|
&main_uart1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_uart1_pins>;
|
|
/* IOT module uses USB by default, UART can be enabled as fallback */
|
|
status = "disabled";
|
|
};
|
|
|
|
/* Bluetooth module */
|
|
&main_uart2 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_uart2_pins>;
|
|
/* Bluetooth module uses SDIO by default, UART can be enabled as fallback */
|
|
status = "disabled";
|
|
};
|
|
|
|
/* IOT module - main UART */
|
|
&main_uart5 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_uart5_pins>;
|
|
/* IOT module uses USB by default, UART can be enabled as fallback */
|
|
status = "disabled";
|
|
};
|
|
|
|
&mcasp1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_mcasp1_pins>;
|
|
#sound-dai-cells = <0>;
|
|
op-mode = <0>; /* MCASP_IIS_MODE */
|
|
tdm-slots = <2>;
|
|
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
|
|
1 0 2 0
|
|
0 0 0 0
|
|
0 0 0 0
|
|
0 0 0 0
|
|
>;
|
|
tx-num-evt = <0>;
|
|
rx-num-evt = <0>;
|
|
status = "okay";
|
|
};
|
|
|
|
&mcu_gpio0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mcu_gpio0_pins>;
|
|
gpio-line-names =
|
|
"EN_DIG_OUT_1", "EN_DIG_OUT_2", "STATUS_OUT_1", "STATUS_OUT_2", /* 0-3 */
|
|
"EN_DIG_OUT_3", "", "", "V_VPP_EN", /* 4-7 */
|
|
"", "", "", "EN_DIG_OUT_4", /* 8-11 */
|
|
"STATUS_OUT_3", "", "", "", /* 12-15 */
|
|
"", "STATUS_OUT_4", "DIG_IN_1", "DIG_IN_2", /* 16-19 */
|
|
"DIG_IN_3", "", "", "DIG_IN_4"; /* 20-23 */
|
|
bootph-all;
|
|
};
|
|
|
|
&mcu_mcan0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mcu_mcan0_pins>;
|
|
status = "okay";
|
|
};
|
|
|
|
&mcu_mcan1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mcu_mcan1_pins>;
|
|
status = "okay";
|
|
};
|
|
|
|
&mcu_uart0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mcu_uart0_pins>;
|
|
rs485-rts-active-low;
|
|
linux,rs485-enabled-at-boot-time;
|
|
status = "okay";
|
|
};
|
|
|
|
®_sd {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <®_sd_pins>;
|
|
gpios = <&main_gpio0 31 GPIO_ACTIVE_LOW>;
|
|
bootph-all;
|
|
status = "okay";
|
|
};
|
|
|
|
&sdhci1 {
|
|
/* SD-card */
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_mmc1_pins>;
|
|
vmmc-supply = <®_3v3_sd>;
|
|
vqmmc-supply = <®_sd>;
|
|
bus-width = <4>;
|
|
disable-wp;
|
|
no-mmc;
|
|
no-sdio;
|
|
bootph-all;
|
|
ti,driver-strength-ohm = <50>;
|
|
status = "okay";
|
|
};
|
|
|
|
&sdhci2 {
|
|
/* WLAN */
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_mmc2_pins>;
|
|
mmc-pwrseq = <&wifi_pwrseq>;
|
|
keep-power-in-suspend;
|
|
cap-power-off-card;
|
|
bus-width = <4>;
|
|
non-removable;
|
|
no-mmc;
|
|
no-sd;
|
|
ti,driver-strength-ohm = <50>;
|
|
ti,fails-without-test-cd;
|
|
status = "okay";
|
|
};
|
|
|
|
&usbss0 {
|
|
bootph-all;
|
|
ti,vbus-divider;
|
|
status = "okay";
|
|
};
|
|
|
|
&usbss1 {
|
|
ti,vbus-divider;
|
|
status = "okay";
|
|
};
|
|
|
|
&usb0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_usb0_pins>;
|
|
dr_mode = "otg";
|
|
usb-role-switch;
|
|
bootph-all;
|
|
|
|
connector {
|
|
compatible = "gpio-usb-b-connector", "usb-b-connector";
|
|
id-gpios = <&main_gpio0 71 GPIO_ACTIVE_HIGH>;
|
|
type = "micro";
|
|
};
|
|
};
|
|
|
|
&usb1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&main_usb1_hub_pins>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
dr_mode = "host";
|
|
|
|
usb1_hub_2_0: hub@1 {
|
|
compatible = "usb424,2514";
|
|
reg = <1>;
|
|
reset-gpios = <&main_gpio1 23 GPIO_ACTIVE_HIGH>;
|
|
vdd-supply = <®_3v3>;
|
|
vdda-supply = <®_3v3>;
|
|
};
|
|
};
|
|
|
|
&wkup_uart0 {
|
|
/* WKUP UART0 is used by DM firmware */
|
|
status = "reserved";
|
|
};
|
|
|
|
&main_pmx0 {
|
|
audio_codec_pins: audio-codec-pins {
|
|
pinctrl-single,pins = <
|
|
/* (L24) GPMC0_OEn_REn.GPIO0_33 */
|
|
AM62X_IOPAD(0x088, PIN_OUTPUT, 7)
|
|
/* (A15) UART0_CTSn.AUDIO_EXT_REFCLK0 */
|
|
AM62X_IOPAD(0x1d0, PIN_OUTPUT, 5)
|
|
>;
|
|
};
|
|
|
|
backlight_pins: backlight-pins {
|
|
pinctrl-single,pins = <
|
|
/* (V25) GPMC0_WAIT1.GPIO0_38 */
|
|
AM62X_IOPAD(0x009c, PIN_OUTPUT, 7)
|
|
/* (E18) MCASP0_AXR0.EHRPWM1_B */
|
|
AM62X_IOPAD(0x01a0, PIN_OUTPUT, 6)
|
|
>;
|
|
};
|
|
|
|
dss_pins: dss-pins {
|
|
pinctrl-single,pins = <
|
|
/* (AA5) OLDI0_A0N */
|
|
AM62X_IOPAD(0x0260, PIN_OUTPUT, 0)
|
|
/* (Y6) OLDI0_A0P */
|
|
AM62X_IOPAD(0x025c, PIN_OUTPUT, 0)
|
|
/* (AD3) OLDI0_A1N */
|
|
AM62X_IOPAD(0x0268, PIN_OUTPUT, 0)
|
|
/* (AB4) OLDI0_A1P */
|
|
AM62X_IOPAD(0x0264, PIN_OUTPUT, 0)
|
|
/* (Y8) OLDI0_A2N */
|
|
AM62X_IOPAD(0x0270, PIN_OUTPUT, 0)
|
|
/* (AA8) OLDI0_A2P */
|
|
AM62X_IOPAD(0x026c, PIN_OUTPUT, 0)
|
|
/* (AB6) OLDI0_A3N */
|
|
AM62X_IOPAD(0x0278, PIN_OUTPUT, 0)
|
|
/* (AA7) OLDI0_A3P */
|
|
AM62X_IOPAD(0x0274, PIN_OUTPUT, 0)
|
|
/* (AC6) OLDI0_A4N */
|
|
AM62X_IOPAD(0x0280, PIN_OUTPUT, 0)
|
|
/* (AC5) OLDI0_A4P */
|
|
AM62X_IOPAD(0x027c, PIN_OUTPUT, 0)
|
|
/* (AE5) OLDI0_A5N */
|
|
AM62X_IOPAD(0x0288, PIN_OUTPUT, 0)
|
|
/* (AD6) OLDI0_A5P */
|
|
AM62X_IOPAD(0x0284, PIN_OUTPUT, 0)
|
|
/* (AE6) OLDI0_A6N */
|
|
AM62X_IOPAD(0x0290, PIN_OUTPUT, 0)
|
|
/* (AD7) OLDI0_A6P */
|
|
AM62X_IOPAD(0x028c, PIN_OUTPUT, 0)
|
|
/* (AD8) OLDI0_A7N */
|
|
AM62X_IOPAD(0x0298, PIN_OUTPUT, 0)
|
|
/* (AE7) OLDI0_A7P */
|
|
AM62X_IOPAD(0x0294, PIN_OUTPUT, 0)
|
|
/* (AD4) OLDI0_CLK0N */
|
|
AM62X_IOPAD(0x02a0, PIN_OUTPUT, 0)
|
|
/* (AE3) OLDI0_CLK0P */
|
|
AM62X_IOPAD(0x029c, PIN_OUTPUT, 0)
|
|
/* (AE4) OLDI0_CLK1N */
|
|
AM62X_IOPAD(0x02a8, PIN_OUTPUT, 0)
|
|
/* (AD5) OLDI0_CLK1P */
|
|
AM62X_IOPAD(0x02a4, PIN_OUTPUT, 0)
|
|
>;
|
|
};
|
|
|
|
csi_clk_pins: csi-clk-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B18) MCASP0_AXR1.EHRPWM1_A */
|
|
AM62X_IOPAD(0x019c, PIN_OUTPUT, 6)
|
|
>;
|
|
};
|
|
|
|
gpio_key_pins: gpio-key-pins {
|
|
pinctrl-single,pins = <
|
|
/* (M22) GPMC0_DIR.GPIO0_40 */
|
|
AM62X_IOPAD(0x0a4, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
gpio_led_pins: gpio-led-pins {
|
|
pinctrl-single,pins = <
|
|
/* (M21) GPMC0_CSn0.GPIO0_41 */
|
|
AM62X_IOPAD(0x0a8, PIN_OUTPUT, 7)
|
|
/* (L21) GPMC0_CSn1.GPIO0_42 */
|
|
AM62X_IOPAD(0x0ac, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
lvds_panel_pins: lvds-panel-pins {
|
|
pinctrl-single,pins = <
|
|
/* (N20) GPMC0_BE1n.GPIO0_36 - LVDS0_RESET# */
|
|
AM62X_IOPAD(0x0094, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_gpio0_pins: main-gpio0-pins {
|
|
pinctrl-single,pins = <
|
|
/* Control GPIOs for IOT Module */
|
|
/* (K25) GPMC0_WPn.GPIO0_39 - BG95_PWRKEY */
|
|
AM62X_IOPAD(0x0a0, PIN_OUTPUT, 7)
|
|
/* (K22) GPMC0_CSn2.GPIO0_43 - BG95_RESET */
|
|
AM62X_IOPAD(0x0b0, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_gpio0_pr0_pins: main-gpio0-pr0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (N24) GPMC0_AD2.GPIO0_17 */
|
|
AM62X_IOPAD(0x0044, PIN_INPUT, 7)
|
|
/* (N25) GPMC0_AD3.GPIO0_18 */
|
|
AM62X_IOPAD(0x0048, PIN_INPUT, 7)
|
|
/* (P24) GPMC0_AD4.GPIO0_19 */
|
|
AM62X_IOPAD(0x004c, PIN_INPUT, 7)
|
|
/* (P22) GPMC0_AD5.GPIO0_20 */
|
|
AM62X_IOPAD(0x0050, PIN_INPUT, 7)
|
|
/* (W25) VOUT0_DATA2.GPIO0_47 */
|
|
AM62X_IOPAD(0x00c0, PIN_INPUT, 7)
|
|
/* (W24) VOUT0_DATA3.GPIO0_48 */
|
|
AM62X_IOPAD(0x00c4, PIN_INPUT, 7)
|
|
/* (Y25) VOUT0_DATA4.GPIO0_49 */
|
|
AM62X_IOPAD(0x00c8, PIN_INPUT, 7)
|
|
/* (Y24) VOUT0_DATA5.GPIO0_50 */
|
|
AM62X_IOPAD(0x00cc, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_gpio1_pins: main-gpio1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B19) MCASP0_AXR3.GPIO1_7 - USB0_VBUS_OC# */
|
|
AM62X_IOPAD(0x0194, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_gpio1_pr0_pins: main-gpio1-pr0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (C15) MCAN0_TX.GPIO1_24 */
|
|
AM62X_IOPAD(0x01d8, PIN_INPUT, 7)
|
|
/* (E15) MCAN0_RX.GPIO1_25 */
|
|
AM62X_IOPAD(0x01dc, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_i2c1_pins: main-i2c1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B17) I2C1_SCL */
|
|
AM62X_IOPAD(0x1e8, PIN_INPUT, 0)
|
|
/* (A17) I2C1_SDA */
|
|
AM62X_IOPAD(0x1ec, PIN_INPUT, 0)
|
|
>;
|
|
};
|
|
|
|
main_mcasp1_pins: main-mcasp1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (M24) GPMC0_BE0N_CLE.MCASP1_ACLKX */
|
|
AM62X_IOPAD(0x090, PIN_INPUT, 2)
|
|
/* (U23) GPMC0_WAIT0.MCASP1_AFSX */
|
|
AM62X_IOPAD(0x098, PIN_INPUT, 2)
|
|
/* (L25) GPMC0_WEN.MCASP1_AXR0 */
|
|
AM62X_IOPAD(0x08c, PIN_OUTPUT, 2)
|
|
/* (L23) GPMC0_ADVN_ALE.MCASP1_AXR2 */
|
|
AM62X_IOPAD(0x084, PIN_INPUT, 2)
|
|
>;
|
|
};
|
|
|
|
main_mmc1_pins: main-mmc1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (A21) MMC1_CMD */
|
|
AM62X_IOPAD(0x23c, PIN_INPUT, 0)
|
|
/* (B22) MMC1_CLK */
|
|
AM62X_IOPAD(0x234, PIN_INPUT, 0)
|
|
/* (A22) MMC1_DAT0 */
|
|
AM62X_IOPAD(0x230, PIN_INPUT, 0)
|
|
/* (B21) MMC1_DAT1 */
|
|
AM62X_IOPAD(0x22c, PIN_INPUT, 0)
|
|
/* (C21) MMC1_DAT2 */
|
|
AM62X_IOPAD(0x228, PIN_INPUT, 0)
|
|
/* (D22) MMC1_DAT3 */
|
|
AM62X_IOPAD(0x224, PIN_INPUT, 0)
|
|
/* (D17) MMC1_SDCD */
|
|
AM62X_IOPAD(0x240, PIN_INPUT, 0)
|
|
>;
|
|
bootph-all;
|
|
};
|
|
|
|
main_mmc2_pins: main-mmc2-pins {
|
|
pinctrl-single,pins = <
|
|
/* (C24) MMC2_CMD */
|
|
AM62X_IOPAD(0x120, PIN_INPUT, 0)
|
|
/* (D25) MMC2_CLK */
|
|
AM62X_IOPAD(0x118, PIN_INPUT, 0)
|
|
/* (B24) MMC2_DAT0 */
|
|
AM62X_IOPAD(0x114, PIN_INPUT, 0)
|
|
/* (C25) MMC2_DAT1 */
|
|
AM62X_IOPAD(0x110, PIN_INPUT, 0)
|
|
/* (E23) MMC2_DAT2 */
|
|
AM62X_IOPAD(0x10c, PIN_INPUT, 0)
|
|
/* (D24) MMC2_DAT3 */
|
|
AM62X_IOPAD(0x108, PIN_INPUT, 0)
|
|
/* (#N/A) MMC2_CLKB */
|
|
AM62X_IOPAD(0x11c, PIN_INPUT, 0)
|
|
>;
|
|
};
|
|
|
|
main_mmc2_pwrseq_pins: main-mmc2-pwrseq-pins {
|
|
pinctrl-single,pins = <
|
|
/* (K24) GPMC0_CSn3.GPIO0_44 - WIFI-BT_EN */
|
|
AM62X_IOPAD(0x00b4, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_mdio1_pins: main-mdio1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B20) MCASP0_ACLKX.GPIO1_11 - RESET_RGMII1# */
|
|
AM62X_IOPAD(0x1a4, PIN_OUTPUT, 7)
|
|
/* (D20) MCASP0_AFSX.GPIO1_12 - RESET_RGMII2# */
|
|
AM62X_IOPAD(0x1a8, PIN_OUTPUT, 7)
|
|
|
|
/* (AD24) MDIO0_MDC */
|
|
AM62X_IOPAD(0x160, PIN_OUTPUT, 0)
|
|
/* (AB22) MDIO0_MDIO */
|
|
AM62X_IOPAD(0x15c, PIN_INPUT, 0)
|
|
>;
|
|
};
|
|
|
|
main_rgmii1_pins: main-rgmii1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (AB17) RGMII1_RD0 */
|
|
AM62X_IOPAD(0x14c, PIN_INPUT, 0)
|
|
/* (AC17) RGMII1_RD1 */
|
|
AM62X_IOPAD(0x150, PIN_INPUT, 0)
|
|
/* (AB16) RGMII1_RD2 */
|
|
AM62X_IOPAD(0x154, PIN_INPUT, 0)
|
|
/* (AA15) RGMII1_RD3 */
|
|
AM62X_IOPAD(0x158, PIN_INPUT, 0)
|
|
/* (AD17) RGMII1_RXC */
|
|
AM62X_IOPAD(0x148, PIN_INPUT, 0)
|
|
/* (AE17) RGMII1_RX_CTL */
|
|
AM62X_IOPAD(0x144, PIN_INPUT, 0)
|
|
/* (AE20) RGMII1_TD0 */
|
|
AM62X_IOPAD(0x134, PIN_OUTPUT, 0)
|
|
/* (AD20) RGMII1_TD1 */
|
|
AM62X_IOPAD(0x138, PIN_OUTPUT, 0)
|
|
/* (AE18) RGMII1_TD2 */
|
|
AM62X_IOPAD(0x13c, PIN_OUTPUT, 0)
|
|
/* (AD18) RGMII1_TD3 */
|
|
AM62X_IOPAD(0x140, PIN_OUTPUT, 0)
|
|
/* (AE19) RGMII1_TXC */
|
|
AM62X_IOPAD(0x130, PIN_OUTPUT, 0)
|
|
/* (AD19) RGMII1_TX_CTL */
|
|
AM62X_IOPAD(0x12c, PIN_OUTPUT, 0)
|
|
>;
|
|
};
|
|
|
|
main_rgmii2_pins: main-rgmii2-pins {
|
|
pinctrl-single,pins = <
|
|
/* (AE23) RGMII2_RD0 */
|
|
AM62X_IOPAD(0x184, PIN_INPUT, 0)
|
|
/* (AB20) RGMII2_RD1 */
|
|
AM62X_IOPAD(0x188, PIN_INPUT, 0)
|
|
/* (AC21) RGMII2_RD2 */
|
|
AM62X_IOPAD(0x18c, PIN_INPUT, 0)
|
|
/* (AE22) RGMII2_RD3 */
|
|
AM62X_IOPAD(0x190, PIN_INPUT, 0)
|
|
/* (AD23) RGMII2_RXC */
|
|
AM62X_IOPAD(0x180, PIN_INPUT, 0)
|
|
/* (AD22) RGMII2_RX_CTL */
|
|
AM62X_IOPAD(0x17c, PIN_INPUT, 0)
|
|
/* (Y18) RGMII2_TD0 */
|
|
AM62X_IOPAD(0x16c, PIN_OUTPUT, 0)
|
|
/* (AA18) RGMII2_TD1 */
|
|
AM62X_IOPAD(0x170, PIN_OUTPUT, 0)
|
|
/* (AD21) RGMII2_TD2 */
|
|
AM62X_IOPAD(0x174, PIN_OUTPUT, 0)
|
|
/* (AC20) RGMII2_TD3 */
|
|
AM62X_IOPAD(0x178, PIN_OUTPUT, 0)
|
|
/* (AE21) RGMII2_TXC */
|
|
AM62X_IOPAD(0x168, PIN_OUTPUT, 0)
|
|
/* (AA19) RGMII2_TX_CTL */
|
|
AM62X_IOPAD(0x164, PIN_OUTPUT, 0)
|
|
>;
|
|
};
|
|
|
|
main_spi0_pins: main-spi0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (A14) SPI0_CLK */
|
|
AM62X_IOPAD(0x1bc, PIN_OUTPUT, 0)
|
|
/* (A13) SPI0_CS0 */
|
|
AM62X_IOPAD(0x1b4, PIN_OUTPUT, 0)
|
|
/* (B13) SPI0_D0 */
|
|
AM62X_IOPAD(0x1c0, PIN_OUTPUT, 0)
|
|
/* (B14) SPI0_D1 */
|
|
AM62X_IOPAD(0x1c4, PIN_INPUT, 0)
|
|
>;
|
|
};
|
|
|
|
main_spi0_adc_pins: main-spi0-adc-pins {
|
|
pinctrl-single,pins = <
|
|
/* (G21) OSPI0_CSn1.GPIO0_12 - ADC_SYNC */
|
|
AM62X_IOPAD(0x030, PIN_INPUT, 7)
|
|
/* (H21) OSPI0_CSn2.GPIO0_13 - ADC_RST# */
|
|
AM62X_IOPAD(0x034, PIN_OUTPUT, 7)
|
|
/* (E24) OSPI0_CSn3.GPIO0_14 - ADC_DATA_RDY */
|
|
AM62X_IOPAD(0x038, PIN_INPUT, 7)
|
|
/* (B23) MMC2_SDWP.GPIO0_72 - ADC_INT# */
|
|
AM62X_IOPAD(0x128, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_uart0_pins: main-uart0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (D14) UART0_RXD */
|
|
AM62X_IOPAD(0x1c8, PIN_INPUT, 0)
|
|
/* (E14) UART0_TXD */
|
|
AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0)
|
|
>;
|
|
bootph-all;
|
|
};
|
|
|
|
main_uart1_pins: main-uart1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (E19) MCASP0_AFSR.UART1_RXD */
|
|
AM62X_IOPAD(0x1ac, PIN_INPUT, 2)
|
|
/* (A20) MCASP0_ACLKR.UART1_TXD */
|
|
AM62X_IOPAD(0x1b0, PIN_OUTPUT, 2)
|
|
>;
|
|
};
|
|
|
|
main_uart2_pins: main-uart2-pins {
|
|
pinctrl-single,pins = <
|
|
/* (U22) VOUT0_DATA0.UART2_RXD */
|
|
AM62X_IOPAD(0x0b8, PIN_INPUT, 4)
|
|
/* (V24) VOUT0_DATA1.UART2_TXD */
|
|
AM62X_IOPAD(0x0bc, PIN_OUTPUT, 4)
|
|
/* (AC24) VOUT0_PCLK.UART2_CTS# */
|
|
AM62X_IOPAD(0x104, PIN_INPUT, 4)
|
|
/* (AC25) VOUT0_VSYNC.UART2_RTS# */
|
|
AM62X_IOPAD(0x100, PIN_OUTPUT, 4)
|
|
>;
|
|
};
|
|
|
|
main_uart5_pins: main-uart5-pins {
|
|
pinctrl-single,pins = <
|
|
/* (Y23) VOUT0_DATA6.UART5_RXD */
|
|
AM62X_IOPAD(0x0d0, PIN_INPUT, 4)
|
|
/* (AA25) VOUT0_DATA7.UART5_TXD */
|
|
AM62X_IOPAD(0x0d4, PIN_OUTPUT, 4)
|
|
>;
|
|
};
|
|
|
|
main_usb0_pins: main-usb0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (C20) USB0_DRVVBUS */
|
|
AM62X_IOPAD(0x254, PIN_OUTPUT, 0)
|
|
/* (A23) MMC2_SDCD.GPIO0_71 */
|
|
AM62X_IOPAD(0x124, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
main_usb1_hub_pins: main-usb1-hub-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B15) UART0_RTSn.GPIO1_23 - USB_HUB_RESET */
|
|
AM62X_IOPAD(0x01d4, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
pwm_fan_pins: pwm-fan-pins {
|
|
pinctrl-single,pins = <
|
|
/* (C13) SPI0_CS1.EHRPWM0_B - FAN_PWM */
|
|
AM62X_IOPAD(0x01b8, PIN_OUTPUT, 2)
|
|
/* (A18) EXT_REFCLK1.GPIO1_30 - FAN_RPM */
|
|
AM62X_IOPAD(0x01f0, PIN_INPUT, 7)
|
|
>;
|
|
};
|
|
|
|
reg_3v3_sd_pins: reg-3v3-sd-pins {
|
|
pinctrl-single,pins = <
|
|
/* (A19) MCASP0_AXR2.GPIO1_8 */
|
|
AM62X_IOPAD(0x198, PIN_OUTPUT, 7)
|
|
>;
|
|
bootph-all;
|
|
};
|
|
|
|
reg_lvds_pwr_pins: reg-lvds-pwr-pins {
|
|
pinctrl-single,pins = <
|
|
/* (AB24) VOUT0_HSYNC.GPIO0_61 */
|
|
AM62X_IOPAD(0x00f8, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
reg_pwm_fan_pins: reg-pwm-fan-pins {
|
|
pinctrl-single,pins = <
|
|
/* (Y20) VOUT0_DE.GPIO0_62 */
|
|
AM62X_IOPAD(0x00fc, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
|
|
reg_sd_pins: reg-sd-pins {
|
|
pinctrl-single,pins = <
|
|
/* (P25) GPMC0_CLK.GPIO0_31 */
|
|
AM62X_IOPAD(0x07c, PIN_OUTPUT, 7)
|
|
>;
|
|
bootph-all;
|
|
};
|
|
};
|
|
|
|
&mcu_pmx0 {
|
|
mcu_gpio0_pins: mcu-gpio0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (E8) MCU_SPI0_CS0.MCU_GPIO0_0 - EN_DIG_OUT1 */
|
|
AM62X_MCU_IOPAD(0x000, PIN_OUTPUT, 7)
|
|
/* (B8) MCU_SPI0_CS1.MCU_GPIO0_1 - EN_DIG_OUT2 */
|
|
AM62X_MCU_IOPAD(0x004, PIN_OUTPUT, 7)
|
|
/* (A7) MCU_SPI0_CLK.MCU_GPIO0_2 - STATUS_OUT1 */
|
|
AM62X_MCU_IOPAD(0x008, PIN_INPUT, 7)
|
|
/* (D9) MCU_SPI0_D0.MCU_GPIO0_3 - STATUS_OUT2 */
|
|
AM62X_MCU_IOPAD(0x00c, PIN_INPUT, 7)
|
|
/* (C9) MCU_SPI0_D1.MCU_GPIO0_4 - EN_DIG_OUT3 */
|
|
AM62X_MCU_IOPAD(0x010, PIN_OUTPUT, 7)
|
|
/* (C6) WKUP_UART0_CTSn.MCU_GPIO0_11 - EN_DIG_OUT4 */
|
|
AM62X_MCU_IOPAD(0x02c, PIN_OUTPUT, 7)
|
|
/* (A4) WKUP_UART0_RTSn.MCU_GPIO0_12 - STATUS_OUT3 */
|
|
AM62X_MCU_IOPAD(0x030, PIN_INPUT, 7)
|
|
/* (A8) MCU_I2C0_SCL.MCU_GPIO0_17 - STATUS_OUT4 */
|
|
AM62X_MCU_IOPAD(0x044, PIN_INPUT, 7)
|
|
/* (D10) MCU_I2C0_SDA.MCU_GPIO0_18 - DIG_IN_1 */
|
|
AM62X_MCU_IOPAD(0x048, PIN_INPUT, 7)
|
|
/* (B9) WKUP_I2C0_SCL.MCU_GPIO0_19 - DIG_IN_2 */
|
|
AM62X_MCU_IOPAD(0x04c, PIN_INPUT, 7)
|
|
/* (A9) WKUP_I2C0_SDA.MCU_GPIO0_20 - DIG_IN_3 */
|
|
AM62X_MCU_IOPAD(0x050, PIN_INPUT, 7)
|
|
/* (A12) WKUP_CLKOUT0.MCU_GPIO0_23 - DIG_IN_4 */
|
|
AM62X_MCU_IOPAD(0x084, PIN_INPUT, 7)
|
|
/* (A6) MCU_UART0_CTSn.MCU_GPIO0_7 - V_VPP_EN */
|
|
AM62X_MCU_IOPAD(0x01c, PIN_OUTPUT, 7)
|
|
>;
|
|
};
|
|
mcu_mcan0_pins: mcu-mcan0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B3) MCU_MCAN0_RX */
|
|
AM62X_MCU_IOPAD(0x038, PIN_INPUT, 0)
|
|
/* (D6) MCU_MCAN0_TX */
|
|
AM62X_MCU_IOPAD(0x034, PIN_OUTPUT, 0)
|
|
>;
|
|
};
|
|
|
|
mcu_mcan1_pins: mcu-mcan1-pins {
|
|
pinctrl-single,pins = <
|
|
/* (D4) MCU_MCAN1_RX */
|
|
AM62X_MCU_IOPAD(0x040, PIN_INPUT, 0)
|
|
/* (E5) MCU_MCAN1_TX */
|
|
AM62X_MCU_IOPAD(0x03c, PIN_OUTPUT, 0)
|
|
>;
|
|
};
|
|
|
|
mcu_uart0_pins: mcu-uart0-pins {
|
|
pinctrl-single,pins = <
|
|
/* (B5) MCU_UART0_RXD */
|
|
AM62X_MCU_IOPAD(0x014, PIN_INPUT, 0)
|
|
/* (A5) MCU_UART0_TXD */
|
|
AM62X_MCU_IOPAD(0x018, PIN_OUTPUT, 0)
|
|
/* (B6) MCU_UART0_RTS# */
|
|
AM62X_MCU_IOPAD(0x020, PIN_OUTPUT, 0)
|
|
>;
|
|
};
|
|
};
|