Base on the suspend event, you're running in usb2 speed (ignore the incorrect U3 state, should be L2): irq/94-dwc3-631 [000] D..1. 149.139290: dwc3_event: event (00030601): Suspend [U3] The DSTS from the regdump indicated that you're still in L2 despite disconnected. Looks like the phy was unable to detect and wakeup from the disconnection to notify the controller. Can you experiment with setting "snps,dis_u2_susphy_quirk" to disable usb2 phy suspend. Does your device support SuperSpeed? If so, do you observe the same behavior while operating in SuperSpeed? Thanks, Thinh