This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM625:AM62x SKEVM UART

Guru**** 2546020 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1417675/am625-am62x-skevm-uart

器件型号:AM625

工具与软件:

您好!

我们正在开发 电路板:AM62x SKEVM 和 SDK 版本:10.00.07.04、以便在 User Expension 或 MCU 标头中添加4个 UART。 我们已成功在  下面添加了带有 dtso 代码的三个 UART EXP_UART5、EXP_UART1和 EXP_UART6。  

k3-am62x-sk-uarts.dtso:

#include "k3-pinctrl.h"

&main_pmx0 {
        user_exp_uart1_pins_default: user-exp_uart1_pins_default {
                pinctrl-single,pins = <
                        AM62X_IOPAD(0x01b0, PIN_OUTPUT, 2) /* (A20) EXP_UART1_TXD  */
                        AM62X_IOPAD(0x01ac, PIN_INPUT, 2) /* (E19) EXP_UART1_RXD  */
                >;
        };

        user_exp_uart5_pins_default: user-exp_uart5_pins_default {
                pinctrl-single,pins = <
                        AM62X_IOPAD(0x01dc, PIN_OUTPUT, 1) /* (E15) EXP_UART5_TXD  */
                        AM62X_IOPAD(0x01d8, PIN_INPUT, 1) /* (C15) EXP_UART5_RXD  */
                >;
        };

        user_exp_uart6_pins_default: user-exp_uart6_pins_default {
                pinctrl-single,pins = <
                        AM62X_IOPAD(0x00a0, PIN_OUTPUT, 3) /* (K25) EXP_UART6_TXD  */
                        AM62X_IOPAD(0x009c, PIN_INPUT, 3) /* (V25) EXP_UART6_RXD  */
                >;
        };

        user_exp_uart2_pins_default: user-exp_uart2_pins_default {
                pinctrl-single,pins = <
                        AM62X_IOPAD(0x01a0, PIN_OUTPUT, 5) /* (E18) PR0_UART0_TXD  */
                        AM62X_IOPAD(0x019c, PIN_INPUT, 5) /* (B18) PR0_UART0_RXD  */
                >;
        };
};

&mcu_pmx0{
        mcu_uart0_pins_default: mcu-uart0-pins-default {
                pinctrl-single,pins = <
                        /* AM62X_MCU_IOPAD(0x001c, PIN_INPUT, 0) /* MCU_UART0_CTSn */
                        /* AM62X_MCU_IOPAD(0x0020, PIN_OUTPUT, 0) /* MCU_UART0_RTSn */
                        AM62X_MCU_IOPAD(0x0018, PIN_OUTPUT, 0) /* MCU_UART0_TXD */
                        AM62X_MCU_IOPAD(0x0014, PIN_INPUT, 0) /* MCU_UART0_RXD */
                >;
        };
};

&main_uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&user_exp_uart1_pins_default>;
        status = "okay";
};

&main_uart5 {
        pinctrl-names = "default";
        pinctrl-0 = <&user_exp_uart5_pins_default>;
        status = "okay";
};

&main_uart6 {
        pinctrl-names = "default";
        pinctrl-0 = <&user_exp_uart6_pins_default>;
        status = "okay";
};

&main_uart2 {
        pinctrl-names = "default";
        pinctrl-0 = <&user_exp_uart2_pins_default>;
        status = "okay";
};

&mcu_uart0 {
        pinctrl-names = "default", "wakeup";
        pinctrl-0 = <&mcu_uart0_pins_default>;
        status = "okay";
};

k3-am62x-sk-common.dtsi:

#include <dt-bindings/leds/common.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/net/ti-dp83867.h>
#include "k3-am625.dtsi"

/ {
        aliases {
                serial1 = &main_uart1;
                serial2 = &main_uart0;
                serial5 = &main_uart5;
                serial6 = &main_uart6;
                serial0 = &main_uart2;
                serial7 = &mcu_uart0;
                mmc0 = &sdhci0;
                mmc1 = &sdhci1;
                mmc2 = &sdhci2;
                spi0 = &ospi0;
                ethernet0 = &cpsw_port1;
                ethernet1 = &cpsw_port2;
                usb0 = &usb0;
                usb1 = &usb1;
        };

不过、MCU_UART0和 PR0_UART0未正常工作、尽管在 shell 中说明了此问题、如下所示。

PR0_UART0不在 TXD 线路(40引脚用户扩展连接器的引脚33)上输出任何逻辑信号。

是否有任何其他配置可使用  PR0_UART0?

2.MCU_UART0保持挂起等不动作。

对于  MCU_UART0、禁用流控制没有区别。 流控制似乎会影响功能。

是否有任何方法可以禁用流控制

提前感谢、

KAL

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Kal:

    请附上完整的 Linux 启动日志。

    PR0_UART0是什么? 是 PRUSS 中的 UART 模块吗? 如果是这样、这个 UART 未在 k3-am62-main.dtsi 中定义、在 SDK10.0中不受支持。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    非常感谢 Bin、

    请参阅随附的引导日志。

    e2e.ti.com/.../am62x_2D00_sk_2D00_boot.log

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Kal:

    感谢您的参与。 它显示 MCU UART 在 Linux 引导期间进行初始化。

    Unknown 说:
    2. MCU_UART0不执行任何操作、例如挂起。

    请尝试从根文件系统中删除以下文件、然后重新启动电路板、再次测试 MCU UART 以查看问题是否已解决。

    /lib/firmware/am62-mcu-m4f0_0-fw
    /lib/firmware/am62-mcu-m4f0_0-fw-sec

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    非常感谢 Bin、

    根据您的建议解决了问题。