On 3/9/2015 3:03 PM, Vincent Palatin wrote: > On Thu, Mar 5, 2015 at 11:17 PM, Yunzhi Li <lyz@xxxxxxxxxxxxxx> wrote: >> When dwc2 controller detects a disconnect interrupt, >> dwc2_hcd_disconnect() should be called immediately to do clean-up >> jobs and set port_connect_status_change flag to notify usb hub >> driver disconnect status. >> >> Signed-off-by: Yunzhi Li <lyz@xxxxxxxxxxxxxx> >> --- >> drivers/usb/dwc2/core_intr.c | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/drivers/usb/dwc2/core_intr.c b/drivers/usb/dwc2/core_intr.c >> index 02e3e2d..6cf0478 100644 >> --- a/drivers/usb/dwc2/core_intr.c >> +++ b/drivers/usb/dwc2/core_intr.c >> @@ -377,6 +377,9 @@ static void dwc2_handle_disconnect_intr(struct dwc2_hsotg *hsotg) >> dwc2_is_host_mode(hsotg) ? "Host" : "Device", >> dwc2_op_state_str(hsotg)); >> >> + if (hsotg->op_state == OTG_STATE_A_HOST) >> + dwc2_hcd_disconnect(hsotg); >> + >> /* Change to L3 (OFF) state */ >> hsotg->lx_state = DWC2_L3; >> >> -- >> 2.0.0 > > Tested-by: Vincent Palatin <vpalatin@xxxxxxxxxxxx> > > It's fixing real issues on my DWC2-based system where the USB device > lock was staying busy for minutes after a hub disconnection. > Acked-by: John Youn <johnyoun@xxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html