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.

[参考译文] AM6422:查询 PCIe EPF 测试 — AM64xx EVM 上的 DMA 写入/读取支持

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1625366/am6422-query-on-pcie-epf-test-dma-write-read-support-on-am64xx-evm

器件型号: AM6422

TI 团队大家好、

我正在使用pci_epf_test AM64xx EVM 上的功能驱动程序进行 PCIe 端点测试。我参考了以下文档以了解 PCIe EP 功能的测试信息。
https://software-dl.ti.com/processor-sdk-linux/esd/AM64X/11_01_05_03/exports/docs/linux/Foundational_Components、Kernel/PCIe/PC Kernel_Drivers Ie_End_Point

 我按照标准 configfs 步骤设置供应商/设备 ID、MSI/MSI-X 中断、并将该函数链接到控制器。 日志显示 BAR0 配置成功、但我遇到了与 DMA 相关的错误。

执行的步骤:

Echo 0x104c > Functions/PCI_EPF_TEST/func1/VendorID
echo 0xb010 > Functions/PCI_EPF_TEST/func1/deviceid
Echo 2 > Functions/PCI_EPF_TEST/func1/msi_interrupts
Echo 2 > Functions/PCI_EPF_TEST/func1/msix_interrupts
LN -s 函数/PCI_EPF_TEST/func1 控制器/f102000.PCIe-EP/

内核日志:

[75.861010] EPF_TEST:使用共享 DDR 内存
[75.865515] EPF_TEST:映射的 DDR 0xa60000 大小 0x200000
[75.871011] PCI_EPF_TEST PCI_EPF_TEST.0:无法获取专用 DMA Rx 通道。 回到通用模式
[ 75.881690] EPF_TEST:设置 BAR0 addr=0xa6000000 size=0x200000
[75.887781] EPF_TEST:已成功配置 BAR0

问题:

  • DMA 通道分配失败 (Failed to get private DMA rx channel)。

  • 因此、我无法使用 DMA 测试 PCIe 写入/读取事务。

请求指导:

  1. 在 AM64xx EVM 上使用 DMA 测试 PCIe 写入/读取函数的建议方法pci_epf_test是什么?

  2. 不限 DTS 更改 是否需要(例如,启用 DMA 通道或 IRQ 配置)?

  3. 不限 defconfig 更改 需要启用特定的 DMA/PCIe 选项?

  4. 我们需要吗 驱动程序修改 pci_epf_test集成或相关的 DMA 驱动程序来支持这个用例?

  5. 对于 AM64xx 上基于 DMA‑的 PCIe EP 测试、任何参考示例或文档都将非常有用。

感谢您的支持。

此致、

Charan