Re: usb: dwc3: gadget: skip pullup and set_speed after suspend

From: Jung Daehwan
Date: Mon Feb 01 2021 - 01:36:48 EST


On Sun, Jan 24, 2021 at 05:31:57PM +0200, Felipe Balbi wrote:
>
> Hi,
>
> Daehwan Jung <dh10.jung@xxxxxxxxxxx> writes:
> > Sometimes dwc3_gadget_pullup and dwc3_gadget_set_speed are called after
> > entering suspend. That's why it needs to check whether suspend
> >
> > 1. dwc3 sends disconnect uevent and turn off. (suspend)
> > 2. Platform side causes pullup or set_speed(e.g., adbd closes ffs node)
> > 3. It causes unexpected behavior like ITMON error.
>
> please collect dwc3 trace events showing this problem.
>
> --
> balbi

Hi, balbi

I'm sorry for late reply. I pulled in belo patch and that issue didn't occur

usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup

@ Wesley cheng
But, I think it needs to modify pm_rumtime_put to pm_runtime_put_sync_suspend
for syncronization. pm_rumtime_put calls rumtime_idle not runtime_suspend
Please check it.

usb: dwc3: gadget: Allow runtime suspend if UDC unbinded

Best Regards,
Jung Daehwan