|
@@ -262,9 +262,14 @@ out:
|
|
|
|
|
|
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;
|