Hi,
Help needed on SRIO communication between two C6678 EVM boards.
We plan to use SRIO to connect FPGA and C6678. As a preparation step, I'm trying now to connect two c6678 EVM boards via SRIO. We use the example project “SRIO_LoopbackDioIsrexampleproject” as base software, which is found at C:\ti\pdk_C6678_1_0_0_20\packages\ti\drv\exampleProjects. Here are what we did and got:
1. The project runs ok on one EVM board with internal loopback.
2. Then we modified the code to do external loopback on one EVM board. It also runs ok. The changes made are:
replacing CSL_SRIO_SetLoopbackMode(hSrio, 0) with CSL_SRIO_SetNormalMode(hSrio, 0);
replacing CSL_BootCfgSetSRIOSERDESRxConfig (0, 0x01C40495) with CSL_BootCfgSetSRIOSERDESRxConfig (0, 0x00440495);
replacing CSL_BootCfgSetSRIOSERDESTxConfig (0, 0x00780795) with CSL_BootCfgSetSRIOSERDESTxConfig (0, 0x00180795);
3. For two board test, we run the similar code on both EVM boards. The differences are only device ID and the 1st board does tx and the 2nd board does rx. The connection between the two boards is: (board1)tx+ => (board2)rx+, (board1)tx- => (board2)rx-, (board2)tx+ => (board1)rx+, (board2)tx- => (board1)rx-. Only one lane is used.
When running, it doesn’t go as expected, and we got following error msg on these registers:
SP0_ERR_STAT = 0x00030301
SP0_LM_RESP = 0x00000000 occasionally 0x80000010
SP0_ERR_DET = 0x00000004
Do I miss anything or did I do something wrong?
Regards,
Weiyi