// SPDX-License-Identifier: GPL-2.0 /* * AM625 SK: https://www.ti.com/lit/zip/sprr448 * * Copyright (C) 2021-2022 Texas Instruments Incorporated - https://www.ti.com/ */ /dts-v1/; #include "k3-am62x-sk-common.dtsi" / { compatible = "ti,am625-sk", "ti,am625"; model = "Texas Instruments AM625 Gree after loading Host Board V01"; opp-table { /* Add 1.4GHz OPP for am625-sk board. Requires VDD_CORE to be at 0.85V */ opp-1400000000 { opp-hz = /bits/ 64 <1400000000>; opp-supported-hw = <0x01 0x0004>; clock-latency-ns = <6000000>; }; }; memory@80000000 { device_type = "memory"; /* 512M RAM */ reg = <0x00000000 0x80000000 0x00000000 0x20000000>; }; vmain_pd: regulator-0 { /* TPS65988 PD CONTROLLER OUTPUT */ compatible = "regulator-fixed"; regulator-name = "vmain_pd"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; regulator-always-on; regulator-boot-on; }; vcc_5v0: regulator-1 { /* Output of LM34936 */ compatible = "regulator-fixed"; regulator-name = "vcc_5v0"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; vin-supply = <&vmain_pd>; regulator-always-on; regulator-boot-on; }; vcc_3v3_sys: regulator-2 { /* output of LM61460-Q1 */ compatible = "regulator-fixed"; regulator-name = "vcc_3v3_sys"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; vin-supply = <&vmain_pd>; regulator-always-on; regulator-boot-on; }; vdd_mmc1: regulator-3 { /* TPS22918DBVR */ compatible = "regulator-fixed"; regulator-name = "vdd_mmc1"; pinctrl-names = "default"; pinctrl-0 = <&vdd_sd_en_pins_default>; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-boot-on; enable-active-high; vin-supply = <&vcc_3v3_sys>; gpio = <&main_gpio0 63 GPIO_ACTIVE_HIGH>; }; vdd_sd_dv: regulator-4 { /* Output of TLV71033 */ compatible = "regulator-gpio"; regulator-name = "tlv71033"; pinctrl-names = "default"; pinctrl-0 = <&vdd_sd_dv_pins_default>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3300000>; regulator-boot-on; vin-supply = <&vcc_5v0>; gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>; states = <1800000 0x0>, <3300000 0x1>; }; vcc_1v8: regulator-5 { /* output of TPS6282518DMQ */ compatible = "regulator-fixed"; regulator-name = "vcc_1v8"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; vin-supply = <&vcc_3v3_sys>; regulator-always-on; regulator-boot-on; }; wlan_lten: regulator-6 { status = "disable"; compatible = "regulator-fixed"; regulator-name = "wlan_lten"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; vin-supply = <&vcc_3v3_sys>; gpios = <&exp1 11 GPIO_ACTIVE_LOW>; }; wlan_en: regulator-7 { status = "disable"; compatible = "regulator-fixed"; regulator-name = "wlan_en"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; vin-supply = <&wlan_lten>; enable-active-high; gpios = <&main_gpio0 71 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&wlan_en_pins_default>; }; vdd_core: regulator-8 { /* output of TPS62826DMQ */ compatible = "regulator-fixed"; regulator-name = "vdd_core"; regulator-min-microvolt = <850000>; regulator-max-microvolt = <850000>; vin-supply = <&vcc_3v3_sys>; regulator-always-on; regulator-boot-on; }; /*Gree device tree*/ aliases { serial3 = &main_uart1; serial4 = &main_uart2; serial5 = &main_uart5; serial6 = &main_uart6; serial7 = &main_uart3; }; /* leds */ leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_leds>; status = "ok"; led0 { /* (M21) GPIO0_41 */ label = "led_core"; gpios = <&main_gpio0 41 GPIO_ACTIVE_LOW>; default-state = "on"; }; led1 { /* (L21) GPIO0_42 */ label = "led_CAN"; gpios = <&main_gpio0 42 GPIO_ACTIVE_LOW>; default-state = "on"; }; led2 { /* (K22) GPIO0_43 */ label = "led_485"; gpios = <&main_gpio0 43 GPIO_ACTIVE_LOW>; default-state = "off"; }; led3 { /* (K24) GPIO0_44 */ label = "led_net"; gpios = <&main_gpio0 44 GPIO_ACTIVE_LOW>; default-state = "off"; }; led4 { /* (Y25) GPIO0_49 */ label = "led_sys"; gpios = <&main_gpio0 49 GPIO_ACTIVE_LOW>; default-state = "off"; }; }; /* keys */ gpio-keys { compatible = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_keys>; status = "okay"; key1 { gpios = <&main_gpio0 35 GPIO_ACTIVE_LOW>; linux,code = <240>; /*KEY_UNKNOWN*/ }; }; can_gpios { compatible = "gpio-leds"; /*暂使用led驱动*/ pinctrl-names = "default"; pinctrl-0 = <&main_mcan0_gpio_pins_default>; status = "okay"; main_mcan0_inversions { gpios = <&main_gpio1 27 GPIO_ACTIVE_LOW>; label = "main_mcan0_inv"; default-state = "low"; }; }; rs485_gpios { compatible = "gpio-leds"; /*暂使用led驱动*/ pinctrl-names = "default"; pinctrl-0 = <&rs485_gpio_pins_default>; status = "okay"; rs485_1_enable { gpios = <&main_gpio1 30 GPIO_ACTIVE_HIGH>; label = "rs485_1_en"; default-state = "high"; }; /* rs485_2_enable { gpios = <&main_gpio1 9 GPIO_ACTIVE_HIGH>; label = "rs485_2_en"; default-state = "high"; }; */ rs485_1_inversions { gpios = <&main_gpio1 8 GPIO_ACTIVE_LOW>; label = "rs485_1_inv"; default-state = "low"; }; /* rs485_2_inversions { gpios = <&main_gpio1 7 GPIO_ACTIVE_LOW>; label = "rs485_2_inv"; default-state = "low"; }; */ }; /*wdt*/ wdt { compatible = "gpio-leds"; /*暂使用led驱动*/ status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&wdt_pins_default>; wdt_set { label = "wdtSet"; gpios = <&main_gpio1 15 GPIO_ACTIVE_HIGH>; /* 高电平使能 , 1输出高*/ default-state = "off"; }; wdt_wdi { label = "wdtWDI"; gpios = <&main_gpio1 17 GPIO_ACTIVE_LOW>; /* 下降沿喂狗*/ default-state = "high"; }; }; // wifi_io { // compatible = "gpio-leds"; /*暂使用led驱动*/ // status = "oka y"; // pinctrl-names = "default"; // pinctrl-0 = <&wifi_en_pins_default>; // wifi_enble { // label = "wifiEn"; // gpios = <&main_gpio0 71 GPIO_ACTIVE_HIGH>; /* 下降沿喂狗*/ // default-state = "on"; /* 使用"on"而不是"high" */ // linux,default-trigger = "default-on"; // }; // }; wifi_en { compatible = "regulator-fixed"; regulator-name = "wifi-en-regulator"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; // gpio = <&main_gpio0 71 GPIO_ACTIVE_HIGH>; gpio = <&main_gpio0 71 GPIO_ACTIVE_HIGH>; enable-active-high; regulator-always-on; /* 确保上电就启用 */ pinctrl-names = "default"; pinctrl-0 = <&wifi_en_pins_default>; }; rmii_ref_clk: rmii-ref-clock { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <50000000>; status = "okay"; }; }; &main_pmx0 { main_rgmii2_pins_default: main-rgmii2-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */ AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */ AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */ AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */ AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */ AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */ AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */ AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */ AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */ AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */ AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */ AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */ >; }; main_rmii_pins_default: main-rmii-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x14c, PIN_INPUT, 1) /* (AB17/W15) RMII1_RD0 */ AM62X_IOPAD(0x150, PIN_INPUT, 1) /* (AC17/Y16) RMII1_RD1 */ AM62X_IOPAD(0x148, PIN_INPUT, 1) /* (AD17/AA16) RMII1_REF_CLK */ AM62X_IOPAD(0x144, PIN_INPUT, 1) /* (AE17/W14) RMII1_RX_CTL */ AM62X_IOPAD(0x134, PIN_OUTPUT, 1) /* (AE20/U14) RMII1_TD0 PIN_OUTPUT*/ AM62X_IOPAD(0x138, PIN_OUTPUT, 1) /* (AD20/AA19) RMII1_TD1 PIN_OUTPUT*/ AM62X_IOPAD(0x130, PIN_INPUT, 1) /* (AE19/W16) RMII1_CRS_DV */ AM62X_IOPAD(0x12c, PIN_OUTPUT, 1) /* (AD19/V15) RMII1_TX_EN PIN_OUTPUT*/ >; }; ospi0_pins_default: ospi0-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK */ AM62X_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */ AM62X_IOPAD(0x00c, PIN_INPUT, 0) /* (E25) OSPI0_D0 */ AM62X_IOPAD(0x010, PIN_INPUT, 0) /* (G24) OSPI0_D1 */ AM62X_IOPAD(0x014, PIN_INPUT, 0) /* (F25) OSPI0_D2 */ AM62X_IOPAD(0x018, PIN_INPUT, 0) /* (F24) OSPI0_D3 */ AM62X_IOPAD(0x01c, PIN_INPUT, 0) /* (J23) OSPI0_D4 */ AM62X_IOPAD(0x020, PIN_INPUT, 0) /* (J25) OSPI0_D5 */ AM62X_IOPAD(0x024, PIN_INPUT, 0) /* (H25) OSPI0_D6 */ AM62X_IOPAD(0x028, PIN_INPUT, 0) /* (J22) OSPI0_D7 */ AM62X_IOPAD(0x008, PIN_INPUT, 0) /* (J24) OSPI0_DQS */ >; }; vdd_sd_dv_pins_default: vdd-sd-dv-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x07c, PIN_OUTPUT, 7) /* (P25) GPMC0_CLK.GPIO0_31 */ >; }; vdd_sd_en_pins_default:vdd_sd_en_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x0100, PIN_OUTPUT, 7) /* (AC25) GPIO0_63 */ >; }; main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x01d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ >; }; wlan_en_pins_default: wlan-en-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x124, PIN_OUTPUT, 7) /* (A23) MMC2_SDCD.GPIO0_71 */ >; }; main_mmc2_pins_default: main-mmc2-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x120, PIN_INPUT, 0) /* (C24) MMC2_CMD */ AM62X_IOPAD(0x118, PIN_INPUT, 0) /* (D25) MMC2_CLK */ AM62X_IOPAD(0x114, PIN_INPUT, 0) /* (B24) MMC2_DAT0 */ AM62X_IOPAD(0x110, PIN_INPUT, 0) /* (C25) MMC2_DAT1 */ AM62X_IOPAD(0x10c, PIN_INPUT, 0) /* (E23) MMC2_DAT2 */ AM62X_IOPAD(0x108, PIN_INPUT, 0) /* (D24) MMC2_DAT3 */ >; }; main_wlirq_pins_default: main-wlirq-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x128, PIN_INPUT, 7) /* (B23) MMC2_SDWP.GPIO0_72 */ >; }; wifi_en_pins_default:wifi_en_pins_default{ pinctrl-single,pins = < AM62X_IOPAD(0x0124, PIN_OUTPUT, 7) /*(A23) GPIO0_71 */ >; }; }; &main_i2c1 { status = "disable"; exp1: gpio@22 { compatible = "ti,tca6424"; reg = <0x22>; gpio-controller; #gpio-cells = <2>; gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST", "PRU_DETECT", "MMC1_SD_EN", "VPP_LDO_EN", "EXP_PS_3V3_En", "EXP_PS_5V0_En", "EXP_HAT_DETECT", "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn", "UART1_FET_BUF_EN", "WL_LT_EN", "GPIO_HDMI_RSTn", "CSI_GPIO1", "CSI_GPIO2", "PRU_3V3_EN", "HDMI_INTn", "PD_I2C_IRQ", "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", "MCASP1_FET_SEL", "UART1_FET_SEL", "TSINT#", "IO_EXP_TEST_LED"; interrupt-parent = <&main_gpio1>; interrupts = <23 IRQ_TYPE_EDGE_FALLING>; interrupt-controller; #interrupt-cells = <2>; pinctrl-names = "default"; pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>; }; }; &sdhci1 { status = "okay"; vmmc-supply = <&vdd_mmc1>; }; &sdhci0 { /* no-1-8-v; */ }; &sdhci2 { /* status = "okay"; vmmc-supply = <&vcc_3v3_sys>; pinctrl-names = "default"; pinctrl-0 = <&main_mmc2_pins_default>; /delete-property/ ti,clkbuf-sel; // 删除 SD 卡专用属性 /delete-property/ ti,otap-del-sel-*; // 删除所有 SD 卡时序调整参数 /delete-property/ ti,itap-del-sel-*; bus-width = <4>; non-removable; ti,fails-without-test-cd; // cap-power-off-card; keep-power-in-suspend; assigned-clocks = <&k3_clks 157 158>; assigned-clock-parents = <&k3_clks 157 163>; // no-1-8-v; cap-sd-highspeed; max-frequency = <50000000>; #address-cells = <1>; #size-cells = <0>; // wifi_enable-gpios = <&main_gpio0 72 GPIO_ACTIVE_HIGH>; wifi: wifi@1 { compatible = "airoha,aic8800"; reg = <1>; }; */ status = "okay"; // bootph-all; vmmc-supply = <&vcc_3v3_sys>; pinctrl-names = "default"; pinctrl-0 = <&main_mmc2_pins_default>; /delete-property/ ti,clkbuf-sel; // 删除 SD 卡专用属性 /delete-property/ ti,otap-del-sel-*; // 删除所有 SD 卡时序调整参数 /delete-property/ ti,itap-del-sel-*; bus-width = <4>; non-removable; ti,fails-without-test-cd; // cap-power-off-card; keep-power-in-suspend; assigned-clocks = <&k3_clks 157 158>; assigned-clock-parents = <&k3_clks 157 163>; // no-1-8-v; cap-sd-highspeed; max-frequency = <50000000>; #address-cells = <1>; #size-cells = <0>; // wifi_enable-gpios = <&main_gpio0 72 GPIO_ACTIVE_HIGH>; wifi: wifi@1 { compatible = "airoha,aic8800"; reg = <1>; }; }; &cpsw3g { pinctrl-names = "default"; /* pinctrl-0 = <&main_rgmii1_pins_default &main_rgmii2_pins_default>; */ pinctrl-0 = <&main_rmii_pins_default>; // clocks = <&k3_clks 162 5>; // assigned-clocks = <&k3_clks 162 5>; // assigned-clock-parents = <&k3_clks 157 >; /* 选择正确的PLL */ cpts@3d000 { /* MAP HW3_TS_PUSH to GENF1 */ ti,pps = <2 1>; }; cpsw-phy-sel@4044 { compatible = "ti,am62-cpsw-phy-sel"; reg = <0x00 0x04044 0x00 0x04>; // 64位格式 reg-names = "gmii-sel"; ti,rmii-clk-input; // 关键!RMII模式必须设置 }; }; /* &cpsw3g_phy0 { reg = <1>; }; */ &cpsw_port1 { phy-mode = "rmii"; /*rgmii-rxid*/ phy-handle = <&cpsw3g_phy1>; }; &cpsw_port2 { status = "disable"; /*phy-mode = "rmii"; rgmii-rxid phy-handle = <&cpsw3g_phy1>;*/ }; &cpsw3g_mdio { cpsw3g_phy1: ethernet-phy@1 { // compatible = "ethernet-phy-id0000.010a" ,"motorcomm,yt8511"; // 使用YT8512C的实际PHY ID reg = <3>; phy-mode = "rmii"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_phy_reset>; // 关联引脚复用配置 reset-gpios = <&main_gpio0 83 GPIO_ACTIVE_LOW>; reset-assert-us = <11000>; //11ms reset-deassert-us = <110000>; //110ms /* 配置 PLL:25MHz 输入 ×5 = 125MHz */ // motorcomm,clk-out-frequency-hz = <125000000>; clocks = <&rmii_ref_clk>; clock-names = "rmii-ref"; assigned-clocks = <&rmii_ref_clk>; // 强制时钟分配 assigned-clock-rates = <25000000>; // 明确输入频率25MHz ti,rx-internal-delay = <8>; ti,tx-internal-delay = <8>; motorcomm,clk-out-frequency-hz = <50000000>; // PHY 输出 50MHz REF_CLK // ti,fifo-depth = <4>; // ti,min-output-impedance; }; }; &ospi0 { status = "disable"; /*Gree config*/ pinctrl-names = "default"; pinctrl-0 = <&ospi0_pins_default>; flash@0{ compatible = "jedec,spi-nor"; reg = <0x0>; spi-tx-bus-width = <8>; spi-rx-bus-width = <8>; spi-max-frequency = <25000000>; cdns,tshsl-ns = <60>; cdns,tsd2d-ns = <60>; cdns,tchsh-ns = <60>; cdns,tslch-ns = <60>; cdns,read-delay = <4>; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; partition@0 { label = "ospi.tiboot3"; reg = <0x0 0x80000>; }; partition@80000 { label = "ospi.tispl"; reg = <0x80000 0x200000>; }; partition@280000 { label = "ospi.u-boot"; reg = <0x280000 0x400000>; }; partition@680000 { label = "ospi.env"; reg = <0x680000 0x40000>; }; partition@6c0000 { label = "ospi.env.backup"; reg = <0x6c0000 0x40000>; }; partition@800000 { label = "ospi.rootfs"; reg = <0x800000 0x37c0000>; }; partition@3fc0000 { label = "ospi.phypattern"; reg = <0x3fc0000 0x40000>; }; }; }; }; &tlv320aic3106 { DVDD-supply = <&vcc_1v8>; }; #define K3_TS_OFFSET(pa, val) (0x4+(pa)*4) (0x10000 | val) ×ync_router { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&cpsw_cpts>; /* Use Time Sync Router to map GENF1 input to HW3_TS_PUSH output */ cpsw_cpts: cpsw-cpts { pinctrl-single,pins = < /* pps [cpsw cpts genf1] in17 -> out12 [cpsw cpts hw3_push] */ K3_TS_OFFSET(12, 17) >; }; }; /*gree test address*/ &dss { status = "disable"; }; &hdmi0 { status = "disable"; }; //pin config address // /*K24 在main_i2c2用到,需要失能*/ &main_i2c2 { status = "disable"; }; &main_pmx0 { pinctrl_leds: pinctrl_leds { pinctrl-single,pins = < AM62X_IOPAD(0x0A8, PIN_OUTPUT, 7) /* (M21) GPIO0_41 */ AM62X_IOPAD(0x0AC, PIN_OUTPUT, 7) /* (L21) GPIO0_42 */ AM62X_IOPAD(0x0B0, PIN_OUTPUT, 7) /* (K22) GPIO0_43 */ AM62X_IOPAD(0x0B4, PIN_OUTPUT, 7) /* (K24) GPIO0_44 */ AM62X_IOPAD(0x0C8, PIN_OUTPUT, 7) /* (Y25) GPIO0_49 */ >; }; pinctrl_keys: pinctrl_keys { pinctrl-single,pins = < AM62X_IOPAD(0x090, PIN_INPUT, 7) /* (M24) GPIO0_35 */ AM62X_IOPAD(0x094, PIN_INPUT, 7) /* (N20) GPIO0_36 */ >; }; pinctrl_phy_reset: pinctrl_phy_reset { pinctrl-single,pins = < AM62X_IOPAD(0x0154, PIN_OUTPUT, 7) /* (AB16) GPIO0_83 */ >; }; }; /* can */ &main_pmx0 { main_mcan0_pins_default: main-mcan0-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x01dc, PIN_INPUT, 0) /* (E15) MCAN0_RX */ AM62X_IOPAD(0x01d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */ >; }; main_mcan0_gpio_pins_default: main_mcan0_gpio_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x01e8, PIN_OUTPUT, 7) /* (A17) GPIO1_27 */ >; }; }; &mcu_pmx0 { mcu_mcan0_pins_default: mcu-mcan0-pins-default { pinctrl-single,pins = < AM62X_MCU_IOPAD(0x0038, PIN_INPUT, 0) /* (B3) MCU_MCAN0_RX */ AM62X_MCU_IOPAD(0x0034, PIN_OUTPUT, 0) /* (D6) MCU_MCAN0_TX */ >; }; mcu_mcan0_inv: mcu_mcan0_inv { pinctrl-single,pins = < AM62X_MCU_IOPAD(0x0020, PIN_OUTPUT, 7) /* (B6) MCU_GPIO0_8 */ >; }; }; &mcu_mcan0 { status = "diable"; pinctrl-names = "default"; pinctrl-0 = <&mcu_mcan0_pins_default>; label = "can0"; }; &main_mcan0 { pinctrl-names = "default"; pinctrl-0 = <&main_mcan0_pins_default>; status = "okay"; }; // /* UART*/ /*RS485*/ &main_i2c1 { status = "disable"; }; &main_pmx0 { rs485_1_pins_default: rs485_1_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x01d0, PIN_INPUT, 3) /* (A15) UART2_RXD */ AM62X_IOPAD(0x01d4, PIN_OUTPUT, 3) /* (B15) UART2_TXD */ >; }; rs485_gpio_pins_default: rs485_gpio_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x01f0, PIN_OUTPUT, 7) /* (A18) GPIO1_30 rs485_1_en*/ /* AM62X_IOPAD(0x019c, PIN_OUTPUT, 7) (B18) GPIO1_9 rs485_2_en*/ AM62X_IOPAD(0x0198, PIN_OUTPUT_PULLDOWN, 7) /* (A19) GPIO1_8 rs485_1_inv*/ /* AM62X_IOPAD(0x0194, PIN_OUTPUT_PULLDOWN, 7) (B19) GPIO1_7 rs485_2_inv*/ >; }; bt_pins_default: bt_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x00c0, PIN_INPUT, 4) /* (W25) UART3_RXD */ AM62X_IOPAD(0x00c4, PIN_OUTPUT, 4) /* (W24) UART3_TXD */ AM62X_IOPAD(0x00fc, PIN_INPUT, 4) /* (Y20) UART3_CTSn */ AM62X_IOPAD(0x00f8, PIN_OUTPUT, 4) /* (AB24) UART3_RTSn */ >; }; gmesh_pins_default:gmesh_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x00d0, PIN_INPUT, 4) /* (Y23) UART5_RXD */ AM62X_IOPAD(0x00d4, PIN_OUTPUT, 4) /* (AA25) UART5_TXD */ >; }; voice_pins_default:voice_pins_default { pinctrl-single,pins = < AM62X_IOPAD(0x001c, PIN_INPUT, 3) /* (J23) UART6_RXD */ AM62X_IOPAD(0x0020, PIN_OUTPUT, 3) /* (J25) UART6_TXD */ >; }; }; &main_uart2 { pinctrl-names = "default"; pinctrl-0 = <&rs485_1_pins_default>; status = "okay"; }; /* bluetooth */ &main_uart3 { pinctrl-names = "default"; pinctrl-0 = <&bt_pins_default>; current-speed = <1500000>; // 设置安全初始波特率 hw-flow-control; // 启用硬件流控 status = "okay"; }; /*fastcon*/ &main_uart5 { pinctrl-names = "default"; pinctrl-0 = <&gmesh_pins_default>; status = "okay"; }; /*module voice*/ &main_uart6 { pinctrl-names = "default"; pinctrl-0 = <&voice_pins_default>; status = "disable"; }; /*WDT*/ &main_pmx0 { wdt_pins_default: wdt_pins_default{ pinctrl-single,pins = < AM62X_IOPAD(0x01bc, PIN_OUTPUT, 7) /* (A14) GPOIO1_17 */ AM62X_IOPAD(0x01b4, PIN_OUTPUT, 7) /* (A13) GPOIO1_15 */ >; }; }; &mcasp1 { status = "disable"; }; &pruss { status = "disable"; }; &gpu { status = "disable"; }; &main_rti15 { status = "disable"; };