Hi Al,
Sorry, was out of the office yesterday...
Al Borchers wrote:
Alex --
Alex Sanks wrote:
So, I've got a patch that:
- Updates reset logic to ensure that endpoint toggle and halt bits only get
cleared on endpoints other than ep0 to fix an extremely unlikely (but
possible) exposure should a setup packet come in after we've checked the
reset status but before calling ep_reset().
- Removes SUSPEND_IMMEDIATELY references and instead uses
SUSPEND_REQUEST_INTERRUPT to suspend the NET2280.
Great! Thanks! Unfortunately I won't be able to test this until the end of
next week--I will be away from my test system with the EVB board until
the end of next week. I will test it when I get back and let you know
how it works for me.
No problem. Let me know what you find out. I'll get back to you if I find any more related issues.
To answer your earlier question--if it is still relevant at all:
Do you have anything I can do to repeat this here? I'll poke and prod it from here and see if I can make it fail, but if you've got any suggestions to increase my chances it'll help. Also, what exactly do you see happening when it doesn't work? Does your host see a device connect (DP pullup event)? Are you enumerating and bulk transfers don't work?
My test was: plug in the EVB board to one host, load net2280 and g_serial
on the device side, the device was enumerated, send some data (or not) over bulk
endpoints, then unload g_serial (or not), and unplug. Then plug in the
EVB board to another host and repeating the test.
Sometimes I could unplug/replug once or twice without the board hanging, but
eventually it would hang. I would guess the probability that it would hang
on unplug/replug was about 50%.
On the Linux host I saw these error messages after the board hung
Aug 16 22:54:09 galois kernel: hub.c: new USB device 00:11.2-1, assigned address 3
Aug 16 22:54:09 galois kernel: usb-uhci.c: interrupt, status 2, frame# 1788
Aug 16 22:54:09 galois kernel: usb.c: USB device not accepting new address=3 (error=-110)
Aug 16 22:54:09 galois kernel: hub.c: new USB device 00:11.2-1, assigned address 4
Aug 16 22:54:09 galois kernel: usb.c: USB device not accepting new address=4 (error=-110)
Ok good, that's what I was seeing when the chip got stuck in suspend and wasn't ACKing the SET ADDRESS request. The patch seemed to fix that one here. I saw the failure pretty often here too. Which is odd, since I don't recall having seen that one when I was working with gadget before. But maybe I just wasn't pulling the plug much (or maybe I just yank it out slightly faster which minimizes the chances of getting suspended in the first place)
regards, alex
------------------------------------------------------- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel