On Fri, Jul 01, 2011 at 02:16:43PM -0400, Alan Stern wrote: > On Fri, 1 Jul 2011, Sarah Sharp wrote: > > > > For one thing, we need to store along with the TT a record of how much > > > time has been committed in each frame. If a hub has per-port TTs, we > > > need this information for each port. > > > > I'm not sure xHCI can make use of that information, since it's just > > blindly reserving the max bandwidth for each TT with active FS/LS > > periodic endpoints. > > You'll probably tell me to go read the code... but what happens if the > user plugs a second device into a TT that already has some active > periodic endpoints? Since the full bandwidth of the TT is already > reserved, the periodic endpoints of the second device wouldn't be > accessible. The full bandwidth of the full speed bus (12Mbps) is reserved on the HS bus. Then we calculate, for each TT, what the worst case frame would be for it. So when a LS or FS device is plugged in, we have to recalculate the bandwidth that's free for both the HS bus (which is only effected if this is the first periodic endpoint added to this TT), and then the bus bandwidth for that TT. The newly added device would be taken care of by the TT bandwidth calculation in your example. 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