Hi Devin, On Monday 28 September 2009 23:52:41 Devin Heitmueller wrote: > Hi Laurent, > > > > For a single device running with maxpacket of 3072 per microframe, the > > > EHCI driver is indicating 57% utilization of the bus (the sysfs stats > > > already takes into account the fact that only 80% of the bus is > > > available for isoc traffic). > > > > 3072 bytes * 8000 microframes/s * 8 bit/byte / 80% / 480e6 = 51.2% > > Where did you arrive at that "480e6" constant? Is that from the USB > Spec? I saw you refer to it in another email. USB 2.0 Specification, section 1.1: "USB 2.0 addresses this need by adding a third transfer rate of 480 Mb/s to the 12 Mb/s and 1.5 Mb/s originally defined for USB." Section 4.2.1: "The USB high-speed signaling bit rate is 480 Mb/s." > > You also have to take the USB overhead into account, so the actual value > > will be a bit larger than that. 57% seems plausible. > > It was my understanding that the whole reason for the 80% max > utilization was to account for overhead. Section 5.6.4: "The USB requires that no more than 90% of any frame be allocated for periodic (isochronous and interrupt) transfers for full-speed endpoints. High-speed endpoints can allocate at most 80% of a microframe for periodic transfers." 80% is to make sure there's still room for non-periodic transfers (control and bulk). I'm pretty sure it doesn't take the overhead into account. > And is it really plausible that there is a 14% overhead? That sounds like > quite a bit. If it had been off 2-3%, that might have seemed reasonable, > but 14% seems like a bit much. (57% - 51.2%) / 57% = 10.18% overhead. That's indeed significant, but not completely implausible. > I guess I'm just wondering how much of what you are saying is idle > speculation based on your experience with Linux's USB implementation, > and how much is actually based on the spec. There's always some interpretation of the spec involved, but I'm pretty sure the information is accurate :-) Except for the overhead calculation, I haven't double-checked how much bandwidth the overhead consumes. Even without any overhead, we would still be at 51.2%, so two streams wouldn't be allowed. -- Regards, Laurent Pinchart -- 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