On Friday 11 February 2005 9:14 am, Steve Hosgood wrote:
> On Fri, 2005-02-11 at 16:36, Alan Stern wrote:
> > > Meanwhile, I ran my driver with detailed debugging of its own and what I
> > > see is like this:
> > > 
> > > ....
> > > Receive 32768 bytes from camera: add it to the image-buffer
> > > Resubmit URB
> > > Receive 32768 bytes from camera: add it to the image-buffer
> > > Resubmit URB
> > > Receive 20667 bytes from camera: add it to the image-buffer (that marks
> > > the end of frame). This URB has been composed from 41 full 512 byte
> > > bulk-packets plus one half-filled 512 byte bulk-packet.

Your diagnostics don't do the math right, possibly suggestive of
some other problem.  20667 = (40 * 512) + 197 ... so you may be
assuming an extra packet, as well as extra bytes (197 != 512/2).
Or maybe you just paraphrased them wrongly.


> > > Resubmit URB

And the resubmit succeeded -- no error returned?


> > > [no more IRQs hit my callback function over the next tenth of a second]
> > > 
> > > The timebomb goes off.
> > > Tell the camera to stop streaming.
> > > Release all URBs.
> > > 
> > > This is as close as I can get to diagnostics, since I don't have useful
> > > access to the next layer down.

What, you don't have the source code?  :)


> > You said before that your bus analyzer showed the computer had stopped
> > polling for bulk data.  Are you sure that's what happens?  There are files
> > you can read, containing debugging data for the ehci-hcd driver. I don't
> > remember where those files are located and I don't know what the data
> > means, but maybe the driver's maintainer can tell you and interpret the
> > contents.  If an URB has been submitted but isn't on the schedule, perhaps
> > it will show up there.
> > 
> 
> I was rather hoping that the driver's maintainer might wade in here with
> suggestions as to how we might home in on this problem.

The debug files are in /sys/class/usb_host/usb1 if this bus is
currently labeled "usb1", and the files of interest for bulk
transfers are "async" (showing the URBs the EHCI knows about)
and "registers" (showing register state).

Somewhere along I missed seeing what kernel you're using.  It
should be at least 2.6.10, ideally with the EHCI patch that
I submitted yesterday (but from what I've gleaned so far, that
may not matter for you).  How many bulk endpoints are you
using concurrently?

- Dave



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to