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.

TMDS64GPEVM: BCDMA Transfer Request Packet Descriptor validity

Part Number: TMDS64GPEVM

Hello,


When BCDMA transfers data after it read the necessary information from a Request Packet Descriptor, does it override anything in transfer request record fields ? such as destination address; size of transfer etc ..

Thanks

  • Hello Montassir kounsi,

    Can you please provide details about the requirement to better assist you?

    Regards,

    S.Anil.

  • When BCDMA transfers data after it read the necessary information from a Request Packet Descriptor, does it override anything in transfer request record fields ? such as destination address; size of transfer etc ..

    Hello Montassir kounsi,

    I think it is possible, but after updating the TR descriptor again, we need to submit TR for a new request, and as of now, I have not verified it at my side.

    But you can try it and please let me know if you are facing any issue.

    Regards,

    S.Anil.

  • Hello Swargam Anil,

    Thanks for your response.

    Just to clarify my question, let's imagine this :
     - R5 fills up and submits TR descriptor to bcdma ring
    - Once BCDMA transfer has finished, r5 receives an interrupt for completion
    - R5 reads the ring buffer and gets this same TR descriptor, which now contains a TR response
    - Can the R5 read destination address + size of transfer from this TR descriptor to know where the data was transferred ?

  • Hello Montassir kounsi,

    - R5 reads the ring buffer and gets this same TR descriptor, which now contains a TR response
    - Can the R5 read destination address + size of transfer from this TR descriptor to know where the data was transferred ?

    Sorry for the delayed response. Yes, it is possible.

    You have to do the below steps. After the DequeRaw function, you can call the UdmaUtils_getTrpdTr15Pointer function to read the TR descriptor.

    Now, ptr should contain all the information about your TR descriptor.

    retVal = Udma_ringDequeueRaw(Udma_chGetCqRingHandle(chHandle), &pDesc);
    DebugP_assert(UDMA_SOK == retVal);

    pTr = UdmaUtils_getTrpdTr15Pointer(pDesc, 0U);

    Please let me know if this helps your query .

    Regards,

    S.Anil.

  • Yes this solves my issue. thanks Swargam Anil.

  • Hello Montassir kounsi,

    Thanks for the quick reply. I am closing this thread. Please open new threads if you have any.

    Regards,

    S.Anil.