usb: mtu3: handle delayed status of the control transfer
authorChunfeng Yun <chunfeng.yun@mediatek.com>
Tue, 25 Jul 2017 08:10:22 +0000 (16:10 +0800)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Tue, 15 Aug 2017 09:46:02 +0000 (12:46 +0300)
commit8ba4ad488eebeae4d5f1b03524062aa0d70b3fdb
tree710e2a2bb602259e834ba9d614e703e74a73c375
parentc7733dc117fe0a8b0095cc3c3b4c22c67a4b5155
usb: mtu3: handle delayed status of the control transfer

Add the delayed status handling. This is used by mass storage etc to
gain some extra time to setup its internal status before it can proceed
further requests, and once the gadget is ready, it will enqueue an
empty packet which is used for synchronization.
The issue may happen on some FGPA platform with very low cpu frequency.

Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/mtu3/mtu3.h
drivers/usb/mtu3/mtu3_gadget.c
drivers/usb/mtu3/mtu3_gadget_ep0.c