> From: Nick Hudson [mailto:skrll@xxxxxxxxxx] > Sent: Tuesday, August 05, 2014 1:57 AM > > On 07/22/14 22:22, Nick Hudson wrote: > > On 07/22/14 18:46, Paul Zimmerman wrote: > >> > >>> The nak_frame handling would have added some benefit, but wouldn't > >>> handle all > >>> cases. > >>> > >>> I'm seeing problems with devices NAKing to the point of confusing > >>> dwc2 completely, > >>> so I'd like to investigate a NAK holdoff scheme that's acceptable > >>> for dwc2. I > >>> suspect the best thing to do here is to add a nak_count field to > >>> dwc2_qh (or maybe > >>> dwc2_qtd) and increment in dwc2_hc_nak_intr. If the count exceeds a > >>> threshold > >>> then it would call > >>> > >>> dwc2_halt_channel(hsotg, chan, qtd, DWC2_HC_XFER_NAK); > >>> > >>> and go around again. > >>> > >>> I assume the NAK count would need resetting everywhere > >>> qtd->error_count is reset. > >>> > >>> How does this sound? > >> Sounds good to me. BTW, can you give me a pointer to one of the devices > >> that gives excessive NAKs? I would like to buy one for the lab here to > >> test with. > >> > > > > I'm seeing problems with a d-link dwcl-g122 wifi dongle that someone > > sent me. > > The attached patch helps with my d-link dwl-g122 - it's adapted from the > raspberry pi dwc_otg driver. > > I'm not sure the NYET/NAK/ACK/other case and would happily remove it. > > I assume the scheduler is doing something that is confusing the core > with this particular device. The error recovery is still valid I think. Hi Nick, If this is done in the Raspberry Pi kernel, then it's probably fine, since those guys know more about the DWC2 core than anyone, I think. One thing: For Linux, we are required to have a Signed-off-by line on all patches. May I add your Signed-off-by to this patch? Also, in future, please include the patch inline instead of as an attachment. That's the standard practice on the Linux lists, it causes less problems with funky mailers and such. Thanks. -- Paul -- 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