usb: dwc3: gadget: Set link state to RX_Detect on disconnect
authorThinh Nguyen <Thinh.Nguyen@synopsys.com>
Thu, 24 Oct 2019 02:15:49 +0000 (19:15 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 15 Jan 2020 09:39:19 +0000 (10:39 +0100)
When DWC3 receives disconnect event, it needs to set the link state to
RX_Detect.

DWC_usb3 3.30a programming guide 4.1.7

Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/dwc3/gadget.c

index f8f4af8..caf12fd 100644 (file)
@@ -2759,6 +2759,8 @@ static void dwc3_gadget_disconnect_interrupt(struct dwc3 *dwc)
 {
        int                     reg;
 
+       dwc3_gadget_set_link_state(dwc, DWC3_LINK_STATE_RX_DET);
+
        reg = dwc3_readl(dwc->regs, DWC3_DCTL);
        reg &= ~DWC3_DCTL_INITU1ENA;
        reg &= ~DWC3_DCTL_INITU2ENA;