Hi Simon-san, Thank you for your review! > From: Simon Horman, Sent: Tuesday, May 15, 2018 4:35 PM > > On Tue, Apr 10, 2018 at 02:38:54PM +0900, Yoshihiro Shimoda wrote: > > This patch fixes an issue that reconnection is possible to fail > > because unexpected state handling happens by the irqs. To fix the issue, > > the driver disables the controller's irqs when disconnected. > > > > Fixes: 746bfe63bba3 ("usb: gadget: renesas_usb3: add support for Renesas USB3.0 peripheral controller") > > Cc: <stable@xxxxxxxxxxxxxxx> # v4.5+ > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> > > --- > > > > Remarks: > > - A new file in v2 > > > > drivers/usb/gadget/udc/renesas_usb3.c | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/drivers/usb/gadget/udc/renesas_usb3.c b/drivers/usb/gadget/udc/renesas_usb3.c > > index 0e70163..5caf78b 100644 > > --- a/drivers/usb/gadget/udc/renesas_usb3.c > > +++ b/drivers/usb/gadget/udc/renesas_usb3.c > > @@ -623,6 +623,13 @@ static void usb3_disconnect(struct renesas_usb3 *usb3) > > usb3_usb2_pullup(usb3, 0); > > usb3_clear_bit(usb3, USB30_CON_B3_CONNECT, USB3_USB30_CON); > > usb3_reset_epc(usb3); > > + usb3_disable_irq_1(usb3, USB_INT_1_B2_RSUM | USB_INT_1_B3_PLLWKUP | > > + USB_INT_1_B3_LUPSUCS | USB_INT_1_B3_DISABLE | > > + USB_INT_1_SPEED | USB_INT_1_B3_WRMRST | > > + USB_INT_1_B3_HOTRST | USB_INT_1_B2_SPND | > > + USB_INT_1_B2_L1SPND | USB_INT_1_B2_USBRST); > > Hi Shimoda-san, > > is it intentional that USB_INT_1_VBUS_CNG is not disabled above? Yes, because the USB_INT_1_VBUS_CNG is enabled in usb3_init_epc_registers() below. > > + usb3_clear_bit(usb3, USB_COM_CON_SPD_MODE, USB3_USB_COM_CON); > > + usb3_init_epc_registers(usb3); Best regards, Yoshihiro Shimoda > > if (usb3->driver) > > usb3->driver->disconnect(&usb3->gadget); > > -- > > 1.9.1 > >