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.

[参考译文] Linux/AM3351:更改调试 UART

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/666062/linux-am3351-changing-debug-uart

器件型号:AM3351

工具/软件:Linux

大家好、我使用的是 Processor SDK 3.00.00.04。

我正在尝试在 u-boot 中将调试端口更改为 UART 5。 我修改了以下更改、但仍无法获取调试日志。

---- >.config  

CONFIG_CONS_index=5

---- >board/ti/am335x/mux.c

静态结构 MODULE_PIN_mux uart4_PIN_mux[]={
   {offset (gmii1_txd3)、(mode (3)| PULLUP_EN | RXACTIVE)}、   /* UART4_RXD *
  {offset (gmii1_txd2)、(mode (3)| PULLUDEN)}、      // UART4_TXD *
   {-1}、

};

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

    您好、khageswararao、

    要更改调试控制台、只需更改两项:menuconfig 中的 UART 控制台 U-Boot 器件树中的 stdout-path。

    $ CD /
    $使 u-boot_clean &&使 u-boot
    $ cd board-support/u-boot- /
    $ arch=arm make menuconfig


    ARM 架构 -->(5)用于控制台的 UART
    退出
    退出
    是否要保存新配置?
    < Yes >(是>)
    $ cp .config configs/AM335x_evm_defconfig
    $ cd ./..

    将中 U-Boot 设备树中的 stdout-path =&uart0更改为 stdout-path =&uart5 /board-support/u-boot- /arch/arm/dts/am335x-evm.dts

    $使 u-boot_clean &&使 u-boot

    并使用新的 MLO 和 u-boot.img 启动电路板

    此致、
    Kemal

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我恢复了以前的所有更改。
    在菜单 config 中进行修改后、我在 AM335x_EVM_defconfig 文件中得到 CONFIG_CONS_index=5。

    在 arch/arm/dts/AM335x-evm.dts 中、我进行了以下更改。

    1. stdout-path = uart4;
    uart4_pins:pinmux_uart4_pins{
    pinctrl-single、pins =<
    0x11C (PIN_INPUT_PULLUP | MUX_MODE3)/* uart4rxd.uart0_RXD *
    0x120 (PIN_OUTPUT 下拉| MUX_MODE3)/* uart4txd.uart0_TXD *
    >;
    };
    {uart4}{(&U
    pinctrl-names ="default";
    pinctrl-0 =<uart4_PINs>;

    状态="正常";
    };

    在 board/ti/am335x/mux.c 中
    静态结构 MODULE_PIN_mux uart4_PIN_mux[]={
    //{offset (GPMC_wait0)、(mode (6)| PULLUP_EN | RXACTIVE)}、// UART4_RXD
    //{offset (GPMC_WPN)、(mode (6)| PULLUUDEN)}、// UART4_TXD *
    //{-1}、
    {PIN_GMII1_TXD3、(MODE (3)| PULLUP_EN | RXACTIVE)}、// UART4_RXD
    {PIN_GMII1_TXD2、(MODE (3)| PULLUUDEN)}、/* UART4_TXD */
    {-1}、
    };

    使用新的 MLO 和 u-boot.img 引导后

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

    您告诉我您可以使用此引脚多路复用编译 U-Boot 吗? 为什么您不遵循现有的引脚复用风格?
    请改用此方法、并从 rgmii1_pin_mux 和 mii1_pin_mux 中注释掉这些引脚、以确保它们不会在以后被覆盖。
       {offset (mii1_txd3)、(mode (3)| PULLUP_EN | RXACTIVE)}、   /* UART4_RXD *
       {offset (mii1_txd2)、(mode (3)| PULLUDEN)}、      // UART4_TXD *
    您的电路板基于哪种参考设计? 您确定是不是 /board-support/u-boot- /arch/arm/dts/am335x-evm.dts 是其设备树吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们将 EVM_SK 用于参考设计。
    在.config 中
    CONFIG_SYS_CONFIG_NAME="AM335x_EVM"

    在 mux.c 中
    静态结构 MODULE_PIN_mux uart4_PIN_mux[]={
    //{offset (GPMC_wait0)、(mode (6)| PULLUP_EN | RXACTIVE)}、// UART4_RXD
    //{offset (GPMC_WPN)、(mode (6)| PULLUUDEN)}、// UART4_TXD *
    //{-1}、
    {offset (mii1_txd3)、(mode (3)| PULLUP_EN | RXACTIVE)}、/* UART4_RXD *
    {offset (mii1_txd2)、(mode (3)| PULLUDEN)}、 /* UART4_TXD */
    {-1}、
    };
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    然后在中将 instdout-path 更改为&uart4 /board-support/u-boot- /arch/arm/dts/am335x-evmsk.dts

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢 Kemal。 现在它在工作
    更改了 /board-support/u-boot- /arch/arm/dts/am335x-evmsk.dts

    修改后的 stdout-path =&uart0;到 stdout-path =&uart4;
    在 uart4的 pinmux 下添加

    uart4_pins:pinmux_uart4_pins{
    pinctrl-single、pins =<
    0x11C (PIN_INPUT_PULLUP | MUX_MODE3)/* uart4rxd.uart0_RXD *
    0x120 (PIN_OUTPUT 下拉| MUX_MODE3)/* uart4txd.uart0_TXD *
    >;
    };
    uart4{(&U)
    pinctrl-names ="default";
    pinctrl-0 =<uart4_PINs>;

    状态="正常";
    };

    3.不可寻址的 Mac 支持(我使用相同的引脚来支持 uart4)
    #if 0
    Mac{(&M)
    pinctrl-names ="default"、"sleep";
    pinctrl-0 =<&cpsw_default>;
    pinctrl-1 =<&cpsw_sleep>;
    DUAL_EMAC =<1>;
    状态="正常";
    };
    #endif


    4.增加了对通过 rootfs 中的 uart4登录的支持
    VI /etc/securetty
    #标准串行端口
    ttyS0
    ttyS1
    ttyS2
    ttyS3
    ttyS4 /*已添加用于 uart4登录*/