Hi
My customers implemented STALL processing with reference to Related Post.
1. Register the STALL function.
C:\ti\pdk_am335x_1_0_12\packages\ti\drv\usb\src\musb\usb_musb.c
2. Implement USBDevEndpointStall().
C:\ti\pdk_am335x_1_0_12\packages\ti\drv\usb\src\musb\usb_musb_dcd.c
It was confirmed that STALL processing was performed when USB cable was disconnected.
However, data communication was not successful in the following test case.
Step 1. Connect USB
Step 2. Send data from host side (PC)
Step 3. Disconnect USB
Step 4. Reconnect USB
Step 5. Send data from host (→ When error occur, STALL event occur here)
Step 6. Stop sending data from the host
Testing with DMA_MODE disabled worked fine. So they think there is a problem with CPPI41 DMA.
They checked the difference between DMA_MODE enabled/disabled receive buffers.
When DMA_MODE was enabled, the first 3 bytes disappeared in the received data.
They think this is the cause.
Question:
Customers want to use USB driver with DMA_MODE enabled.
Would you tell me how to improve?
PDK : pdk_am335x_1_0_12
BIOS : bios_6_76_00_08
Regards, Rei