Re: USB2.0 [EHCI] Issue : EHCI interrupt endpoints transfer is taking above 600 microsec on USB 2.0 host

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

 



On Tue, 22 May 2012, Sarah Sharp wrote:

> On Tue, May 22, 2012 at 09:45:46AM +0530, Aman Bansal wrote:
> > Dear Alan and Sarah,
> > 
> > We have USB 2.0 embedded device as well as embedded USB 2.0 host.
> > We have implemented a gadget driver on the device as well as USB client
> > driver on host which uses interrupt endpoints for IN and OUT transfer.
> > 
> > We are facing a problem with usb_submit_urb time taken for completion  on
> > the interrupt end-point.
> > 
> > In our implementation with EHCI controller and linux-3.0.20:
> > The time interval on USB host between calling usb_submit_urb and its
> > completion callback invocation on interrupt endpoints
> > takes around 636 microseconds as compared to 28 microseconds for bulk
> > endpoint.

Why is that a problem?

> What was the interval set to on the interrupt URB?

Also, what speed does the embedded device run at: low, full, or high?

> > Is there any timing issue with interrupt transfer in ehci host controller
> > or some other aspect related to interrupt transfers?

Not as far as I know.

> > Is there any way I can improve interrupt transfer latency between my host
> > and device ?

Why do you want to decrease the latency?  By definition, interrupt 
transfers have _bounded_ latency, not _small_ latency.

In any case, if you are doing multiple transfers then it helps always 
to keep the pipeline non-empty: Submit multiple interrupt URBs, and 
each time one of them completes, submit a new one (or resubmit the one 
that just completed).  That will minimize latency overall.

> Have you looked at a bus trace of your host controller to see when it
> actually sends the interrupt transfer and compared to the USB mon trace
> of when it was submitted and completed?

They might be difficult to compare, because a bus trace wouldn't have 
any timing information in common with a usbmon trace.

Alan Stern

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