From e603bcc00c356c124c1c3c47b034735eb934fcde Mon Sep 17 00:00:00 2001 From: Felipe Balbi Date: Mon, 23 Jul 2012 09:07:41 +0300 Subject: [PATCH] --- yaml --- r: 325962 b: refs/heads/master c: 2dfe37d4a5f9a7586a7ff79249492fb8280afb6f h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/usb/dwc3/ep0.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index c637f51f4baf..4a38ca35ac1f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7125d584d20ba7624488ddefa84b17ea6ce558f1 +refs/heads/master: 2dfe37d4a5f9a7586a7ff79249492fb8280afb6f diff --git a/trunk/drivers/usb/dwc3/ep0.c b/trunk/drivers/usb/dwc3/ep0.c index 3f2c698a2bd1..1bba97ba218d 100644 --- a/trunk/drivers/usb/dwc3/ep0.c +++ b/trunk/drivers/usb/dwc3/ep0.c @@ -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;