Alan Stern wrote: > > > > Could be the driver updated the pointers but did so at the wrong time, > > with the result that the controller overwrote them with older values. > > Or maybe just one of them was overwritten. Would that explain your > > observations?
It's probably nothing, but this line in ohci-q.c in td_submit_urb raised an eyebrow: urb_priv->ed->hwHeadP &= ~cpu_to_hc32 (ohci, ED_C); There is a comment "resetting toggle is meaningless if the endpoint is active" above this code. While that's true, I wouldn't expect this operation to be atomic. What happens if the HC is updating headP during this block? I would think the driver could potentially overwrite it with the old value. Mike ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel