This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
请问论坛各路大神
1. 在调试6678和FPGA的SRIO时,FPGA端发送三次00a00200000210000,在将所有的中断路由和中断响应函数注释后DSP端自动回复响应包如下
0x00d0400000000000 0x55d06000800000000,
0x01d0400800000000 0x55d06000800000000,
0x02d0400800000000 0x55d06000800000000,
请问这个包的含义是什么呢?
2. 在注释掉doorbell中断相关代码前后尝试修改中断路由,得到的响应包依旧是这样的,我一直怀疑是中断的路由出了问题。现在的配置是只用了0核来处理所有的事务,配置代码如下:
for (i = 0; i < 16; i++)
{
CSL_SRIO_RouteDoorbellInterrupts(hSrio, 0, i, 0);
CSL_SRIO_RouteDoorbellInterrupts(hSrio, 1, i, 1);
CSL_SRIO_RouteDoorbellInterrupts(hSrio, 2, i, 2);
CSL_SRIO_RouteDoorbellInterrupts(hSrio, 3, i, 3);
} /*按照例程将每个doorbell register的16个中断路由到相应的destination*/
CSL_SRIO_DisableInterruptPacing (hSrioCSL, 0);
CSL_SRIO_DisableInterruptPacing (hSrioCSL, 1);
CSL_SRIO_DisableInterruptPacing (hSrioCSL, 3);
CSL_SRIO_DisableInterruptPacing (hSrioCSL, 4);
CpIntc_dispatchPlug(CSL_INTC0_INTDST0, (CpIntc_FuncPtr)Doorbell1Isr, (UArg)hDrvManagedSrioDrv, TRUE);
CpIntc_dispatchPlug(CSL_INTC0_INTDST1, (CpIntc_FuncPtr)Doorbell2Isr , (UArg)hDrvManagedSrioDrv, TRUE);
CpIntc_dispatchPlug(CSL_INTC0_INTDST3, (CpIntc_FuncPtr)Doorbell3Isr, (UArg)hDrvManagedSrioDrv, TRUE);
CpIntc_dispatchPlug(CSL_INTC0_INTDST4, (CpIntc_FuncPtr)Doorbell4Isr, (UArg)hDrvManagedSrioDrv, TRUE);
CpIntc_mapSysIntToHostInt(0, CSL_INTC0_INTDST0, 8);
CpIntc_mapSysIntToHostInt(0, CSL_INTC0_INTDST1, 9);
CpIntc_mapSysIntToHostInt(0, CSL_INTC0_INTDST3, 10);
CpIntc_mapSysIntToHostInt(0, CSL_INTC0_INTDST4, 11);
CpIntc_enableHostInt(0, 8);
CpIntc_enableHostInt(0, 9);
CpIntc_enableHostInt(0, 10);
CpIntc_enableHostInt(0, 11);
CpIntc_enableSysInt(0, CSL_INTC0_INTDST0);
CpIntc_enableSysInt(0, CSL_INTC0_INTDST1);
CpIntc_enableSysInt(0, CSL_INTC0_INTDST3);
CpIntc_enableSysInt(0, CSL_INTC0_INTDST4);
eventId_0 = CpIntc_getEventId(8);
eventId_1 = CpIntc_getEventId(9);
eventId_2 = CpIntc_getEventId(10);
eventId= CpIntc_getEventId(11);
EventCombiner_dispatchPlug (eventId_0, CpIntc_dispatch, 8, TRUE);
EventCombiner_dispatchPlug (eventId_1, CpIntc_dispatch, 9, TRUE);
EventCombiner_dispatchPlug (eventId_2, CpIntc_dispatch, 10, TRUE);
EventCombiner_dispatchPlug (eventId, CpIntc_dispatch, 11, TRUE);
配置是否有错呢?
谢谢!
包的格式参考以下文档看一下:
All request and response packet formats are described in the RapidIO Input/Output Logical Specification and Message Passing Logical Specification