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.

TMS320C6678: SRIO: direct IO timeout

Part Number: TMS320C6678

Hi,

I have a problem when writing (NWRITE, without response) via direct IO to a non present SRIO device. 

The C6678 is connected to a IDT switch that normally is connected to another C6678. When both the C6678 node are up I have no problems, but when one is not present (not connected at all to the switch) the NWRITE to the not present node block all the operation of the active DSP.

The LSU (I use only one), run out of shadow register, that is it signals it is full and busy. The problem occurs after exactly 64 writes, regardless of the write rate.

From the documentation it is not clear to me how to recover. I supposed the C6678 SRio should signal timeout, but when I check for operation completition (by looking on LSU REG6), the operation never timeouts.

I add a software timeout on the operation completition checks and I tried to clear busy and flush the operation but without success.

I configure the SRIo timeouts with:

       CSL_SRIO_SetPortLinkTimeoutCSR (hSrio, 0x000FFF);

       CSL_SRIO_SetPortResponseTimeoutCSR(hSrio, 0x000FFF);

I use a bare metal application, that is without TI RTOS.

Regards