Part Number:PROCESSOR-SDK-AM57XOther Parts Discussed in Thread:AM5728, AM5708
原有的工程已在am5728的dsp端初始化配置成rc端并且已成功应用;目前有个新项目使用am5708芯片,移植am5728的初始化代码到此芯片,在training训练这步读取寄存器,一直未训练成功;不知道哪里还需要配置或者有未注意到的地方?
1、am5728使用的是ccs6.13,am57xxPDK 1.0.4,arm端运行linux无pcie驱动
2、am5708使用的是ccs7.4.0,am57xxPDK 1.0.4,arm端运行linux有pcie驱动,
使用
echo 1 > /sys/devices/platform/44000000.ocp/44000000.ocp:axi@0/51000000.pcie/pci0000:00/0000:00:00.0/remove
卸载驱动也一样无法训练成功
Nancy Wang:
帮您升级到了英文论坛,会有相关专家跟进,请关注。
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1038393/am5708-pcie-tranning-failed
,
Kevin Le82:
有am5708使用dsp端配置pcie RC端的例程吗
,
Kevin Le82:
int pcieWaitLinkUp(Pcie_Handle handle,int waitTime){ pcieRegisters_t getRegs;
memset (&getRegs, 0, sizeof(getRegs));
#ifdef PCIE_REV0_HW pcieDebug0Reg_t ltssmStateReg; getRegs.debug0 = <ssmStateReg;#else pcieTiConfDeviceCmdReg_t ltssmStateReg; getRegs.tiConfDeviceCmd = <ssmStateReg;#endif memset (<ssmStateReg, 0, sizeof(ltssmStateReg)); uint8_t ltssmState = 0; while(ltssmState != pcie_LTSSM_L0 && waitTime>0) { if (Pcie_readRegs (handle, pcie_LOCATION_LOCAL, &getRegs) != pcie_RET_OK) { PCIE_logPrintf ("Read LTSSM state failed!\n"); return 1; } ltssmState = ltssmStateReg.ltssmState;// Task_sleep(1); cycleDelay(100000); waitTime–; } if(waitTime) return 0; return 1;}
5708运行时,ltssmState 一直返回 3
5708、5728两个的pcie寄存器、版本等是不是有不一样的地方
,
Kevin Le82:
5708的pcie的硬件版本是几?看初始化代码里面有分
,
Kevin Le82:
看pdk_am57xx 1.0.10里面的代码都有分572x,1x,4x;5708的应该不一样,应该怎么配置