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.

LP-AM243: AM243x USB device mode: Endpoint stops responding after DFLUSH during IN transfer

Part Number: LP-AM243

Tool/software:

Hi,

I am using the AM243x in USB device mode, and have encountered an issue related to the use of DFLUSH on a Bulk IN endpoint.

  • Issue:
    If we issue a DFLUSH command to an IN endpoint *while it is in the middle of an IN transfer*, the endpoint stops responding entirely after that point. It no longer returns NAK, STALL, or any response at all to the host.
  • Steps to reproduce:
    1. Start an IN transfer on an endpoint (e.g. EP1 IN).
    2. While the transfer is ongoing, set DFLUSH bit for that endpoint. (Sequence equivalent to the epFifoFlush() API)
    3. The endpoint becomes unresponsive afterwards — host receives no response.

  • Question:
    - Is this a known issue or hardware limitation of AM243x?
    - Is it safe to call DFLUSH during an active IN transfer?
    - Are there any recommended recovery methods or workarounds?

I tested repeatedly issuing DMA requests and DFLUSH commands while the relevant EP was not being transferred, and in that case, no issues seemed to occur.
I would appreciate any clarification on the expected behavior of DFLUSH and best practices to avoid this issue.

Best Regards,