usb: dwc3: ep0: make sure to reinitilize ep1 on STALL

When issuing SetStall on ep0, we must make sure to
reinitialize all flags on physical ep1 too.

Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Felipe Balbi 2012-07-23 09:07:41 +03:00
parent 7125d584d2
commit 2dfe37d4a5

View file

@ -262,9 +262,14 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request,
static void dwc3_ep0_stall_and_restart(struct dwc3 *dwc)
{
struct dwc3_ep *dep = dwc->eps[0];
struct dwc3_ep *dep;
/* reinitialize physical ep1 */
dep = dwc->eps[1];
dep->flags = DWC3_EP_ENABLED;
/* stall is always issued on EP0 */
dep = dwc->eps[0];
__dwc3_gadget_ep_set_halt(dep, 1);
dep->flags = DWC3_EP_ENABLED;
dwc->delayed_status = false;