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:UART 溢出问题

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

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1558867/am3354-uart-overrun-issue

器件型号:AM3354


工具/软件:

尊敬的专家:

客户正在使用 AM3354 并使用之前的 115200 波特率、现在他们希望将波特率提高到 1Mbps、但会报告溢出问题、日志显示为附加、客户还会尝试启用 DMA 模式、这种模式会有所改进、但仍然存在溢出错误、您能帮客户提供一些建议吗? 之前的客户正在使用开源内核 v5.10、我现在让客户使用 SDK7.3。 仍然存在问题、我们可以基于 SDK7.3 来调试此问题。  

e2e.ti.com/.../172.21.25.224_5F00_2025_2D00_08_2D00_27_5F00_15_2D00_21_2D00_01.log

BR、

Biao  

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

    尊敬的 Biao:

    通常、如果未启用硬件流控制、则可能会发生 UART RX 溢出问题。

    请让客户使用适用于 AM335x 的最新 SDK - SDK9.3 进行测试、了解问题是否仍然存在、然后我们将进行调试。

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

    尊敬的 Bin:

    客户由于硬件是固定的、无法连接流控制、我将让客户尝试最新的内核、但如果最新的内核仍然存在问题、您能否提供一些建议、比如提高 UART 中断的优先级? 您认为这是否有帮助?

    BR、

    Biao

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

    尊敬的 Biao:

    如果可能、我们必须知道问题的详细信息、例如症状、UART 使用和测试方法等、才能知道如何解决问题。

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

    尊敬的 Bin:

    客户使用 Uart0 和 Uart2 从其他 SOC 接收数据包、并且由于硬件流控制信号无法连接到其他 SOC、因此他们仅连接 RX TX、当波特率为 115200 时它可以正常工作、但当他们在几分钟后将波特率提高到 1Mbps 时、数据包将是分段的。 内核将按如下所示报告超限错误。  如果你需要更多的细节请告诉我,我会尝试弄清楚。

    [654.430003] ttyO ttyO2:1 输入溢出
    [749.040763] ttyO ttyO2:1 输入超限
    [832.860047] ttyO ttyO2:3 个输入超限

    BR、

    Biao  

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

    尊敬的 Bin:

    AM335 是否可以支持 UART 轮询模式? 如果支持 PLS 可以与我们共享一些代码引用、并且客户要求提高 UART 中断的优先级、您还能提供一些指导吗?

    BR、

    Biao  

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

    尊敬的 Biao:

    [654.430003] ttyO ttyO2:1 个输入溢出

    我不确定内核版本是否能改善该问题。 客户是否尝试过 RT Linux? RT Linux 通常具有更好的延迟。

    如果客户使用非 RT Linux、cpufreq 调节器设置为什么? 如果尚未设置、请将其设置为“performance"(“(性能(性能)。

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

    尊敬的 Bin:

    感谢支持、客户正在使用平衡模式、在更改为性能模式后、此问题已得到解决。 此主题可以关闭。

    BR、

    Biao

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

    尊敬的 Bin:

    AM62 也有性能模式吗? 如果已经使用 RT-Linux 进行测试、它是否仍有选项?

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

    尊敬的 Tony:

    默认情况下、最新的 SDK 应在性能调节器模式下设置 cpufreq。  

    除非在内核配置中明确启用了 cpufreq、否则 RT Linux 应默认禁用 cpufreq。

    无论如何、都可以在 Linux sysfs 中检查 cpufreq 及其调节器设置。