On Thu, 24 May 2012, Aman Bansal wrote: > Dear Sarah and Alan, > > Thanks for your response. > > >> > 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? > > We have requirements for latency for RTT (Round trip time) in > interrupt endpoints similar to bulk endpoints transfer. Then you can fix your problem simply by increasing the bulk transfer latency, right? Then the two RTT latencies would be the same. :-) > The above > issue of interrupt transfer is increasing data transfer time using > interrupt endpoints. I mentioned this before, but I will say it again: Interrupt transfers are not meant to have minimum latency. The USB spec is very clear about this. If you depend on them for rapid data delivery then your design is broken. > We want latency performance to be less than 0.2 ms. Even bulk > endpoints transfer provides latency of 0.2 ms. This is beyond the ability of USB 2.0. The minimum possible latency that can be guaranteed for interrupt transfers is 0.25 ms (two microframes) under the best circumstances. Round-trip times are longer, of course. You might consider using bulk transfers instead of interrupt. Or switch over to USB 3.0. 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