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.

[参考译文] AM62A7-Q1:配置 DP83TC817SRHARQ1 具有 AM62A7 SOC 的汽车以太网

Guru**** 2668435 points

Other Parts Discussed in Thread: AM62A7

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1580870/am62a7-q1-configuration-dp83tc817srharq1-automotive-ethernet-with-am62a7-soc

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

您好 TI、

 

我们将 AM62A7 soc 和 Yocto linix 9、02 SDK 配合使用。

我尝试使用 AM62a7 soc 配置 DP83TC817SRHARQ1 汽车以太网、但在 SDK 9.02 中不支持该功能。 也没有可用的内核 phy 和源文件。

 

您能否提供配置支持(内核 PHY 激活、.dts 文件,源文件以及如何在其上集成) 、以便我们在 RGMII2 端口上配置汽车以太网。

如需更多信息、请告知我

谢谢   

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

    您好 TI、

    任何更新!!!

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

    您好、

    我需要将您的问题传递给支持 PHY 的 TI 团队、我仅支持处理器方面。 我查看了产品页面并找到了以下链接以请求设计支持:

    https://www.ti.com/product/DP83TC817S-Q1?keyMatch=DP83TC817SRHARQ1&tisearch=universal_search&usecase=OPN#software-development

    此链接查找需要软件请求。 请留出一两天时间让其他团队作出回应。

    此致、

    Schuyler

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

    尊敬的 Pankaj:

    您可以在 GitHub 上找到我们的 DP83TC817 PHY 驱动程序。

    https://github.com/TexasInstruments/ti-ethernet-software/blob/main/linux_drivers/dp83tc817.c

    我们还提供了一个应用手册、可帮助您开始将驱动程序集成到您的系统中。

    https://www.ti.com/lit/an/snla450/snla450.pdf?ts = 1761784681331 &ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FDP83TC812S-Q1

    谢谢、

    Drew

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

    您好、Miller、

    我关注的是 pdf 文档。

    但您能帮助我进行.dts 文件配置、说明 DP83TC817S 的完全兼容的名称、reg 和其他设置。

    同时、我会告诉您我将要做的更改类型以及日志显示的内容。

    谢谢。

     Pankaj Verma

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

    尊敬的 Prankaj:

    您是否有此 SoC 的 RGMII2 的示例.dts 文件?

    谢谢、

    Drew

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

    您好:

    否、我认为否、我没有用于 AM62A7 的 RGMII2 的.dts 文件。

    谢谢

    Pankaj Verma

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

    您好、Drew、

    我对 RGMII 端口 2 的 DTS 文件进行了一些更改。 rgmii2 的此更改是否正常?

    ////////////////// rgmii2 port2 的 DTS 文件设置

    main_rgmii2_pins_default:main-rgmii2-default-pins{
    pinctrl-single、pins =<
    AM62AX_IOPAD (0x0184、PIN_INPUT、0)/*(AA21) RGMII2_RD0 */
    AM62AX_IOPAD (0x0188、PIN_INPUT、0)/*(Y20) RGMII2_RD1 */
    AM62AX_IOPAD (0x018c、PIN_INPUT、0)/*(AB21) RGMII2_RD2 */
    AM62AX_IOPAD (0x0190、PIN_INPUT、0)/*(AB20) RGMII2_RD3 */
    AM62AX_IOPAD (0x0180、PIN_INPUT、0)/*(AA20) RGMII2_RXC */
    AM62AX_IOPAD (0x017c、PIN_INPUT、0)/*(W18) RGMII2_RX_CTL */
    AM62AX_IOPAD (0x016c、PIN_INPUT、0)/*(AA19) RGMII2_TD0 */
    AM62AX_IOPAD (0x0170、PIN_INPUT、0)/*(Y18) RGMII2_TD1 */
    AM62AX_IOPAD (0x0174、PIN_INPUT、0)/*(AA18) RGMII2_TD2 */
    AM62AX_IOPAD (0x0178、PIN_INPUT、0)/*(W17) RGMII2_TD3 */
    AM62AX_IOPAD (0x0168、PIN_INPUT、0)/*(AB19) RGMII2_TXC */
    AM62AX_IOPAD (0x0164、PIN_INPUT、0)/*(Y19) RGMII2_TX_CTL */
    >;
    };

    ds83tc817_reset_pins_default:ds83tc817-reset-default-pins{
    pinctrl-single、pins =<
    AM62AX_IOPAD (0x01bc、PIN_INPUT、7)/*(A17) SPI0_CLK.GPIO1_17 */
    >;
    };

    &cpsw_port2{
    状态=“正常“;
    /*DP83TC817S 设置*/
    phy-handle =Ð μ s_phy1>;
    PHY-MODE =“RGMIG";“;
    };
    &cpsw3g{
    状态=“正常“;
    pinctrl-names =“default";“;
    pinctrl-0 =<&main_rgmii1_pins_default
    &main_rgmii2_pins_default
    >;

    CPTS@3d000{
    /*将 HW3_TS_PUSH 映射到 GENF1 */
    TI、pps =<2 1>;
    };
    };

    &cpsw3g_mdio{
    状态=“正常“;
    pinctrl-names =“default";“;
    pinctrl-0 =<&main_mdio1_pins_default>;

    eth_phy0:ethernet-phy@0{//或硬件的正确 PHY 地址
    兼容=“Ethernet-phy-IEEE802.3-C22",“,"Micrel、"Micrel,“,ksz9031"、ksz9031";“;
    reg =<0>;// PHY 的 MDIO 地址
    Interrupt-parent =<&MAIN_GPIO1>;
    中断=<31 IRQ_TYPE_LEVEL_LOW>;/*示例:MAIN_GPIO1_31 上的 PHY IRQ */
    pinctrl-names =“default";“;
    pinctrl-0 =<&ksz9031_reset_pins_default>;
    Reset-GPIOS =<&MAIN_GPIO0 32 GPIO_ACTIVE_LOW>;/*示例:MCU_GPIO0_13 上的复位*/
    reset-assert-us =<1000>;
    reset-deassert-us =<50000>;
    };

    eth_phy1:ethernet-phy@1{//或硬件的正确 PHY 地址
    兼容=“ti、dp83tc817“;
    reg =<1>;// PHY 的 MDIO 地址
    pinctrl-names =“default";“;
    pinctrl-0 =<&ds83tc817_reset_pins_default>;
    Reset-GPIOs =<&MAIN_GPIO1 17 GPIO_ACTIVE_LOW>;/*示例:MCU_GPIO1_17 上的复位*/
    reset-post-delay-us =<120000>;

    };

    };

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    我还对进行了更改 Makefile kconfig 和 defconfig 、由于这些更改、dp83tc817 的内核模块在菜单配置中可见、我也启用了。

    但问题是当我使用命令检查 eth1 和 rgmii2 时“ dmesg | grep -i “rgmi “"则“则表示仅显示 eth0 phy0。

    更多信息供您参考

    请检查。

    谢谢  

    Pankaj Verma

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

    您好:

    我们正在等待您的支持对此进行任何更新?

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

    尊敬的 Pankaj:

    • 您能否检查内核中是否包含 817 驱动程序?  您可以使用`lsmod`或`cat /lib/modules /$(uname -r)/modules.builtin`进行检查
    • 如果您使用 DP83TC817 探测 MDIO 总线、那么您是否会在引导期间观察到活动?

    谢谢、

    Drew

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

    尊敬的 Miller:

    1.  您能否检查内核中是否包含 817 驱动程序?  您可以与`lsmod`或`确认 CAT /lib/modules /$(uname -r)/modules.builtin`

    我已经检查 817 没有显示在 lsmod 和 module.builtin 也. 但当我运行以下命令时

    “MACHINE=am62xx-EVM bitbake linux-ti-staging -c menuconfig“

    “Machine=am62axx-evm bitbake -c menuconfig virtual/kernel“

    在这两种情况下、它都显示内核配置中的 817 驱动程序、附加映像以供参考。

    2. “如果您使用 DP83TC817 探测 MDIO 总线、那么您是否会在引导期间观察到活动?“

    对于 MDIO 总线探头、我们已经尝试检查、但在本例中、此 MDIO 总线 ID 与 RGMII1 (KSZ9031) 和 RGMII2 (817) 连接。

    因此、MDIO 总线显示一些数据、但我认为这是 RGMII1 线路正常工作的原因。

    但 RGMII2 线路和 eth1 仍然不只显示 eth0。

    供您参考

    请参阅和支持。

    谢谢  

    Pankaj Verma

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

    您好、

    在引导期间、eth1 上的 PHY 在总线探测期间不应答。 即使内核中没有内置驱动程序、PHY 也应在探测期间应答。  

    本文档展示了如何进行一些基本的 PHY 调试、以了解其在启动期间可能无法应答探针的原因。 第 6 节是指介绍 PHY 的一些步骤。 示例 PHY 不同、但步骤应该相似、请参阅 PHY 的数据表。

    https://www.ti.com/lit/an/spradj8/spradj8.pdf

    此致、

    Schuyler

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

    您好 TI、

    您能否验证 DTS 文件中端口 2、引脚、设置的以太网配置是否正确?

    以太网端口 2 的 DTS 文件配置。

     

    进行配置

     

    Cpsw3g 和端口配置  

     

     

    eth0 和 eth1 设置

     

    这里缺少任何配置信息。

    请提供此方面的支持、或者您能否联系我们专家、了解有关此以太网问题的信息。

    谢谢  

    Pankaj Verma

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

    您好 TI、

    请就此作出答复、我们在这方面仍面临问题。

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

    您好、

    您能否附上完整的引导日志(而不是剪切和粘贴)以及当前的完整电路板 DTS 或涉及联网的相关部分。 我们要求这样做的原因是、我们需要能够搜索日志并分析 DTS。 我们无法使用屏幕截图完成此操作。 目前我没有看到 DTS 有什么问题、但这并不意味着没有。 如果 PHY 地址 1 没有像我之前提到的那样响应、则 PHY 可能无法正常工作。 您是否只有一个客户电路板? 如果您有多个、您是否在所有这些问题上都看到了相同的问题?

    此致、

    Schuyler

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

    尊敬的 Patton:

    好的、我在这里附加了 dts 和引导日志以供您参考。

    我也在 3 个不同的董事会做了同样的活动、但我面临着同样的问题。  未检测到以太网端口 2 或 PHY 地址 1。

    DTS 文件

    e2e.ti.com/.../k3_2D00_am62a7_2D00_sk_5F00_dts.txt

    引导日志文件

    e2e.ti.com/.../1781.boot_5F00_logs.txt

    您需要的任何其他日志/文件、请告诉我。

    请参阅此问题  

    谢谢

    Pankaj

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

    尊敬的 Pankaj:

    从 PHY 硬件的角度来看、PHY 对 MDIO/MDC 的响应有一些关键要求:

    • PHY 需要 25MHz 基准时钟。  您可以探测 CLKOUT 以确认时钟存在。
    • PHY 无法保持在复位状态。  探测重置以确认它已置为无效。
    • PHY 不能处于 TC –10 睡眠状态。  建议在上电期间将 WAKE 拉至高电平、以确保 PHY 不处于 TC –10 睡眠状态。  您还可以将 INH 引脚视为状态指示器。

    谢谢、

    Drew

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

    您好、

    感谢您提供 DTS 和引导日志。 在初步审查后、为什么要在 cpsw2 中设置仅 Mac

    &cpsw_port2{
    reg =<2>;
    TI、仅限 Mac;
    标签=“port2";“;
    Phys =<&cpsw3g_mdio 2>;
    状态=“正常“;
    pinctrl-names =“default";“;
    PHY 模式=“RGMII-id";“;
    phy-handle =<&dp83tc817_phy1>;
    };

    此致、

    Schuyler

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

    大家好、Drew 和 Schuyler、

    我有分析,我正在解释 2 不同的 secnario 我已经面临。

    senario 1 :-新的带有新 DTB 文件的 Yocto 构建映像

    在这里、我发现.dtb 文件不正确。 如果正在使用新的 dtb 文件再次替换。 它仍然显示另一个最后一个。

    我检查了 dtb 文件大小、两者都不同。 表示它自己生成的 dtb 文件几乎具有 57.2Kb、但新的 dtb 文件大小为 58.9KB。

    我尝试从 SD 卡复制 dtb 文件以进行反向编译、但我创建的文件夹在尝试从 PC 读取时未显示。

    senario 2 :- 旧的构建映像与新的 dtb 文件

    在这里可以看到、当运行命令“sudo ethtool eth1“时、端口 2 已启用、eth1 也显示。

    但问题是这里我没有 dp83tc817 以太网内核模块。  

    所以在这个 senario 它不可能用 dp83tc817 检查 phy1。

    在这里、我有反向编译 dtb、它显示的是带有 phy1 的 eth1。

    问题:-  

    我不明白为什么新的构建映像不采用全新的 dtb 文件。

    您能告诉我这里的问题是什么吗?  

    为什么新的 dtb 文件没有使用新生成的映像进行更新。

    我认为图像在生成时有一些问题、您能提供相关支持吗?  

    谢谢

    Pankaj Verma

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

    尊敬的 Pankaj:

    当 Schuyler 本周不在办公室时、我将尝试临时填写。

    我不明白为什么没有为新的构建映像获取新的 soc 文件。

    您能否介绍一下您为构建新映像而采取的步骤?

    -道林

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

    尊敬的 Daolin:

    以下是构建映像的步骤。

    1.如果我想生成图像,那么我们执行下面一个。

          MACHINE=“am62axx-EVM" bitbake“ bitbake -f tisdk-edgeai-image

    2.如果我们在.dts 文件中进行更改,则执行以下命令。 成功执行后、我们只替换 boot/dtb/ti/k3-am62a7-sk.dtb 中的.dtb 文件

             Machine=“am62axx-evm" bitbake“ bitbake -f -c 编译 linux-ti-staging

             Machine=“am62axx-evm" bitbake“ bitbake -f -c deploy linux-ti-staging

    3.  

    如果我们更改 menuconfig 或内核配置、则执行以下步骤

    用于打开菜单配置

    Machine=am62axx-EVM bitbake -c menuconfig virtual/kernel      

    以进行编译更改  

    Machine=am62axx-EVM bitbake -f -c 编译虚拟/内核

    以进行部署更改

    Machine=am62axx-EVM bitbake -f -c 部署虚拟/内核

    生成映像中所示

     MACHINE=“am62axx-EVM" bitbake“ bitbake -f tisdk-edgeai-image

    以下是我们用于生成映像、dtb 文件和内核配置的命令和步骤。

    如果我遗漏了一些东西、请告诉我。

    谢谢  

    Pankaj Verma

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

    尊敬的 Pankaj:  

    如果您不对 Linux 根文件系统进行任何修改、并且只需要修改 Linux 映像和/或 DTB、我通常建议您使用以下链接中的步骤: https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM62AX/latest/exports/docs/linux/linux.html#compiling-the-source Foundational_Components_Kernel_Users_Guide 

    您能否试一下这些步骤、看看您的 DTB 是否得到了更新?

    -道林