你好:
我们自己做的板子,上面有两块C6455,现在两块板子的电源、参考时钟等等都做好了,SDRAM和EMIF模块测试都正常,但是在测试SRIO时,发现程序总是在如下代码下死循环。
response.index = 0;
do {
status = CSL_srioHwSetup (hSrio, &setup);
if (status != CSL_SOK) {
printf("SRIO: ... Hardware setup, failed\n");
return;
}
delay(1000); //check the response every 100 cpu clcok = 100 ns
CSL_srioGetHwStatus (hSrio, CSL_SRIO_QUERY_SP_ERR_STAT, &response);
} while(response.data & 0x1);
这部分代码应该是查询SPn_ERR_STAT中PORT_UNINITIALIZED,即ports输入输出是否初始化,如果没初始化,就一直等待下去。
两个DSP硬件上SRIO的四个通道全部相连了。