Re: webcams that work on ehci but don't work on xhci

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

 



On Tue, Jun 25, 2013 at 11:06:28AM -0400, Alan Stern wrote:
> On Tue, 25 Jun 2013, Oliver Neukum wrote:
> 
> > On Tuesday 25 June 2013 10:29:06 Alan Stern wrote:
> > > On Tue, 25 Jun 2013, Oliver Neukum wrote:
> > > 
> > > > Hi Sarah,
> > > > 
> > > > I am seeing a few webcams that work only on EHCI. The XHCI is in principle
> > > > functional. Other webcams do work. Do you have any idea what to do in such
> > > > a case? The cameras are high-speed devices. The camera is detected, but yields no pictures.
> > > > I do have traces but they are rather large.
> > > > 
> > > > 	Regards
> > > > 		Oliver
> > > > 
> > > > (trace of device detection - the open won't go over the list)
> > > 
> > > Did you compare an EHCI usbmon trace with the xHCI trace?
> > 
> > Yes, there are no errors on the USB level.
> 
> Don't look for errors; look for differences.  If everything was working 
> properly, the two traces would be the same except for small changes in 
> timing, device addresses, and so on.

xHCI debugging would be useful as well.

I wonder if these webcams need a reset endpoint request sent to them,
even though their endpoints aren't halted.  The xHCI driver doesn't
currently handle that very well.  The device receives the reset endpoint
request, but the xHCI command to reset the endpoints gets rejected by
the hardware because the endpoint contexts are not in the halted state.
Then the toggles are different in the host and device, and the device no
longer sends data.  When the camera app is closed, the alternate
interface setting changes, which means the toggles get reset.

I would look to see if there is a reset endpoint control transfer in the
EHCI and xHCI usbmon traces.

Sarah Sharp
--
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