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.

[参考译文] RTOS/AM5728:PCIe EP 协商问题

Guru**** 2608385 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/648521/rtos-am5728-pcie-ep-negotiation-issue

器件型号:AM5728

工具/软件:TI-RTOS

大家好、团队(尤其是 Eric)、

 

我的客户在 PCIe EP 初始化和总线协商期间遇到问题。

这一问题并非总是重复出现、而且与某个电路板无关。

 

因此、客户希望查看其 PCIe 初始化部件的源代码。

您能帮我进行 PCIe 代码审查吗?

但是、由于客户不想在 Web 上打开其源代码、我将在稍后亲自发送电子邮件。

 

此致、  
欧内斯特

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我查看了代码。 没有调用出站转换 pcieObTransCfg()。 他们的问题是什么? 比如链路稳定性、还是有时枚举未发生? 还是链路建立后出现数据传输问题?

    如果是链接和枚举问题、则出站转换设置是否无关紧要。 以下是一些代码:// 20171017,SMS 测试代码。 我需要对这些设置进行解码以了解更多内容。

    这是 TI IDK 还是 GP EVM? 还是这是客户自己的电路板? 什么是 PCIe RC、RC 和 EP 都使用通用 PCIe 参考时钟?

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Eric:
    让我更详细地解释/更正并回答您的问题。

    1.客户测试了两种类型的 PC 进行 PCIe 测试:(1)普通台式计算机,(2) Fujitsu 台式计算机。
    情况(1)在所有插槽中连接时没有任何问题、但在情况(2)中、第一个插槽工作正常、但在与 EP 定制板协商时另有4个插槽存在相同的问题。
    2.在已发出的情况下,它启用链路训练,但在进行物理协商时可能断开连接。
    有时、在链路训练初始化后、它们在其 EP 板上断言复位开关打开、然后驱动程序在发布的 PC 上识别(案例(2))。
    3.对于特定台式电脑上的特定 PCIe 插槽,它是链路稳定性问题。
    4.他们不使用外发翻译。
    5.问题出在客户自己的主板上。
    它们使用通用 PCIe 参考时钟。
    请注意、他们评估了其他使用 DM8168作为主芯片的定制控制板。 但它处理了问题(2)。
    8.他们检查并遵循 TRM 24.9.5.2中注明的"PCIe 控制器初始化主序列"程序。

    客户想知道是否有协商失败情况的重试例程。

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

    感谢您的详细介绍。 "他们在 EP 板上断言复位开关打开、然后在发布的 PC (案例(2))上识别驱动器。" === >这是否总是有助于恢复 PCIe 枚举并恢复链路? 如果是、他们能否在启用链路训练后添加代码:如果在特定时间后链路未出现或中断、他们可以重置 PCIe、然后重新初始化?

    复位为:PlatformPCIESS1/2Reset ()
    重新初始化:与我们的驱动程序示例代码相同的序列、从开始:
    -PlatformPCIESS1ClockEnable();
    -PlatformPCIESS1PllConfig();
    -PlatformPCIESS1CtrlConfig();
    -PlatformPCIESS1Reset();
    -PlatformPCIESS1PhyConfig();
    -设置 EP 模式
    -设置栏/入站
    -启用链路训练

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

    离线讨论了该问题、存在 PCIe 信号完整性问题。 设计中可能存在边缘,使其能够处理某些 RC (根复合体)而不是其他 RC。 更接近 RC 的插槽的性能优于问题 PC 上离 RC 更远的插槽、这进一步表明了这一点。

    此致、Eric