小弟也是成功在6678evm上跑通了srio loopback 然后转移到 6670evm上 卡在了while ((boot_cfg_regs->STS_SRIO & 0x00000001) != 0x00000001);通过查找手册,发现该寄存器SRIO_SERDES_STS( 0x02620154)与serdes速率的配置相关。通过查找文档SPRUH59发现Figure 2.2: TMDXEVM6670L EVM Clock Domains 上标注的SRIO_SGMII_CLKP/N 为250.00Mhz,不是代码里的156.25Mz。我查阅的是6670LEEVM Rev3 的文档,不知道使用相同evm的朋友有没有遇到同样的问题。在这里修改代码后:
if(NYQUIST==dspType||TRUBO_NYQUIST==dspType)
{
//DSP core speed
KeyStone_main_PLL_init (236, 29); //for 122.88MHz input clock –striker checked
//DDR speed = 66.67*20/1= 1333
KeyStone_DDR_PLL_init (20, 1);//striker checked
Nyquist_EVM_DDR_Init(666.667); //for 1333Mbps
serdes_cfg.commonSetup.inputRefClock_MHz = 250.00;//for 6670evm,156.25–>250.00 ;
}
在我的板子上已经可以正常跑用例程序。部分传输case 校验有误,正在找原因,希望大家一起探讨解决。
Enoeht lea:
看srio user guider,重新设置PLL、RX、TX。
David Yang:
Rx,Tx也需要重新配置吗,如何重新配置?我在修改了inputRefClock_MHz以后单DSP digital loopback模式跑通了,并没有修改RX,TX~求指教求throw light
Thomas Yang1:
主要修改PLL来满足6670EVM输入时钟的倍频要求
另外对于6670EVM 有如下例子也可供参考
C:\ti\pdk_C6670_1_0_0_21\packages\ti\drv\srio
coolloog:
你好,我也是在6670EVM跑这个程序,请问一下修改的代码是在哪一个.c的源文件