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.

[参考译文] DRA821U-Q1:如何在 Linux 上配置以太网?

Guru**** 2481775 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1445396/dra821u-q1-how-config-ethernet-on-linux

器件型号:DRA821U-Q1
主题中讨论的其他器件:DRA821

工具与软件:

您好!

  我们使用定制电路板、以太网信息如下所示:

 我们的 SDK 版本是7.3、

 如何配置以太网?  

 此外、我们可以获取 MCU2_0日志信息。

 请帮助我们

 谢谢。

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

    您好!

    这里我假设您使用 ethfw 作为以太网控制器。 您能否满足这一要求?

    Plesae 在"ethfw/apps/app_remoteswitchcfg_server/mcu_2_0/main_tirtos.c"文件中配置 tehrnet

    有关详情、请参阅: software-dl.ti.com/.../ethfw_c_ug_top.html

     此外、如何获取 MCU2_0日志信息、我们可以获取它。

    您应该能够使用命令"cat /sys/kernel/debug/remoteproc/remoteproc */ trace0"获取日志

    此外、如果可能、请考虑切换到较新版本、因为 SDK 7.3不支持在较新版本中添加的许多功能

    此致、
    Tanmay

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

    您好!

      是的、我们使用 ethfw 映像作为以太网控制器。  

       最初、我们使用的是 SDK 版本10.0、但 MCU2_0未能正确启动。 然后我们切换到了 SDK 8.6.3、但遇到了同样的问题。 当我们切换到 SDK 7.3时、MCU2_0能够正常启动。 但是,当检查文件的内容时 /sys/kernel/debug/remoteproc/remoteproc2/trace0,它只显示一组星号(*)而没有其他信息。

       根据 SDK 7.3的版本、该 ifconfig 命令只能看到 eth0 设备、而不能看到任何其他 eth*设备。

      因此、我们希望与您确认网络配置的详细信息。

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

    您好!

      我们构建 ehtfw 映像、获取"app_remoteswitchcfg_server_strip.xer5f"、并创建软链接"j7200-main-r5f0_0-fw -> ethfw/app_remoteswitchcfg_server_strip.xer5f"

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

    您好!

     最初、我们使用的是 SDK 版本10.0、但 MCU2_0无法正确启动。 [报价]

    MCU2_0假设在 SDK 10.0中运行。

    7.3是一个非常旧的 SDK、在最新的 SDK 中修复了许多错误并改进了相关功能。

    建议始终使用最新的 SDK。

     我们构建 ehtfw 映像、获取"app_remoteswitchcfg_server_strip.xer5f"并创建 softlink "j7200-main-r5f0_0-fw -> ethfw/app_witchtescfg_server_strip.xer5f"

    CPSW 端口配置在 ETHFW 中完成、不会配置串行器/解串器。
    此外、默认情况下、ETHFW 会根据 TI EVM 在 QSGMII 模式下启用端口。 您需要在 ETHFW 中进行特定于电路板的更改。
    请参阅 ETHFW 移植指南、以根据特定于定制电路板的更新。

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-j7200/10_00_00_03/exports/docs/ethfw/docs/user_guide/ethfw_c_porting_top.html

    其中串行器/解串器是从 U-boot 配置的。 如果未启用 u-boot 或未配置串行器/解串器、则 Linux 将配置串行器/解串器。
    请在 u-boot 或 Linux 中将串行器/解串器节点更新为 SGMII 中的前3个通道(通道:0、1、2)和 USB 中的4个通道(通道:3)。

    此致、
    Sudheer

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

    您好!  

     根据"Linux/SERDES/Kernel/4011SERDES/SERDES.html" Foundational_Components、当我们修改 &serdes_ln_ctrl 设备树文件中的信息时、会发生编译错误 Kernel_Drivers。 我们应该如何正确配置它?

     将 QSGMII 更改为 SGMII 后、会报告语法错误。

    &serdes_ln_ctrl {
        idle-states = <J7200_SERDES0_LANE0_SGMII_LANE3>, <J7200_SERDES0_LANE1_SGMII_LANE4>,
                  <J7200_SERDES0_LANE2_SGMII_LANE1>, <J7200_SERDES0_LANE3_USB>;
    };
    
    

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

    您好!

    [报价 userid="521626" url="~/support/processors-group/processors/f/processors-forum/1445396/dra821u-q1-how-config-ethernet-on-linux/5548014 #5548014"]  将 QSGMII 更改为 SGMII 后、会报告语法错误。 [报价]

    即使我们在通道控制中使用 QSGMII、串行器/解串器通道控制也可以正常工作、该功能会为 CPSW 启用串行器/解串器。

    从日志中可以看到、MCU2_0和 MCU2_1内核似乎未连接 remoteproc。

    最新的 SDK 不支持 CAN 引导。 我们只有来自 LAets SDK 的引导应用程序。 请参阅 SDK 文档。

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-j7200/10_00_00_03/exports/docs/pdk_j7200_10_00_00_27/docs/userguide/j7200/boot/boot_app.html

    此外、我还看到您正在从 Linux 启用 CPSW 以及 ETHFW MCU2_0映像。 它应该通过一个应用程序(即 MCU2_0 ETHFW 或本机 Linux 驱动程序)启用。

    此致、
    Sudheer

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

      1.我们使用命令" 使 Board=j7200_evm core=mcu1_0 boot_app_mmcsd_linux -sj "并获取图像" sbl_boot_app_mmcsd_linux_j7200_evm_mcu1_0_freertos_TestApp_release.appimage "。  

        然后将其作为 app 复制到 SD 卡的引导分区、但仍然无法获取 MCU2_0和 MCU2_1 start_up 信息。

     2.在我们自己的电路板上配置网络时,我们是否必须在 MCU2_0 ETHFW 和原生 Linux 驱动程序之间进行选择?

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

    您好!

    [报价 userid="521626" url="~/support/processors-group/processors/f/processors-forum/1445396/dra821u-q1-how-config-ethernet-on-linux/5549794 #5549794"]    然后将其作为应用程序复制到 SD 卡的引导分区、但仍然无法获取 MCU2_0和 MCU2_1 start_up 信息。

    MCU_0上的默认 ETHFW 将从 TI SDK 在 UART2上打印调试日志。
    MCU2_1 ETHFW RTOS 客户端不会将任何日志输出到 UART、在通过 CCS 将映像加载到 MCU2_1时、它会将日志输出到 CCS 调试器。

    如果需要转发到其他 UART、则需要根据客户硬件修改 UART 实例、以在 ETHFW 应用中使用。
    此外、对于 MCU2_1、您需要启用 UART 配置并将调试数据打印到 UART、与 ETHFW 类似。

    有关在 ETHFW 中使用更改 UART 实例、请参阅常见问题解答、使用与 SDK 相同的域、即主域。

    [报价 userid="521626" url="~/support/processors-group/processors/f/processors-forum/1445396/dra821u-q1-how-config-ethernet-on-linux/5549794 #5549794"]  2.在我们自己的电路板上配置网络时、我们是否必须在 MCU2_0 ETHFW 和原生 Linux 驱动程序之间进行选择?

    是的、如果两者都启用、则无法预测 CPSW5G 的运行。

    此致、
    Sudheer

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

    您好、Charles

      请参阅以下 SGMII 以太网端口的 DTS 配置、这基于 TDA4、

      但 dra821是 simialiar

    --------------------------------------------------------

    &SerDes_ln_ctrl{
    空闲状态= 、 、
    、 、
    、 、
    、 、
    、 、
    、 ;
    };

    &Davinci_MDIO{
    状态="已禁用";
    phy0:Ethernet-phy@0{
    状态="已禁用";
    REG =<0>;
    TI、Rx 内部延迟= ;
    TI、FIFO 深度= ;
    };
    };

    cpsw_port1{
    状态="已禁用";
    PHY-MODE ="RGMII-rxid";
    PHY-Handle =<&phy0>;
    };

    cpsw0{
    状态="正常";
    pinctrl-names ="默认值";
    pinctrl-0 =<&Linux_MDIO_PINS_DEFAULT &MAIN_4g_rgmii6_PINS_DEFAULT>;
    };

    cpsw0_port6 {
    状态="正常";
    PHY-MODE ="RGMII-rxid";
    phys =<&cpsw0_phy_gmii_sel 6>;
    固定链接{
    速度=<1000>;
    全双工;
    };
    };

    cpsw9g_mdio{
    状态="正常";
    bus_freq =<1000000>;
    pinctrl-names ="默认值";
    pinctrl-0 =<&phy_DP83TG721_MODULE_MAIN0_PINS_DEFAULT &phy_DP83TG721_MODULE_MAIN1_PINS_DEFAULT>;
    ENABLE-GPIO =<&MAIN_GPIO0 94 GPIO_ACTIVE_HIGH>;
    en721_1-GPIO =<&MAIN_GPIO0 88 GPIO_ACTIVE_HIGH>;
    wkup721_1-GPIO =<&MAIN_GPIO1 23 GPIO_ACTIVE_HIGH>;
    en721_2-GPIO =<&MAIN_GPIO0 87 GPIO_ACTIVE_HIGH>;
    wkup721_2-GPIO =<&MAIN_GPIO0 95 GPIO_ACTIVE_HIGH>;
    RESET-GPIO =<&MAIN_GPIO0 30 GPIO_ACTIVE_LOW>;
    reset-delay-us =<20>;
    #address-cells =<1>;
    #size-cells =<0>;

    phy_dp83TG721_1:以太网-phy@5{
    兼容="TI DP83TG721CS1.0"、"Ethernet-PHY-IEEE802.3-C22";
    REG =<5>;
    };

    phy_dp83TG721_2:以太网-phy@15{
    兼容="TI DP83TG721CS1.0"、"Ethernet-PHY-IEEE802.3-C22";
    REG =<15>;
    };
    };

    cpsw0_port5 {
    状态="正常";
    phy-handle =<&phy_dp83TG721_1>;
    PHY 模式="SGMII";
    MAC-ADDRESS =[00 00 00 00];
    phys =<&cpsw0_phy_gmii_sel 5>、<&serdes4_qsgmii_link>;
    PHY-NAMEs ="MAC"、"SerDes";
    //固定链接{
    // speed =<1000>;
    //全双工;
    //};
    };

    cpsw0_port7 {
    状态="正常";
    phy-handle =<&phy_dp83TG721_2>;
    PHY 模式="SGMII";
    MAC-ADDRESS =[00 00 00 00];
    phys =<&cpsw0_phy_gmii_sel 7>、<&serdes4_qsgmii_link>;
    PHY-NAMEs ="MAC"、"SerDes";
    //固定链接{
    // speed =<1000>;
    //全双工;
    //};
    };

    &SerDes_wiz4 {
    状态="正常";
    };

    服务器4 (&S){
    状态="正常";
    #address-cells =<1>;
    #size-cells =<0>;

    serdes4_qsgmii_link:phy@0{
    REG =<0>;
    cdns, num-lannes =<3>;
    #phy-cells =<0>;
    cdn、phy-type = ;
    重置=<&SerDes_wiz4 1>、<&SerDes_wiz4 2>、<&SerDes_wiz4 3>;
    };
    };

    --------------------------------------------------------

    此致

      Semon

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

    您好、Charles

      请参阅 DRA821 SGMII DTS 配置文件的另一案例、链接如下:

       (+) DRA821U:如何在 DRA821上为 SGMII 和 RMII 启用 CPSw5g Linux 本机以太网-处理器论坛-处理器- TI E2E 支持论坛

    此致

      Semon