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.
您好、E2E、
你好。
我们的客户正在使用 AM437x 入门套件、需要您在 SDK 示例故障排除方面的帮助。 以下是查询:
"现在、我将使用 SDK 的 EMAC_BasicExample_skAM437x_armBiosExampleProject。 我已禁用回路并在 eth0 (Phy0)上发送和接收数据。 之后、我为2个 ETH 端口输入"emac_cfg.numPorts=2;"。 两个端口都成功打开并接收端口上的数据、而每当我在 APP_TEST_TASK_SEND_pkts 下使用 EMAC_SEND (0、p_pkt_desc)发送数据时、两个端口都会在这些端口上发送相同的数据。 实际上、我希望在这两个 ETH 端口上发送不同的数据。 我尝试了 EMAC_SEND (1、p_pkt_desc)、但 EMAC_BasicExample_skAM437x_armBiosExampleProject 将停止并退出。 我还会浏览"emac_DRV_ERR_E EMAC_SEND (uint32_t port_num、emac_PKT_Desc_T* p_desc)"和 EMAC_SEND_v4、但未成功。 我还读了 EMAC_LLD_SD.pdf、但看不出。 在“基于 UDMA/NavSS 的 IP 驱动程序 IPv5”下的一些详细信息,当我使用 IPv4时,有关7.4.13.1下的直接数据包发送,但不知道如何配置端口和在 IPv4下发送直接数据包。
感谢您的指导。 谢谢你。
此致、
卡洛
您好、Carlo、
您可以共享您正在使用的处理器 SDK 版本吗? 此6.3版本是否适用于 AM437x?
谢谢
您好 Aravind、
根据我们的客户、这是"ti-processor-sdk-rtos-AM437X-EVM-06.03.00.106-Windows-x86-Install"
此致、
卡洛
您好、Carlo、
让我与 EMAC 驱动程序专家核实 CPSW 是否支持此功能。 我的回复可能会有一些延迟。
谢谢
您好 Aravind、
期待您的更新。 谢谢你。
此致、
卡洛
您好、Carlo、
我计划在我的设置中重现此问题。 我没有 SK 板。 我有 https://www.ti.com/tool/TMDSIDK437X 板。 两个电路板的 EMAC 驱动程序库相同(因为 AM437x 的库特定于 SoC 而不是电路板)。
您能否分享客户为启用两个端口所做的所有更改?
在有关"emac_cfg.numPorts=2"的说明中、 这是客户所做的唯一更改吗? 请告诉我。
谢谢
您好 Aravind、
我将要求客户提供有关电路板 设置的配置和更改。
谢谢。
此致、
卡洛
当然。。。 谢谢 Carlo。 将等待您的输入。
谢谢
您好 Aravind、
根据我们的客户、他们实施的更改仅适用于主 文件和函数上的双端口"emac_cfg.numPorts=2"。
此致、
卡洛
您好、Carlo、
谢谢。。。 示例是环回示例、您能分享一下它们是如何在示例应用中禁用环回的?
我从客户那里看到以下内容:
"SDK 的 EMAC_BasicExample_skAM437x_armBiosExampleProject。 我禁用了回路 "...
谢谢
您好 Aravind、
根据我们的客户,他们 只需设置“open_cgF.loop bi=0;”。
此致、
卡洛
您好、Cabaccan、
感谢您的确认。 我将进行与客户相同的更改、并检查以下问题。
我无法在 idkAM437x 板上重现此问题、因为 idkAM437x 板上只有一个 CPSW 端口。 (另两个连接到 idkAM437x 中的 PRU eth 端口)。 我刚从我的一位同事那里获得了一个 skAM437x 板、我想尝试与客户类似的示例、看看我是否可以重现问题以确定根本原因。
[引用 userid="392211" URL"~/support/processors-group/processors/f/processors-forum/1002158/tmdxsk437x-sending-different-data-of-eth0-and-eth1 ]EMAC_SEND (1、p_pkt_desc)但 EMAC_BasicExample_skAM437x_armBiosExampleProject 将停止并退出[/quot]谢谢
您好、Carlo、
我认为客户可能会有更多变化。
我进行了以下2项更改、您建议了这些更改、但无法在 skAM437x 上重现此问题:
1. /* Aravind cfg 至2个端口*/
EMAC_cfg.numPorts = 2;
2.// Aravind open_cfg.LOOP_Back = 1;
open_cfg.LOOP_Back = 0;
我获得以下 UART 输出:
SetPhyMode:000021e1自动:1、FD10:64、HD10:32、FD100:256、HD100:128、 FD1000:8192 LPBK:0
SetPhyMode:000021e1自动:1、FD10:64、HD10:32、FD100:256、HD100:128、 FD1000:8192 LPBK:0
主:EMAC_OPEN 成功
链路状态:上行链路未处于环回状态
链路未处于环回状态、返回错误
您好、Carlo、
我更新了测试、以在测试未处于回送状态时不返回错误、如下所示:
if (emac_check_loopback_status (0)!=1)
{
// UART_printf ("链接未处于环回状态、返回错误\n");
//返回-1;
}
此更改后、测试继续以非环回模式发送数据包。 我还将端口号更改为1、未看到任何崩溃或停止并退出。
我注意到了几件事:
测试正在发送一个已完成的数据包(广播数据包):
静态常量 uint8_t test_pkt[64]={
0xFF、0xff、0xff、0xff、0xff、 0xFF、
0xFF、0xff、0xff、0xff、0xff、 0xFF、
0x08、0x06、0x00、0x01、
0x08、0x00、0x06、0x04、
0x00、0x01、0x01、0xbb、
0xcc、0xdd、0xee、0xff、
0xc0、0xa8、0x01、0x16、
0x00、0x00、0x00、0x00、
0xc0、0xa8、0x01、0x02、
0x01、0x02、0x03、0x04、
0x01、0x02、0x03、0x04、
0x01、0x02、0x03、0x04、
0x01、0x02、0x03、0x04、
0x01、0x02、0x03、0x04、
0xFE、0xFE、0x00、0x00
};
2.测试应用程序始终为两个端口发送此预设数据包。 因此、客户可能会在两个端口上看到相同的数据包。
客户能否进一步修改测试应用程序、以便在端口1上发送不同的预设数据包并进行检查?
请告诉我。
您好 Aravind、
感谢您持续处理此查询。 我已经与客户分享了配置、我仍在等待反馈。
收到响应后、我将向您提供更新。
此致、
卡洛
谢谢 Carlo。
我将等待您的响应和输入。
谢谢
您好 Aravind、
我刚刚收到了我们客户的以下更新:
对于不同的数据,我在 test_utils.c 中生成了另一个数据包
您好、Carlo、
请确认
1.在两个端口上同时发送不同的预设数据包(哪些是单播数据包)?
2.应用程序(示例)是为一个端口编写的-客户是否在示例中添加了另一个端口以进行同步端口发送? 或者,他是否正在寻找修改它以发送到 端口1,并注意到在其他端口上看不到重复的数据包?
我将比较您与版本软件共享的修改、以了解更多 详细信息。
在实际 EVM 上执行更改时、我可能会延迟一些时间。 同时、请确认以上两个问题。
谢谢
您好 Aravind、
以下是我们客户的回应:
您好、Carlo、
谢谢。。。 我计划在下周左右的某个时候优先处理此问题。
您好、Carlo、
很抱歉将其推送一段时间。 我还有其他一些任务、可能可以在下周左右进行计划。 我将向您提供最新信息。
谢谢
您好 Aravind、
我会就此通知客户。 谢谢你。
此致、
卡洛
您好、Carlo、
抱歉! 我仍然不能花时间来解决这个问题。 我可能需要向我的一位同事寻求帮助、以了解这一点。
我假设客户一次至少能够在一个端口上发送和接收数据包-对吗? 请确认。
谢谢、
您好 Aravind、
我仍在等待我们的客户确认他们是否能够发送/接收数据包。
另一方面、如果您的团队能够处理我们客户的问题、请分享最新消息。 谢谢你。
此致、
卡洛
您好、Carlo、
我们很难在内部获得有关 NDK 驱动程序和 NDK 项目的一些支持。 请等待下一位学员回答此问题。 可能需要一段时间。
谢谢。
大家好、团队、
对此、
[报价 userid="35255" URL"~/support/processors-group/processors/f/processors-forum/1002158/tmdxsk437x-sending-different-data-of-eth0-and-eth1/3758397 #3758397"]我假设客户一次至少能够在一个端口上发送和接收数据包-对吗?
根据我们的客户、 两个端口传输相同的数据、但可以接收不同的数据。
此致、
卡洛