工具/软件:TI-RTOS
我有一个需要配置为根复合体(RC)的 DSP C6678、它将连接到配置为单个端点(EP)的 FPGA。 我 只有一个通道、它将配置为第1代(2.5GHz)。 DSP (RC)将始终启动对 FPGA (EP)的读/写传输。 FPGA 永远不会发出读取/写入请求。
我 尝试获取 pdk_c667x_2_0_0随附的示例程序、以便 c6678正常工作。 我已经编译了使用位于 ti/drv/pcie/example/sample/src/pcie_sample.c 中 PDK 中的驱动程序的示例代码 我已在 ti/drv/pcie/lib/c678/C66/ti.drv.pcie 中链接到驱动程序。c678.ae66。 在 main 函数 pcie ()中,代码到达函数 pcieWaitLinkUp(),在这里它会轮询,以查找 LTSSM 状态是否达到 LO (0x11)。 这可以在 DEBUG0 (0x2180 1728) LTSSM_STATE 字段中看到。
主要问题是 PCIe_readRegs 和 PCIe_writeRegs 的 PCIe LLD API 调用似乎无法正常工作。 当我尝试在函数调用 pcieLtssmCtrl()中禁用链路训练时使用示例,该函 数成功返回 PCIe_RET_OK 值,但我无法禁用或启用链路训练。 我在0x21800004中查看要更改的 LTSSM_EN 位。
C6678的示例工程是否配置了错误?