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.

[参考译文] AM3354:当启用 DMA 时、串行端口会发生数据包丢失

Guru**** 2589245 points
Other Parts Discussed in Thread: AM3354

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1576059/am3354-serial-port-experiences-packet-loss-when-dma-is-enabled

器件型号:AM3354


工具/软件:

SDK 版本:02.00.02.11
内核版本:kernel3.2.0
在 AM3354 串行端口上启用 DMA 时、数据包丢失问题是否得到解决?

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

    尊敬的 Jie:

    内核 v3.2 在 10 多年前发布、不再受支持。

    如果您可以在使用较新的 Linux SDK 时重现问题、我们会进行研究。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我在测试串行检查和 4.1.18 内核版本上的有线网卡切换脚本时遇到数据丢失。
    到目前为止只观察到丢失的 1 个字节、 与 AM62x 上的测试结果相同。

    测试方法与以下链接中的方法相同。
    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1504677/am625-run-multiple-serial-ports-simultaneously-and-toggle-the-wired-nic-to-introduce-interference

    ./serialcheck_comen -b 1000000 -d /dev/ttyS3 -f ./binary_1W_ttyS3 -l 2786918 -m r &
    ./serialcheck_comen -b 1000000 -d /dev/ttyS3 -f ./binary_1W_ttyS3 -l 2786918 -m t &

    以下是测试日志:
    1.发生数据包丢失时、序列检查进程将终止。 检查/proc/tty/driver/serial 节点后、发现 ttyS3 出现了`OE`错误。
    `发生` OE `s并重新启用 serialcheck 测试后、` erialcheck -r 线程在没有收到一个字节的情况下超时、检查 ttyS3 串行中断显示没有进一步增加。
    3.使用`echo`命令将数据直接写入 ttyS2 和 ttyS3 节点,我们观察到,虽然 ttyS2 可以直接写入,但写入 ttyS3 节点会无限期地被阻止。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jie:

    正如我昨天在上述 am62x UART 线程中进行的更新一样、我发现开源社区早在 2023 年就完成了 TTY 层的内核变更、偶尔会中断我在 AM62x SK EVM 上的 UART 测试。 但内核 4.1.18/SDK2.0 是 10 年前发布的、此论坛不支持调试此类旧软件。 您必须使用适用于 AM335x 的最新 SDK (SDK9.3/kernel6.1) 进行测试、如果问题仍然存在、我们可以提供支持。