在处理描述符列表时、我尝试附加到 TX 描述符列表。 附加信息准备就绪后、新信息的起始位置将添加到执行列表中。 更新后指向新信息、将针对 EOQ 评估先前的信息、以了解状态机是否仍在执行。
使用 Code Composer 存储器浏览器、我有调试信息、显示描述符列表是预期 的、除了后续 寻址的状态、 这包括 初始信息、附加信息的更新指针以及 附加信息。 它还显示 未设置保存 EOQ 值内容的变量、这表示状态机仍在运行、因此应处理列表的附加部分。
但是,有几个迹象表明,没有处理所附的清单部分。 1) 1)外部 Wireshark 跟踪未看到附加的数据包信息。 2) 2)存储器浏览器显示初始列表 EOQ 位已设置、3)附加列表所有者位表示列表尚未处理。 我假设在存储器浏览器窗口中设置 EOQ 位而不在前面提到的变量中设置 EOQ 位的原因是状态机在从系统中提取存储器浏览器信息之前继续运行到最后更新 EOQ 位的时间点。
TRM 的第29章说明了添加到此列表的过程、 以确保正确处理状态机执行和软件应用到列表之间的竞争条件。 这一进程 已得到遵循,但不起作用。 我在其他器件上看到过有关此问题的其他一些帖子、但我没有找到记录该问题解决方案的帖子。
请告知是否能够附加到正在执行的 TX 描述符列表以及是否有权变措施。 我们的目的是不使用中断进行以太网处理、并且在 添加新描述符之前不必等待 EOQ 条件。
谢谢、
Tom