Hi, Roman Kapl wrote: > Hello, > > On 9/5/19 8:57 PM, Thinh Nguyen wrote: >> Hi, >> >> Roman Kapl wrote: >>> The address should be set to zero during reset according to the >>> documentation. >> >> That is for usb reset and not core soft reset, and dwc3 already handles >> that case. > > I thought that core soft reset is part of the USB reset (it is done > during the init, right?). A soft reset is done during device power-on init. It's not part of the USB reset. > >> >>> Clearing RunStop ensures that the host disconnects from >>> the device (it was not cleared by CSFTRST, at least on ls1043). >>> >>> This allows the dwc3 to properly initialize even if the previous >>> driver did not shutdown the device (e.g. when using virtualization). >> >> This sounds like a workaround to some issue that the function driver did >> not handle. > > I am using the ACM function driver. However, as I said, the issue > arises only when the dwc3 driver is in a guest OS that is rebooted > (even if the reboot is initiated from within the guest OS, not a hard > reset). Check why it wasn't de-initialized on reboot. Also please describe what problem you saw in the patch. > > Maybe this is out of scope for Linux, trying to 'clean up' after the > previous driver? > > Thank you, Roman Kapl > BR, Thinh