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.

6457 SRIO loopback example

Other Parts Discussed in Thread: TMS320C6457

I have a TMS320C6457 board and I am attempting to run the srio_ext_loopback_example from the TI PDK library.  When I run the example "as is", it works fine.  But when I add a loop to do multiple writes, only the first write works.  Upon inspecting the registers, I see that the SPn_ERR_DET register has 2 bits set, NON_OUTSTANDING_ACKID and RCVD_PKT_NOT_ACCPT.  Also, it looks like the ACKID's in the SPn_ACKID_STAT register are out of sync

  • David,

    We are glad that the supplied example worked fine for you. It seems that your modifications caused an error, as you certainly recognize. The error bits that were detected offer a hint to where you can look.

    You do not need me to read the SRIO User's Guide to you, but the RCVD_PKT_NOT_ACCPT bit implies that the message was not acceptable in the loopback environment. And the NON_OUTSTANDING_ACKID may be telling you the same thing.

    If you put a huge delay between the transmissions in the loop, does that change the behavior?

    What else can you see in your modified code that could lead to errors like this?

    Regards,
    RandyP

  •  

     

     

     

    [C64XP_0] Response = 0x80000010

    [C64XP_0] Partner_Inbound_AckID = 0x00000001

    [C64XP_0] SRIO: ... LSU transfered 256 bytes of data correctly

    [C64XP_0] Response = 0x80000150

    [C64XP_0] Partner_Inbound_AckID = 0x0000000b

    [C64XP_0] SRIO: ... LSU failed to transfer data

    [C64XP_0] Response = 0x80000150

    [C64XP_0] Partner_Inbound_AckID = 0x0000000b

    [C64XP_0] SRIO: ... LSU failed to transfer data

    [C64XP_0] Response = 0x80000150

    [C64XP_0] Partner_Inbound_AckID = 0x0000000b

    [C64XP_0] SRIO: ... LSU failed to transfer data

    [C64XP_0] Response = 0x80000150

    [C64XP_0] Partner_Inbound_AckID = 0x0000000b

    [C64XP_0] SRIO: ... LSU failed to transfer data

     

  • Here's the one line of code that I added:
     
    for (loops = 0; loops < 5; loops++)
    {
         .....
    }
    I added a 1 second delay between transmissions but it still fails.