On Fri, Nov 14, 2014 at 09:05:16AM -0600, Felipe Balbi wrote: > Hi, > > On Fri, Nov 14, 2014 at 03:40:55PM +0800, Peter Chen wrote: > > > > @@ -1660,7 +1660,7 @@ static int ci_udc_start(struct usb_gadget *gadget, > > > > pm_runtime_get_sync(&ci->gadget.dev); > > > > if (ci->vbus_active) { > > > > spin_lock_irqsave(&ci->lock, flags); > > > > - hw_device_reset(ci, USBMODE_CM_DC); > > > > + hw_device_reset(ci); > > > > > > wow, you guys reset this IP all the time... that's scary, could be > > > hiding bugs easily. > > > > > > > In current chipidea design, it indeed resets controller often, it > > resets controller when the usb cable connects to pc and the gadget > > driver is there, something like which we do for RUN/STOP bit. > > RUN/STOP on dwc3 is not an IP reset though. Neither it is on XHCI/EHCI. > Of cos, I mean the situation which the chipidea does reset controller is not necessary sometimes, it can control RUN/STOP bit instead of it. -- Best Regards, Peter Chen -- 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