Uint32 KeyStone_SRIO_wait_LSU_completion(Uint32 lsuNum,
Uint32 transactionID, Uint32 contextBit)
{
Uint32 uiStateIndex= LSU_state_index_table[lsuNum][transactionID];
Uint32 uiCompletionCode;
do
{
uiCompletionCode=(gpSRIO_regs->LSU_STAT_REG[uiStateIndex/8]>>
((uiStateIndex&7)*4))&0xF;
}
while((uiCompletionCode&1) != contextBit);
return (uiCompletionCode>>1);
}
我先给DSP发送一个doorbell信号,通知DSP已经准备好了,然后再用NWRITE方式发送数据,会一直卡在这个循环,看了一下各个寄存器的值,LSU_STAT_REG[0]变成了3.查看手册,这个表示
|
Transaction Timeout occurred on Non-posted transaction 想问一下是什么问题,能怎么解决 |