> (5) The completion handler for the urb in step 1 (async_completed)
> is called.  The urb status is -EILSEQ (CRC error; maybe timed out?).
> (6) The urb is returned to the userspace driver.
> (7) The user space driver immediately submits a new bulk urb.
> This is going to happen a lot (we are in a short loop, see below).
> The time interval between the successive urbs generated is
> 0 or 1 jiffies.  The urb is sent succesfully.
> (8) The urb completes straight away with status -EILSEQ.
> Since the user space driver has done a USBDEVFS_REAPURB,
> it immediately gets the result.
> (9) Goto step 7.
> 
> Question: why did the first urb complete with -EILSEQ when
> the other device was plugged in?

And also, why did it _keep_ doing that afterwards?

A quick glance at usb-uhci.c in 2.4.19-pre10 makes me
wonder what other status bits might be set when it
reports that.

Can you tweak the "return -EILSEQ" to be more like

        { info ("status bits %08x", status); return -EILSEQ; }

and see if perhaps some other status bit is more suggestive
of the real problem.  Maybe the data toggle got trashed, or
something similar.

- Dave




-------------------------------------------------------
This sf.net email is sponsored by: Jabber Inc.
Don't miss the IM event of the season | Special offer for OSDN members! 
JabberConf 2002, Aug. 20-22, Keystone, CO http://www.jabberconf.com/osdn
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to