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.

[参考译文] AM5718:U-boot 中的 PCI 桥接器

Guru**** 2574125 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/628637/am5718-pci-bridge-in-u-boot

器件型号:AM5718

您好!

我尝试开发 uBoot 驱动程序。 我按照处理器用户手册中指定的规则来初始化时钟、网桥....

我将大多数寄存器与运行 Linux 驱动程序时得到的值进行了比较。 Linux 驱动程序运行良好。

PCI 桥接器应为 RC 并驱动 PCIExpress。

我在 AM5718-IDK 上工作

我成功:

在获取100MHz 时钟时、通过测量进行检查、

正在建立 PHY 链路

在 PCI 端点配置中读取/写入,以便我可以读取设备供应商 ID,设置其条形图... 所有器件配置读/写工作正常。

我的器件 BAR0为0x20300000

My Bridge PCIECTRL_RC_DBICS2_MEM_BASE_LIMIT 寄存器设置为20502030

在0x20300000处首次读取访问时,我在0x5100101c 处获得主设备中止。 结果是0xffffffff。

我将以下寄存器与 Linux 进行了比较、并检查它们是否一致:

 0x4A0026c0 CTRL_CORE_PCIe_POWER_STATE

 0x4A003c14至 0x4A003c44 CTRL_MODULE_CORE

 0x4A008200至  0x4A008220 CM_CORE_CKGEN

0x4A009300至  0x4A0093e8 CM_CORE_L3INIT

 0x4A090010至 0x4A090018 OCP2SCP 寄存器

 0x51002000至 0x5100203c  PCIe_SS1_TI_CONF (1)

 0x51002100至 0x5100210c  PCIe_SS1_TI_CONF (2)

 0x51002124至 0x5100212c  PCIe_SS1_TI_CONF (3)

 0x51002140至 0x51002148  PCIe_SS1_TI_CONF (4)

 0x51000000至0x51000100   PCIe_SS_RC_CFG_DBICS 寄存器

 0x51000700至0x51000750  PCIe_SS1_PL_CONF 寄存器(1)

 0x5100080c 至0x51000814 PCIe_SS1_PL_CONF 寄存器(2)

 0x51000900至0x51000920 PCIe_SS1_PL_CONF 寄存器(3)

0x20001000至0x20001100  器件配置

什么可以在器件配置空间中生成此主中止?

谢谢你

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

    我查阅了主器件中止的定义、如果我正确地理解、由于系统事件中的广播写入消息未响应、并且在总线上至少保留4个周期、所以读取操作被终止。 我不确定是什么原因导致了这种情况、但我正在内部检查是否有人知道原因。

    雷克斯
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Helio Rex,与 Linux 版本相比,我从未在寄存器0x51000080中看到 Link Bandwith 位设置为1。 这是否意味着我遇到了同步问题?
    感谢你的帮助
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cecile、

    听起来您可以访问配置空间、但不能访问存储器空间。  PCIECTRL_RC_DBICS_STATUS_COMMAND_寄存 器中的 MEM_SPACY_EN 位是否已设置?

    雷克斯