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.

TMS320C6457: SRIO interface

Part Number: TMS320C6457

We are working with TMS320C6457 using SRIO interface to exchange different type of packets (differnet length) with another device. We use only one LSU and our HW coniguration
doesn't let us use more then one.

We work with non posted write operations (nwrite_r) but unfortunately we have a serious problem with that:
Sometimes we have to send from DSP to the other device two packets of different lenght and to different destination addresses. The first one is segmented in 4 segments. If at the same time we have to send the second packet we check that BSY = 0 (CSL_SRIO_QUERY_LSU_BSY_STAT = 0) before sending it, according to sprugk4d.
Unfortunately this second packet is not sent to the destination because the first packet transfer seems not to be completely delivered (4 segments).

We know we should chek the COMPLETION CODE register ( (CSL_SRIO_QUERY_LSU_COMP_CODE_STAT) but it seems that, also when we succeed in sending a packet, the completion code read is not always "000"!
So it is not reliable from our point of view and if we try to use it we will not find "000" code.
How could we be sure that a packet transmission is completely ended and is possible to send a second packet?

Do you have any suggestion for us?


Thank you in advance.

Regards,
Barbara Maifreni

  • Hi,

    Do you have the information what software package you used for this and if you referred to any TI code example? This is a very old device and we try to see if any doc or code we can help. 

    Regards, Eric