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.

[参考译文] AM5726:PCIe 配置命令响应

Guru**** 2558390 points
Other Parts Discussed in Thread: AM5726

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/607490/am5726-pcie-config-command-response

器件型号:AM5726

您好!

配置周期从 CONTROL (RC)执行、但无法确认正常运行。
分析仪确认 AM5726 (EP)未正确响应 Config 命令的操作。

在 L0状态转换后、为了正常响应 Config 命令、AM5726是否需要设置?
或者、软件设置寄存器是否不必要、它是否只能用硬件进行响应?

此致、
新义郎

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

    您好、Biser、

    感谢您的快速回复。
    您是否收到了 PCIe 专家的回复?
    我们的客户似乎希望尽快解决此问题。

    此致、
    新义郎

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这是美国7月第4周、很多人都不在办公室。 他们将在可能的情况下直接发布在这里。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Biser、

    感谢您的快速回复。
    我知道美国上周有人不在办公室。

    PCIe 专家是否提供了任何更新信息?
    我们的客户似乎希望尽快解决此问题。

    此致、
    新义郎

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

    您能否详细说明用于此问题的硬件和软件? 什么是 PCIe RC?在 AM572x 上运行什么软件? 它看起来链接训练成功、并达到 L0。 什么是 config 命令发送到 EP? 您是否尝试写入 EP 端的某个寄存器?

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

    尊敬的 Eric:

    感谢您的快速回复。

    PCIe RC 是其他公司的处理器。
    操作系统使用 VxWorks、我们的客户正在基于 ti-processor-sdk-RTOS PCIe 示例程序创建驱动程序。

    配置读取命令从 RC 侧发送到 EP 侧。
    此时、CRS (配置请求重试状态)从 EP 端发送。

    我们的客户在建立链路之前似乎没有进行以下设置。
    ① bar (内向和外向)设置
    ②设备 ID 和供应商 ID 的设置

    AM5726是否需要进行上述设置才能正确接收配置读取命令?

    此致、
    新义郎

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

    是否有任何更新信息?

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

    您好!

    很抱歉耽误你的回答!

    1) 1)仍然不清楚配置读取是在链路训练之前还是之后? 初始帖子显示"AM5726是否需要设置 才能在 L0状态转换后正常响应 Config 命令?"。 如果您已经达到 L0状态、AM572x PCIe 配置空间将存储器映射到 RC 侧、则可以通过寄存器读取和写入来访问它们。 为什么要读取另一个配置? 在链路到达 L0状态之前、通常 PCIe RC 会执行 Number 过程、如果您可以到达 L0 、则会涉及配置读取、这意味着此时配置读取成功。 那么 、为什么它在到达 L0后失败?

    2) 2) PCIe RC 是否饱和(例如运行某些 Linux/Windows 操作系统)或根本没有枚举过程? 请参阅我们的 Processor SDK RTOS PCIe 示例、该代码不进行枚举、只需单独设置两端并开始链路训练过程。 在两种情况下、条形寄存器中的设置不同:

    a:在枚举情况下、EP 侧栏寄存器仅使用条屏蔽进行编程、它指示它向 RC 请求的存储器空间数量。 RC 将所有值写入 EP 条形图、并读回器件请求的存储器大小并从系统资源中分配、然后将条形图地址写入其中。

    b.在纯链路训练案例(我们的 RTOS 示例)中、由于  没有 Number 流程、因此条形图使用条形码和条形地址进行编程、以匹配 RC 和 EP。

    关于 DevID 和 VENDID、复位后默认为0x8888104C。 除非要 将其更改为其他值、否则不需要再次对其进行编程。

    总之、如果我假设您的用例为:1) RC 确实有编号2)配置读取是在到达 L0之前进行的。  然后、您需要在 EP 侧对条形码进行编程、但 无需 DevID/VENDID。

      如果您的问题是在总线枚举期间读取配置、您可以参考 en.wikipedia.org/.../PCI_configuration_space? 或者我理解您的情况是错误的?

    此致、Eric

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

    感谢您的快速回复和详细解释。
    它们使用的是 RC 侧处理器 VxWorks。
    VxWorks 可能也是一个需要更新的驱动程序,如 Windows 和 Linux。
    因此、它似乎不适用于基于 ti-processor-sdk-rtos 的源代码。
    设置 EP 侧的条形码后、我将检查协议分析器会发生什么情况。
    我了解不需要设置 DevID / VENDID。

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

    已通知我我们的客户已成功启动读取配置命令。
    根据您的建议、他们似乎找到了解决此问题的方法。
    感谢您的回答。

    此致、
    新义郎