John Stultz <john.stultz@xxxxxxxxxx> 于2019年10月30日周三 上午5:18写道: > > On Tue, Oct 29, 2019 at 2:11 AM Felipe Balbi <balbi@xxxxxxxxxx> wrote: > > John Stultz <john.stultz@xxxxxxxxxx> writes: > > > From: Yu Chen <chenyu56@xxxxxxxxxx> > > > > > > It needs more time for the device controller to clear the CmdAct of > > > DEPCMD on Hisilicon Kirin Soc. > > > > Why does it need more time? Why is it so that no other platform needs > > more time, only this one? And which command, specifically, causes > > problem? Sorry for my back to this so late. This change is required on my dwc3 based HW too, I gave a check and the reason is suspend_clk is used in case the PIPE phy is at P3, this slow clock makes my EP command below timeout. dwc3_gadget_ep_cmd: ep0out: cmd 'Set Endpoint Configuration' [401] params 00001000 00000500 00000000 --> status: Timed Out Success case takes about 400us to complete, see below trace(44.286278 - 44.285897 = 0.000381): configfs_acm.sh-822 [000] d..1 44.285896: dwc3_writel: addr 000000006d59aae1 value 00000401 configfs_acm.sh-822 [000] d..1 44.285897: dwc3_readl: addr 000000006d59aae1 value 00000401 ... ... configfs_acm.sh-822 [000] d..1 44.286278: dwc3_readl: addr 000000006d59aae1 value 00000001 configfs_acm.sh-822 [000] d..1 44.286279: dwc3_gadget_ep_cmd: ep0out: cmd 'Set Endpoint Configuration' [401] params 00001000 00000500 00000000 --> status: Successful Hi John, Do you still have this problem? if yes, What's the value of USBLNKST[21:18] when the timeout happens? thanks Li Jun > > Hrm. Sadly I don't have that context (again I'm picking up a > semi-abandoned patchset here), which is unfortunate, as I'm sure > someone spent a number of hours debugging things to come up with this. > :) > > But alas, I've dropped this for now in my stack, and things seem to be > working ok so far. I suspect there's some edge case I'll run into, but > hopefully I'll be able to debug and get more details when that > happens. > > I do appreciate the review and pushback here! > > thanks > -john