Re: A videocam works on OHCI and fails on UHCI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Mon, 16 Nov 2009, Laurent Pinchart wrote:

On Sunday 15 November 2009 20:07:34 Alan Stern wrote:
On Sun, 15 Nov 2009, Theodore Kilgore wrote:
That doesn't explain why the old code worked with OHCI but not UHCI.
We may never know the answer.

No, it does not explain. But I am somehow less curious about that than I
was 12 hours ago. What about you? Feel that way, too?

No, I am just as curious as before.  Maybe more so, knowing it has
become even less likely that I will ever learn the answer.  It's
frustrating.

One possible explanation: UHCI always carries out its periodic
transfers at the beginning of each frame.  OHCI doesn't, or least, it
doesn't have to.  Now there's no good reason why this should make any
difference to the cameras, but perhaps it does anyway.

Another possibility is a race condition in the camera firmware. I've
(unfortunately) seen lots of those in the early Logitech UVC models.
Fortunately Logitech did a pretty good job at fixing those.

With race conditions in the firmware, subtle timing differences beyond the
reach of the USB device driver can crash the firmware or make it behave badly.
Switching from OHCI to UHCI can introduce such timing differences and trigger
a bug in the camera firmware.

--
Regards,

Laurent Pinchart


This is possible, for sure.

(and this, mainly for Alan)

Me, on this end, I have started to look around the university campus to try to find out if anyone has one of those USB analysers that he mentioned in another e-mail. I would think there ought to be one around somewhere because we do have a department called Electrical and Computer Engineering. But if we don't, I am going to try to get one.

Theodore Kilgore
--
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

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux